Tools
MCP setup
The Chasca MCP server lets Claude, Cursor or any Model Context Protocol client make and edit explainer videos for you, in the middle of whatever you are already doing.
https://app.trychasca.com/api What it is
A small stdio MCP server that lives in the repository at packages/mcp/src/index.ts and runs on Bun. It
talks to the Chasca API with your key, so everything an agent does shows up in your account (marked as created via
MCP) and counts like an API call: Plus and above, minutes at 2x.
CHASCA_API_KEY: required. Create one in the app under Settings → API keys.CHASCA_API_URL: the API address,https://app.trychasca.com/api.
Claude Code
Register the server once, pointing at your checkout:
claude mcp add chasca \
-e CHASCA_API_URL=https://app.trychasca.com/api \
-e CHASCA_API_KEY=chk_live_... \
-- bun /path/to/chasca-ai/packages/mcp/src/index.ts
Use the absolute path to packages/mcp/src/index.ts, quoted if it contains spaces. Add
--scope user to make it available in every project, and check it with claude mcp list or
/mcp inside Claude Code.
Claude Desktop
Add Chasca to claude_desktop_config.json (on macOS in
~/Library/Application Support/Claude/, on Windows in %APPDATA%\Claude\), then restart
Claude Desktop:
{
"mcpServers": {
"chasca": {
"command": "bun",
"args": ["/path/to/chasca-ai/packages/mcp/src/index.ts"],
"env": {
"CHASCA_API_URL": "https://app.trychasca.com/api",
"CHASCA_API_KEY": "chk_live_..."
}
}
}
}
If Claude Desktop can’t find bun, use its full path as command (for example
~/.bun/bin/bun).
Cursor and other clients
Any client that speaks MCP over stdio works the same way: run bun /path/to/chasca-ai/packages/mcp/src/index.ts
with the two environment variables. In Cursor, add the same mcpServers entry to
.cursor/mcp.json in your project (or ~/.cursor/mcp.json for all projects).
Tools
| Tool | Inputs | What it does |
|---|---|---|
chasca_generate_explainer | input, length, aspect, voice, language, preset, wait | Creates a video from a topic, a question or a whole document. Returns the queued record, or waits until it is ready when wait is true. |
chasca_get_explainer | id | Status, stage and progress; the video URL once ready; the editable scene graph and every version. |
chasca_edit_explainer | id, instruction, wait | Applies a plain-language change as a new version. Only the scenes that change are re-rendered; the previous version stays available. |
chasca_list_explainers | limit | Your latest videos, newest first, with a one-line status summary. |
chasca_list_voices | language | Every narrator, with its tone and a preview. |
Generation runs in the background. Agents either poll chasca_get_explainer or pass
wait: true to block until the video is ready. Errors come back with a plain hint for the agent, such as
how to fix a missing key or when to retry.
Things to ask for
- “Make a 1-minute vertical explainer about how our refund policy works, from the attached policy text.”
- “Turn this README into a 2:00 explainer in the Blueprint style, narrated by Atlas.”
- “Scene 3 of my last Chasca video is too fast. Make it simpler and use a pizza analogy.”
- “Which Spanish voices can narrate for Mexico? Use one to remake yesterday’s video in Spanish.”