Let an AI agent work in your studio
Frenkel.ai runs an MCP server at https://app.frenkel.ai/mcp (Streamable HTTP). Connected agents see the complete menu, including prices, voices and the cue badges, and can create, edit, animate, speak, dub and manage your library on your behalf. Everything they do is charged to your account, in credits, exactly as if you had clicked it.
Setup
Create a key under Account → Developers & AI agents, then add the server to your client.
Claude Code
claude mcp add --transport http frenkel https://app.frenkel.ai/mcp --header "Authorization: Bearer frk_your_key"
Claude Desktop, Cursor, Windsurf and other clients (mcp.json)
{
"mcpServers": {
"frenkel": {
"type": "http",
"url": "https://app.frenkel.ai/mcp",
"headers": { "Authorization": "Bearer frk_your_key" }
}
}
}
The server is stateless: no session ids, no server-initiated stream (a GET answers 405, as the specification allows). Protocol versions 2025-06-18, 2025-03-26 and 2024-11-05 are accepted.
Tools
| Tool | What it does |
|---|---|
get_options | The whole menu with live availability and credits: tasks, looks, video styles and tiers, ratios, product scenes, voices, cue badges, dubbing languages, logo options, limits. Agents read this first. |
estimate_credits | Exact price of a generate call before running it, with the credits of every quality tier for that choice. |
generate | Start any generation. Every argument is described in the tool schema; returns the job and its credit cost. |
wait_for_job · get_job · list_jobs · job_details · cancel_job | Follow jobs to completion (up to 120 s per wait; call again while running), inspect the timeline, cancel. |
list_assets · get_asset · import_asset | The library and adding files from a URL or base64 so they can be used as inputs. |
list_projects · create_project | Folders for campaigns and clients. |
list_characters · create_character | People kept consistent across images. |
list_voices | Stock and cloned voices, the cue badges, timing tags, dialogue markers and dubbing languages. |
get_account | Who the key belongs to and the credit balance. |
Resources
frenkel://guide: a generated markdown guide of the whole system (tasks, looks, styles, voice syntax with every cue badge, dubbing, logos, credits, workflow).frenkel://options: the menu as JSON (same asget_options).frenkel://account: the account and its credits.
How an agent works with it
- Read
get_options(or the guide) to learn what exists and what it costs. - Quote with
estimate_creditswhen the price matters. generate, thenwait_for_jobuntildoneis true.- Outputs are assets whose URLs need the same
Authorizationheader. Reuse an output's id asinputAssetIdsfor the next step, so "make a logo → put it on a t-shirt → animate it" is threegeneratecalls.
Voice work is fully described to the agent: the 18 cue badges ([laughs], [whispers], [excited]…), timing tags ([at:5], [wait:1.5], [break:0.8]) and dialogue markers ([voice:2]) appear in list_voices, in get_options and in the guide. See Voice scripts & cues.
Safety
A key is a full-access credential for one account: the agent can spend credits, delete assets and cancel jobs. Give agents their own key, name it after the agent, watch last used on the account page, and revoke it when you are done. Content moderation, provider policies and refunds on failure apply to agent jobs like any other.
Frenkel.ai