Guide
AI agents (MCP)
Connect Claude, Cursor, ChatGPT, or any MCP client to Pitch. The agent gets tools for starting projects, talking to them, and checking on them itself.
The server speaks the Model Context Protocol over Streamable HTTP. It is listed on the official MCP registry as co.trypitch/pitch.
| Endpoint | POST https://api.trypitch.co/mcp |
| Transport | Streamable HTTP, stateless |
| Auth | Authorization: Bearer pk_... |
| Registry name | co.trypitch/pitch |
GET and DELETE on /mcp return 405 Method Not Allowed on purpose.#Claude
From the command line:
claude mcp add --transport http pitch \
https://api.trypitch.co/mcp \
--header "Authorization: Bearer pk_your_key"In claude.ai, go to Settings, then Connectors, then Add custom connector, and paste the endpoint with the same header.
#Cursor
Open Settings, then MCP, then New server. Or edit .cursor/mcp.json directly.
{
"mcpServers": {
"pitch": {
"url": "https://api.trypitch.co/mcp",
"headers": { "Authorization": "Bearer pk_your_key" }
}
}
}#ChatGPT
Settings, then Connectors, then Advanced, then Developer mode, then Add. Paste the endpoint and add a custom header.
URL https://api.trypitch.co/mcp
Header Authorization: Bearer pk_your_keyThe same connector works from the Responses and Agents APIs.
#Perplexity
Settings, then Connectors, then Add connector, then Custom (MCP). Paste the endpoint and set the auth header. The same setup works in Comet and the Perplexity API.
#Any other client
If a client speaks Streamable HTTP and lets you set a header, it works. There is nothing Pitch-specific to install.
curl -X POST https://api.trypitch.co/mcp \
-H "Authorization: Bearer pk_your_key" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}'Accept header to include both application/json and text/event-stream. The MCP SDK sets this for you.#What the agent can do
Eight tools create, edit, inspect, and export projects. Work-producing tools are usage-metered; reads are free. Full argument lists are in MCP tools.
| Tool | Credits |
|---|---|
create_project | usage-metered |
prompt_project | usage-metered |
get_project | free |
list_projects | free |
get_credits | free |
get_pricing | free |
export_project | usage-metered |
export_status | free |
#Telling the agent how to behave
Agents tend to call create_project and then stop, because the project is not finished yet. Put something like this in your system prompt or project instructions.
When you use Pitch:
- Call get_credits before create_project so you know the project can pay for itself.
- create_project returns a project with status "working". The video is not ready at that point.
- Poll get_project every 10 seconds until status is "ready" or "failed".
- On "ready", give the user the url of the newest entry in outputs (kind "video" or "pdf").
- On "failed", read the error field and say what went wrong.
- To change something, call prompt_project on the same project. Never create a second project for an edit.
- Never call create_project twice for the same request.prompt_project and are metered by actual usage.