Using Reelwire from an AI assistant
Reelwire ships a Model Context Protocol (MCP) server: the same API, as tools an assistant can call, with this documentation bundled in beside them. It is a thin layer on purpose. Nothing underneath is different, and nothing is more permissive.
Everything you can do over the API you can do here. The server exposes one tool for every route a workspace key may call, so an assistant can set a workspace up from nothing, run it day to day, and answer questions about what went out, without anybody opening the dashboard.
That includes the agents that live in a terminal or an editor. Claude Code, Codex, Cursor and VS Code all speak MCP and all connect with the same key, which is worth knowing if the job is less "tell me what went out" and more "write the script that pushes our data in, then watch it arrive". Install it has the configuration for each.
| Page | What it is for |
|---|---|
| Install it | Connecting Claude, ChatGPT, Claude Code, Codex, Cursor, VS Code or any other MCP client, step by step |
| Every tool | All of them, grouped by permission, with the API route each one calls |
| Working with it | Worked examples and prompts: setting up, publishing, investigating |
The security model is the key
The server holds one ordinary API key and nothing else. No session, no admin credential, no way to mint one. Whatever the key may do, the assistant may do; whatever it may not, neither may the assistant.
That makes the interesting decision a one-line one: give the assistant a key with the permissions you would give a colleague doing that job.
| What you want | The key to give it |
|---|---|
| Answer questions about what is going out, and why something failed | Read only |
| Draft and schedule posts for a person to approve | Manual post lists, Media, Templates and Brands read |
| Run a producer: push events in | Custom feeds - Send raw data |
| Set a whole workspace up and run it | Run the whole workspace |
A refusal comes back to the assistant as a fact it can report, naming the permission that is missing and where to widen it, rather than as an error it will retry the same way.
What is worth telling your assistant
Start with the guided run. reelwire_getting_started is the shortest way from an empty
workspace to a published clip. It reads what your workspace already holds and answers with one thing: either a question
to put to you, or the next step to take. So the conversation goes question, answer, question,
rather than the assistant deciding on your behalf and presenting you with a workspace. If yours
launches into making things unasked, say "use the getting started tool and ask me one question at a
time".
Ask it to open what it renders. A clip cannot come back as a tool result, so a download is written to a file and the tool answers with the path. Tell it to open the file rather than describe it: unzip it and open the page inside in your own browser, the one your machine opens links with, not the assistant's built-in browser or preview pane. That is not fussiness. The page plays the video sitting beside it on disk with nothing loaded from the network, so a sandboxed viewer draws an empty player, and an empty player looks exactly like a render that went wrong.
Validate before sending. reelwire_validate_event, reelwire_validate_feed_event and
reelwire_validate_broadcast cost nothing and refuse for the same reasons the real send would. An
assistant that validates first gets the field name it got wrong instead of publishing something
malformed to every channel you have.
Times are UTC, everywhere. "Thursday at nine" has to become an ISO 8601 UTC instant before it
reaches reelwire_schedule_post, and the workspace's own screens will show it in UTC too.
What it deliberately cannot do
No tool creates or revokes API keys, rotates the webhook signing secret, changes the plan, buys allowance, touches invoices or the billing address, renames the workspace, signs anybody in, or reaches another workspace.
That is not restraint in the tool layer, which an assistant could be talked out of by something it reads. The API refuses those paths to every key, whatever it holds, so the limit holds even if somebody writes their own client. Money, credentials and the account itself are for a person who signed in.
Two things the API allows and the tools deliberately do not:
- Uploading a file. A tool result cannot carry bytes. Put the file in the media library from the
dashboard, then point a brand at it with
reelwire_set_brand_asset. - Nothing else. Everything a key may do has a tool. If you find a route with no tool for it, that is a gap worth telling us about.