Skip to content
acteme

MCP server

Acteme runs a Model Context Protocol server, so AI agents such as Claude Code, Claude Desktop, Cursor and Codex can work in your projects directly. An agent can import a script, cast characters, fix tags flagged by the linter, estimate and render lines, and pick takes, under the same rules and with the same credits as the studio.

Connect

The server speaks Streamable HTTP at:

https://acteme.app/mcp

It authenticates with an API key sent as a bearer token. The Developer page in the studio has ready-made snippets for each client, with your key filled in.

claude mcp add --transport http acteme https://acteme.app/mcp \
  --header "Authorization: Bearer ak_live_…"

Run it in your project folder, or add --scope user to use it in every project.

Windsurf, Gemini CLI and any other client that supports Streamable HTTP work the same way: point it at the URL and send the key in the Authorization header.

Scopes decide the tools

An agent only sees the tools its key's scopes allow, so it never tries something that would be rejected.

  • read alone: browse projects, lines, jobs and takes, and get the manifest.
  • read + write: also edit scripts, casting and the lexicon, and select takes. It can't spend credits.
  • Add generate to let it render, translate and estimate costs.

For an agent you're still getting to know, start without generate.

Tools

Account & voicesWhat it doesScopes
get_accountCurrent user, plan limits and credit balances.read
list_voicesStudio voices and Acteme Specials.read
search_voice_librarySearch the voice library by language, gender, pitch or free text.read
Projects & castWhat it doesScopes
list_projectsProjects with line, rendered and character counts.read
get_projectSettings, characters, scenes, status counts and recent jobs.read
create_projectCreate a project (defaults: en-US, Pro, WAV 48 kHz).write
update_projectChange locales, model, file template or audio settings.read + write
create_characterAdd a character and cast a voice.write
update_characterRecast or restyle a character; affected lines go stale.write
delete_characterDelete a character; its lines become unassigned.write
create_sceneAdd a scene to group lines.write
ScriptWhat it doesScopes
list_linesLines in script order with status, takes and lint findings; pages with nextOffset.read
add_lineCreate one line.write
update_lineEdit text, style or character, or approve a line.write
bulk_edit_linesDelete, assign character or scene, set style or approve many lines.write
move_lineMove a line before or after another line.write
import_scriptImport CSV, JSON or Yarn content, with an optional dry run.write
set_translationWrite a human translation for one line.write
translate_linesMachine-translate lines into target locales (spends credits).generate
get_lexiconPronunciation substitutions.read
set_lexicon_entryAdd or update a respelling; affected lines go stale.write
delete_lexicon_entryRemove a respelling.write
RenderingWhat it doesScopes
estimate_renderItem count and credit cost, without queueing.generate
render_linesQueue a batch render and reserve credits.generate
list_jobsRecent render jobs, newest first.read
get_jobJob status, item counts and failures.read
wait_for_jobLong-poll a job until it finishes or the wait budget runs out.read
cancel_jobCancel queued items and refund their credits.generate
Takes & deliveryWhat it doesScopes
list_takesAll takes of a line; marks the selected one.read
select_takeMake a take the one that ships.write
get_take_audio_urlShort-lived signed URL for a take's audio.read
get_manifestSelected takes with file paths, sha256 and signed URLs.read
One-off speechWhat it doesScopes
generate_speechRender one line outside a project.generate + read
generate_dialogueRender a two-speaker exchange as one file.generate + read
get_speech_resultKeep waiting for a pending one-off render.read

Tools follow the same rules, credits and limits as the studio, with results kept compact for agents. Errors come back as tool errors with a stable error code, so the agent can react to insufficient_credits or a validation failure.

wait_for_job and the one-off speech tools wait up to 25 seconds per call, since most clients time tools out after about a minute. If the work isn't done yet, they say so and the agent calls again.

Credits

render_lines, translate_lines, generate_speech and generate_dialogue spend credits. Agents are asked to call estimate_render and report the cost before large renders, and most clients also ask you to approve each tool call.

Things to ask

  • "Import dialogue.csv into Ashfall, cast Varga with a low, gravelly voice and render her lines."
  • "Find lines with stage directions in brackets and rewrite them with vocal tags and styles."
  • "Render everything stale in German, then tell me which lines failed."
  • "Add a lexicon entry so 'Xyl' is read as 'Zile', and re-render the affected lines."