Point your own AI agent at a real motion graphics editor
voicedraw is an MCP server. Your agent connects to it the same way it connects to anything else, then reads your composition and writes real keyframes into it. You bring the agent; there are no API keys to paste and nothing to meter.
Set it up — about two minutesHow it works
- Open a project. The pairing token belongs to one project, so there has to be a project for your agent to drive.
- Turn the connection on in the editor’s AI panel. This is the step people skip, and skipping it is why a perfectly correct config appears to do nothing: the editor has to be listening before your agent introduces itself.
- Paste the config below into your agent, with the real token the editor shows you, and restart it.
- Ask it for something. “Make the title slide in over 12 frames.” Watch it work in the editor’s panel as it goes.
The config, per agent
Every client below speaks the same protocol and spells the config differently — the key is url for some, serverUrl or httpUrl for others, and Codex uses TOML rather than JSON. Pick yours and copy what it needs.
~/.cursor/mcp.json{
"mcpServers": {
"voicedraw": {
"url": "https://voicedraw.com/api/mcp",
"headers": {
"Authorization": "Bearer vdm_REPLACE_WITH_YOUR_TOKEN"
}
}
}
}vdm_REPLACE_WITH_YOUR_TOKEN is a stand-in. Your real token is specific to one project and is only ever shown inside the editor.
- This file lives in your repository. Add it to .gitignore, or use the global path instead, so the token is not committed.
Cursor MCP docs · checked 2026-08-23
Your real token is not on this page. A pairing token belongs to one project and is only ever shown inside the editor. Open a project and the connect panel hands you this same block with the token already filled in.
What your agent gets
Four tools, not two hundred. open reads the project and hands over the authoring guide. lookup reads the exact signature of any editor operation. program runs MotionScript — the only way to change anything — pausing at each milestone to report what actually happened, with rendered frames of the real composition. status reports the live state of the session.
The narrow surface is deliberate. Every write funnels through one place, which is what makes the guarantees possible: a run is graded against the real document before it can claim success, and the whole turn collapses into a single undo step.
What the token is, and is not
It routes an agent to one project of yours. It is not a password and cannot be exchanged for one; it cannot read your account or your billing; and it only reaches a browser tab you have open with the connection armed. It is stable on purpose, so you write your agent’s config once rather than after every reload. If it leaks, rotate it from the editor and every config using the old one stops working immediately.
You never have to use it
The editor is complete without an agent, and stays that way. Everything an agent makes is ordinary keyframes on ordinary layers — open the graph editor and reshape them, or build the whole thing by hand and never connect anything. The agent is a way in, not a replacement for the work.