MCP App Store
by KeenEthics
Contendoor icon

Contendoor

By PRATIKKUMAR KIRTANBHAI DALWADI

Get New App Alerts

Overview

Contendoor helps video creators and teams work with their content from ChatGPT. Search and browse workspace media, read available file text and speech transcripts, preview photos in an in-chat gallery, and download original files. Save supported chat attachments or files from links into your workspace. Create and edit notes, scripts, briefs, ideas, comments and tasks, and track video concepts through production stages. Prepare and save platform-specific caption drafts for finished videos. Connect your Contendoor account through OAuth to work within your existing workspace permissions. Social publishing, scheduling and live social analytics are not available through this connection.

Tools

add_comment

ChatGPT
Leave feedback on a file. For video/audio pass time_sec to anchor it to a moment; pass x and y (0–1 fractions of the frame from the top-left) to pin it to a spot.

add_idea

ChatGPT
Add a video idea to Ideas. as="concept" (default) means the team is going with it: a Raw folder with the same name is created for its raw files. as="idea" just adds it as a suggestion to brainstorm on.

analyze_file

ChatGPT
Run (or re-run) AI labeling on a file now: labels, a one-line summary, a transcript for speech, and for loose Raw files a suggested concept. Returns the result. Videos are labeled from frames the web app extracts; without them, from name, notes and audio.

app_board

ChatGPT
Used by Contendoor's in-chat screen to reload the Editor board.

app_open_folder

ChatGPT
Used by Contendoor's in-chat screen to navigate folders.

app_set_stage

ChatGPT
Used by Contendoor's in-chat screen when the user moves a concept on the board.

create_folder

ChatGPT
Create a folder (and any missing parents), e.g. "Raw/Morning routine vlog". Returns the existing folder if it already exists.

create_note

ChatGPT
Create a note: video ideas, scripts, hooks, shot lists, research, briefs, feedback. Write content as Markdown or HTML (both are stored as rich text the team edits in Contendoor): - Markdown: GFM headings, lists, "- [ ]" to-dos, tables, code, quotes, links, images, ==highlight==. - HTML is kept with its styling, so you can design the note: colors, backgrounds, font sizes, alignment, tables with merged or colored cells, images with a width, and · callout: <div data-type="callout" style="background-color:#fef9c3"><p>💡 …</p></div> · toggle: <details><summary>Shot list</summary><p>…</p></details> · columns: <div data-type="columns"><div data-type="column">…</div><div data-type="column">…</div></div> · embed: <iframe src="https://www.youtube.com/embed/ID"></iframe> (YouTube, Vimeo, Loom, Instagram, TikTok, Figma, Google Docs/Slides/Maps, Spotify, Canva, Miro) · highlight: <mark data-color="yellow|green|blue|pink|purple|orange|red|gray">…</mark> · <style> rules and inline styles both work. Wrap anything that must render exactly as written (an SVG chart, a designed card) in <div data-type="html-block">…</div>. Scripts, forms and event handlers are removed. - Images: any https image URL (it's copied into Contendoor, so links that expire keep working), or a Contendoor image file as src="fil_…".

create_task

ChatGPT
Add an item to the team's to-do list, optionally assigned, due, and linked to a concept.

create_upload

ChatGPT
Start uploading a local file of any size and any type into any folder: video, audio, photos, HTML, Markdown, text, Word, PDF, or anything else. Returns an upload URL and exact curl commands. Files up to 64 MB are a single PUT; larger files are sent in 32 MB parts, then completed. Missing folders are created. Completed uploads into Raw are automatically processed by Cloudflare AI for labels and, where supported, transcripts.

delete_item

ChatGPT
Move a file, folder (with everything inside) or note to Trash (restorable for 30 days). Also deletes to-dos (tsk_…), comments (cmt_…), ideas (ide_…) and Brand profile sources (src_…) permanently.

delete_post

ChatGPT
Permanently deletes a post that hasn't gone out (scheduled, failed or canceled), so it never posts; or with account, removes just that account from it. Can't touch anything already live on a platform or being sent right now.

edit_note

ChatGPT
Change part of a note without rewriting the rest: exact find-and-replace on the text read_note returned, in the same format. Each find must match exactly once (include a few surrounding words) unless replace_all is set. Edits apply in order and all-or-nothing. An empty replace deletes the text.

fetch

ChatGPT
Fetch the full content of a search result by id: a note (as Markdown), a folder's listing, or a file's details, text and download link.

generate_ideas

ChatGPT
Ask Contendoor's AI for fresh video ideas grounded in the Brand profile and its sources (analytics, website, support chats, competitors). They're saved to Ideas as suggestions. You can also brainstorm yourself and save ideas with add_idea(as="idea").

get_download_url

ChatGPT
Get signed HTTPS download links. For a file: one URL plus a curl command. For a folder: every file inside it (recursively) plus a bash script that recreates the folder locally.

get_item

ChatGPT
Get metadata for a single file or folder by id or path.

get_posts

ChatGPT
Lists posts in Contendoor's Publish queue. Without post_id: posts set to go out between from and to (UTC dates; default 30 days ago to 400 days ahead; at most 200), plus any still waiting to go out or failed. Each post shows its files and captions, and for each account: status (scheduled, publishing, published, failed or canceled), error, and the post's link and latest numbers once published. With post_id: that one post, plus the daily numbers Contendoor has synced for it, if any. Reads Contendoor's records only; it doesn't contact the platforms.

get_repurpose

ChatGPT
Prepare drafts only; this does not publish, schedule or fetch social analytics. For a finished video: platform specs (Instagram Reels, TikTok, YouTube Shorts, Facebook Reels, LinkedIn, Snapchat Spotlight), the saved title/caption/hashtags/status per platform, spec warnings, and a correctly named download link per platform. Pass generate=true to have Contendoor's AI (re)write the drafts first.

get_social_accounts

ChatGPT
The social accounts connected to this workspace (Instagram, Facebook, Threads, TikTok, X, LinkedIn, YouTube) with followers and whether each needs reconnecting, plus their numbers over the last days: views, interactions and posts per day, and the posts that did best. Pass account for one account. Reads Contendoor's saved numbers; it doesn't contact the platforms. Contendoor refreshes a post's numbers on its own: hourly in its first two days, then less often, and not after 90 days.

inspo_context

ChatGPT
The context behind idea brainstorming, shown on the Brand profile page: the brand profile and data sources (past video analytics, website visits, customer support chats, competitor research, other). Call with no arguments to read everything; pass profile fields to update them, or add_source to store new data (e.g. a pasted analytics export or a support-chat summary).

list_comments

ChatGPT
Feedback on a file from the team: timestamped notes on videos/audio (m:ss), pins on a spot of the frame, and general comments.

list_concepts

ChatGPT
Every video concept (folders in Raw) with its production stage, raw file count, top labels, open to-dos, open comments and whether a Final export exists. This is the Editor board.

list_folder

ChatGPT
List the subfolders and files inside a folder. Use "/" for the top level (Raw, Final). Returns ids, sizes, uploaders and descriptions.

list_ideas

ChatGPT
Video ideas on the Ideas page. status "idea" = open suggestions (AI daily batch or added by the team), "concept" = the team went with it (it has a Raw folder), "dismissed" = passed on.

list_notes

ChatGPT
List notes (ideas, scripts, briefs), most recently edited first. Optionally filter by text.

list_tasks

ChatGPT
The team's to-do list: open items in order, plus recently completed ones. Optionally only a concept's to-dos.

list_unsorted

ChatGPT
Files loose in the Raw root (not yet in a concept folder), with their AI labels and suggested concept, so you can move_item them where they belong.

move_item

ChatGPT
Move a file or folder into another folder. Use "/" as destination to move a folder to the top level.

publish_post

ChatGPT
Creates a post on the user's connected social accounts and publishes it now or at a set time, or changes, reschedules or retries a post that hasn't fully gone out. Posting is public: unless the user already said exactly what to post, where and when, confirm the media, the accounts, the captions and the time with them first. - New post: pass accounts and when, plus files (any photos or videos in the workspace, by id or path) or nothing for a text post (Facebook, Threads, X and LinkedIn take text posts). Contendoor picks each account's post type from the media unless you set format. - Captions: caption is shared by every account; an account's own caption overrides it. Set ai_captions and Contendoor's AI writes the caption (and the title for YouTube and Facebook videos) for every account that has none of its own, using the media, its transcript, the concept and the Brand profile, with the shared caption as the brief. - when: "now"; a date like 2026-11-03, and Contendoor picks a random time between 9 AM and 9 PM that day; a local date and time like 2026-11-03T18:30; or an ISO time with an offset. Local dates and times need time_zone, the user's time zone. - Existing post (post_id): pass only when to reschedule it or send it now; pass files, accounts or caption to change what it posts (only before any of it is live); set retry_failed to send its failed platforms again. The result says when it will go out in the user's local time, and the caption each account got.

read_file

ChatGPT
Read a file's contents directly. Text, HTML, and Markdown (≤ 512 KB) come back as text. PDF and Word come back as text when Contendoor can extract it. Images (≤ 4 MB) come back as images. Audio and video with speech come back as a transcript. Anything else returns metadata and a download link. Every type is stored; this only changes how much of it can be shown inline.

read_note

ChatGPT
Read a note. As Markdown (the default), parts with styling or layout (colors, merged table cells, callouts, columns, embeds) appear as inline HTML: keep them as they are when you edit. Ask for html to get the exact stored HTML.

recent_activity

ChatGPT
What the team (people and agents) did recently: uploads, new folders, note edits, moves, deletions.

rename_item

ChatGPT
Rename a file or folder in place.

save_attachments

ChatGPT
ChatGPT: save files the user attached or uploaded in this conversation into a Contendoor folder. Any file type is accepted (HTML, Markdown, text, Word, PDF, video, images, and the rest). ChatGPT fills in files with temporary download links and Contendoor downloads each one itself (up to 4 GB each), so no sandbox or terminal is needed. Other clients: use create_upload for local files or save_from_link for URLs.

set_description

ChatGPT
Set the shared description on a file or folder (a concept brief, editing notes, which take to use…) and/or replace a file's labels (short tags like "barista pour", "b-roll").

set_stage

ChatGPT
Move a concept along the production board: planned, shooting, ready (to edit), editing, review, done.

show_board

ChatGPT
Show the Editor board (every video concept by production stage) as an interactive screen in the chat, where the user can move concepts between stages and open them. Clients without screens get the board as text.

show_folder

ChatGPT
Show a Contendoor folder as an interactive screen in the chat (Claude, ChatGPT): thumbnails, subfolders, open and download buttons, and uploads that never arrived. Use it when the user wants to see or browse their files. Clients without screens get the listing as text.

show_images

ChatGPT
Display actual photos from a Contendoor folder as an inline image gallery, not a screenshot or folder listing. Preserves each image's portrait, landscape, or square aspect ratio. Supply image file ids to choose particular images; otherwise show up to 24 images in the folder. Use for requests like 'show two images from Raw here in the chat'. The gallery includes a user-initiated experimental Send to ChatGPT file upload, which requires host support; native attachments are not guaranteed.

update_comment

ChatGPT
Mark a comment resolved (or reopen it), or edit the text of a comment you wrote.

update_idea

ChatGPT
Edit an idea (title, hook, pitch, format) and/or set its status: "concept" = go with it (creates its Raw folder), "dismissed" = pass, "idea" = back to suggestions.

update_note

ChatGPT
Change a note's title, icon, pin or content. Content replaces the note, or with mode=append / mode=prepend is added at the end / start (safe while the team is editing). To change part of a note, use edit_note. Write content as Markdown or HTML (both are stored as rich text the team edits in Contendoor): - Markdown: GFM headings, lists, "- [ ]" to-dos, tables, code, quotes, links, images, ==highlight==. - HTML is kept with its styling, so you can design the note: colors, backgrounds, font sizes, alignment, tables with merged or colored cells, images with a width, and · callout: <div data-type="callout" style="background-color:#fef9c3"><p>💡 …</p></div> · toggle: <details><summary>Shot list</summary><p>…</p></details> · columns: <div data-type="columns"><div data-type="column">…</div><div data-type="column">…</div></div> · embed: <iframe src="https://www.youtube.com/embed/ID"></iframe> (YouTube, Vimeo, Loom, Instagram, TikTok, Figma, Google Docs/Slides/Maps, Spotify, Canva, Miro) · highlight: <mark data-color="yellow|green|blue|pink|purple|orange|red|gray">…</mark> · <style> rules and inline styles both work. Wrap anything that must render exactly as written (an SVG chart, a designed card) in <div data-type="html-block">…</div>. Scripts, forms and event handlers are removed. - Images: any https image URL (it's copied into Contendoor, so links that expire keep working), or a Contendoor image file as src="fil_…".

update_repurpose

ChatGPT
Save draft title/caption/hashtags for one platform, or manually record its status (draft, ready, posted, skipped) and a supplied post URL. This updates Contendoor metadata only; it does not publish, schedule, or fetch social analytics.

update_task

ChatGPT
Check off / reopen a to-do (done=true/false), or change its title, notes, assignee, due date or concept.

upload_file

ChatGPT
Save a small file (≤ 10 MB) of any type straight from this conversation: HTML, Markdown, text, Word, PDF, scripts, captions, thumbnails, or anything else. Pass text for text files or base64 for binary. For bigger files use create_upload; for anything that has a URL use save_from_link. Raw uploads are automatically processed by Cloudflare AI for labels and supported transcripts.

upload_status

ChatGPT
Check whether Contendoor has received a file started with create_upload. Call it after your PUT (or last part + complete) and before telling the user the file is saved.

whoami

ChatGPT
Which Contendoor user and agent connection these tools act as.

Capabilities

WritesInteractive

Example Prompts

Click any prompt to copy it.

Similar Apps