Promoat.Partner API

AI agents

MCP server

Point an MCP client at this site and send your partner API key. The client calls tools for characters, voices, estimates, and videos — quoting, idempotency, and polling follow the same rules as the REST API.

What it is

This site serves an MCP server at /mcp. Connect a client with your partner API key and it calls these tools instead of raw HTTP. A tool result is the API's JSON. When a call fails, that JSON includes error_code and message.

The key is the same pmat_…bearer token as the rest of the API. Send it on every request, and don't paste it into a chat. See Authentication for how keys are issued and replaced.

Connect a client

1

Copy your key

Reveal it in the partner dashboard. The whole pmat_… string is the credential.

2

Add the server

Give the client this URL and header. Put the key in the client config or in an environment variable.

Remote MCP server
{
  "mcpServers": {
    "promoat": {
      "url": "https://platform.promoat.ai/mcp",
      "headers": {
        "Authorization": "Bearer pmat_…"
      }
    }
  }
}
3

Check the connection

Call get_balance. That is GET /usage/summary — free, and a 401 means the key is missing or wrong.

Tools

ToolWhat it does
get_balanceCredit balance and usage in a date range
list_charactersList your characters
get_characterGet a character
create_characterCreate a character from selfies, or invent one from a description
regenerate_characterRe-render a character's sheet with an optional tweak
delete_characterDelete a character
list_voice_presetsList the studio voices
list_voicesList your voices
clone_voiceClone a voice from samples, or pick a studio voice
reclone_voiceClone a voice again from new samples (a new voice_id)
delete_voiceDelete a voice
synthesize_speechSynthesize speech with one of your own voices
create_first_frameGenerate a 9:16 still of a character
plan_scenesPreview the scenes a script will become (free)
estimate_videoPrice a video request without queueing it
create_videoQueue a talking-head or scene video
get_jobPoll a job's status
get_scenesThe scenes of a finished video
fix_sceneFix one scene (makes a new video)
edit_scriptGive scenes new lines in the video's voice (makes a new video)
fix_soundPut a new voice take on a video (makes a new video)
list_assetsList everything you've generated
get_assetGet one asset
list_jobsPaginated job history

create_video, fix_scene, edit_script, and fix_sound take idempotency_key. The server sends it as the Idempotency-Key header. Field names match /openapi.yaml.

Make a video

1

Confirm the key

get_balance. Note credits_balance.

2

Character and voice

Reuse an existing id, or create one with create_character and clone_voice. See Characters and Voices.

3

Quote, then queue

Call estimate_video with the exact request you will send. Then call create_video with that same request, expected_credits set to credits_required, and a fresh idempotency_key. The tool returns a workflow_id at once — it does not wait for the video. Prices are on Credits & pricing.

4

Poll and deliver

Call get_job until completed or failed, then hand over video_url. Polling, phases, and failure codes are on Jobs & polling.

The key spends real credits

A client holding your key can charge your balance. Keep it in the client config or an environment variable, and ask Promoat support to replace it if it leaks. Quote with estimate_video before create_video or an edit.