Masko MCP server
The Masko MCP server gives your AI app tools to create a mascot, animate it, build an interactive canvas and bring the files into your project. You ask in plain words, and the app calls the tools. One server works for every app:
https://masko.ai/api/mcpConnect your app
Your app connects in one of two ways:
- Sign in, in Claude Code, Cursor, Claude, ChatGPT and opencode. Your app opens masko.ai. You sign in, choose your personal or team workspace and approve. You never paste a key. A team connection needs an owner or admin.
- API key, in Codex, VS Code, Claude Code run by scripts, and other apps. Open Developers → API keys, choose Create API key and keep Read + Write. Copy the key: it is shown once. It belongs to the workspace you are in when you create it. Then set it in your terminal:
export MASKO_API_KEY=masko_YOUR_KEYAdd that line to your shell profile, such as ~/.zshrc, so every new terminal has it. Never commit the key or put it in browser code.
Pick your app for its setup. The MCP tab of the Developers page shows the same steps with copy buttons.
Sign in, no key. Run this in your terminal:
claude mcp add --transport http --scope user masko https://masko.ai/api/mcpStart Claude Code, run /mcp, choose masko and Authenticate. Your browser opens masko.ai: sign in, choose your workspace and approve. --scope user adds Masko to all your projects. Leave it out to add Masko to this project only. From the terminal, claude mcp list checks it.
Or use your API key, for scripts and machines without a browser. Run this in the terminal where MASKO_API_KEY is set:
claude mcp add --transport http --scope user masko https://masko.ai/api/mcp \
--header "Authorization: Bearer $MASKO_API_KEY"The command saves the key in your Claude Code settings on this computer. To share the setup with your team in a repository, put this in .mcp.json instead. Each person keeps their own MASKO_API_KEY:
{
"mcpServers": {
"masko": {
"type": "http",
"url": "https://masko.ai/api/mcp",
"headers": { "Authorization": "Bearer ${MASKO_API_KEY}" }
}
}
}Check the connection
Ask your agent:
Show my Masko projects, mascots and credit balance. Don't generate anything.Reading is free. If something is off:
| What you see | What to do |
|---|---|
| The app shows no Masko tools | Run /mcp (Claude Code, Codex) or open the app's MCP settings, check that masko is connected, then restart the app. |
Codex says Masko isn't available, but /mcp lists it | Ask it to "use the masko MCP tools". Codex can keep a server's tools out of sight until it searches for them. |
| A browser sign-in opens in Claude Code | Approve it on masko.ai: Claude Code connects without a key. To use a key instead, add Masko with the --header command above. |
| A browser sign-in opens and fails in Codex | The key is missing, revoked, or not a Read or Read + Write API key. Check echo $MASKO_API_KEY in the terminal that starts the app, then add Masko again. |
| "This connection is read-only" | Use a Read + Write key, or reconnect and approve write access. |
| Other projects or credits than you expected | The key or connection belongs to another workspace. Create the key in the right workspace, or reconnect and choose it. |
Then ask in plain words
Create a friendly mascot for this app with Masko and make it wave hello.
Tell me the cost first.When someone finishes a lesson, make the mascot celebrate,
then go back to its idle loop.Add these animations to this React app, with no flicker between clips.The agent shows you the cost before anything paid, follows each job until the files are ready, installs the Masko player and connects your app's events to it. More prompts are in Build with your AI agent.
What the tools do
| Area | Tools |
|---|---|
| Account and credits | get_account, get_credits, create_credit_checkout, get_credit_checkout (the two checkout tools are not offered in ChatGPT) |
| Projects and mascots | list_projects, create_project, list_mascots, get_mascot, create_mascot, update_mascot (name, context and room for movement), import_mascot_image, upload_mascot_image |
| Images, backgrounds and animations | generate_mascot_image, suggest_backgrounds, make_background, animate_mascot |
| Voices and talking | get_mascot_voice, suggest_mascot_voices, sample_mascot_voices, keep_mascot_voice, make_talking_animation |
| Jobs and files | get_job, list_jobs, get_asset, list_assets, export_asset, publish_mascot_assets, get_mascot_cdn |
| Interactive canvases | list_canvases, create_canvas, get_canvas, save_canvas, validate_canvas, estimate_canvas_generation, generate_canvas, get_canvas_status, repair_canvas_media, list_canvas_history, release_canvas, get_release_delivery |
| Guides | get_integration_guide |
| Feedback | send_feedback |
get_release_delivery returns a release's playback files for the web, iPhone and iPad, Android or Masko for Mac; with formats: av1, apps get the lighter AV1 files the Masko player plays. For talking animations, make_talking_animation first runs free with dry_run to show the script and cost.
Good to know
- Credits. Generation spends the connected workspace's Masko credits, not your AI app's subscription. Reading, estimates and job checks are free. See credits and costs.
- Your own image. The server runs on masko.ai and cannot read files on your computer. Give it an HTTPS image URL, upload the image on masko.ai first, or let your agent upload it from the terminal with
masko studio POST upload --file image.png(terminal quickstart) orPOST /v1/upload. - Hosting. New mascots made through the MCP server start with public hosting off, and their file links expire. Ask the agent to publish the assets before you use their links in a public app.
- A stopped run. Ask the agent to check its existing jobs before it generates again, so you never pay twice.
- Limits. 120 requests per minute per connection.
- Feedback. Your agent can tell the Masko team what is confusing, broken or missing, or what works well, with
send_feedback. It works on read-only connections too. See Send feedback to Masko.
Pages you will use
| Page | What you do there |
|---|---|
| Developers → MCP | Copy the setup for your app, and disconnect the apps you signed in with |
| Developers → API keys | Create or revoke the key for Claude Code, Codex, VS Code and other apps |
| Billing | Buy credits |
Disconnecting an app or revoking a key stops its future requests. It does not delete your mascots or cancel a generation that already started.
Without MCP
Any coding agent that runs commands can use the REST API with MASKO_API_KEY and the docs at masko.ai/llms.txt: see Build with your AI agent. To work from the terminal yourself, see the terminal quickstart.
