Stack0 MCP Server
Stack0 speaks the Model Context Protocol, so Claude, ChatGPT, Cursor, and any other MCP client can call Stack0 as native tools: send email, upload files, capture screenshots, extract data, transcode video, run workflows, and reach 350+ integrations.
Endpoint
| URL | https://api.stack0.dev/mcp |
| Transport | Streamable HTTP |
| Legacy transport | https://api.stack0.dev/mcp/sse |
| Authentication | Authorization: Bearer <api_key> |
| Health check | https://api.stack0.dev/mcp/health |
Create an API key in the dashboard under Settings → API Keys. Tools run against the organization that owns the key. See Authentication.
Connect Claude Code
claude mcp add --transport http stack0 https://api.stack0.dev/mcp \--header "Authorization: Bearer $STACK0_API_KEY"
Connect Claude Desktop or Cursor
Add the server to your MCP client config file.
{"mcpServers": {"stack0": {"type": "http","url": "https://api.stack0.dev/mcp","headers": {"Authorization": "Bearer YOUR_STACK0_API_KEY"}}}}
Clients without HTTP transport
The hosted endpoint is the supported way to connect, and it needs nothing installed. If your client only speaks stdio, put an MCP stdio-to-HTTP bridge in front of it and point the bridge at https://api.stack0.dev/mcp with the same bearer header. Everything else on this page applies unchanged.
Tools
41 tools across seven groups. Every tool publishes a JSON Schema for its input, so a client can build a function-calling definition without any extra mapping.
| Prefix | Group | Tools |
|---|---|---|
| mail_* | mail_send, mail_send_batch, mail_get, mail_list, mail_create_contact, mail_list_contacts | |
| cdn_* | CDN and storage | cdn_upload, cdn_get, cdn_list, cdn_delete, cdn_transform, cdn_create_folder, cdn_list_folders, cdn_delete_folder |
| screenshots_* | Screenshots | screenshots_capture, screenshots_get, screenshots_list, screenshots_delete |
| extraction_* | AI extraction | extraction_extract, extraction_get, extraction_list, extraction_delete |
| video_* | Video | video_transcode, video_get_job, video_list_jobs, video_cancel_job, video_extract_audio, video_get_streaming_url |
| workflows_* | AI workflows | workflows_create, workflows_run, workflows_get_run, workflows_list, workflows_list_runs, workflows_cancel_run |
| integrations_* | Integrations | integrations_list_connectors, integrations_list_connections, integrations_crm_create_contact, integrations_crm_update_contact, integrations_crm_list_contacts, integrations_storage_list_files, integrations_storage_download |
The authoritative list, with every input schema, is in the server card at /.well-known/mcp.json. It is generated from the running server, so it never drifts.
Discovery manifests
MCP server discovery has several proposals in flight. Each path below serves the document in the shape its own specification defines. All four are available on both www.stack0.dev and api.stack0.dev.
| Path | Specification | Contents |
|---|---|---|
| /.well-known/mcp.json | SEP-1649 Server Card | Full card: transport, capabilities, authentication, and every tool with its JSON Schema. |
| /.well-known/mcp/server-card.json | SEP-1649 Server Card | The same document at the path SEP-1649 names. |
| /.well-known/mcp | SEP-1960 manifest | Endpoint enumeration, capability flags, auth methods, and the request rate limit. |
| /.well-known/mcp-server | IETF draft-serra-mcp-discovery-uri | Minimal manifest: mcp_version, name, endpoint, transport, auth, capabilities. |
Verify the connection
# The server card needs no credentialscurl -s https://api.stack0.dev/.well-known/mcp.json | head -40# Livenesscurl -s https://api.stack0.dev/mcp/health# Initialize a sessioncurl -s https://api.stack0.dev/mcp \-H "Authorization: Bearer $STACK0_API_KEY" \-H "Content-Type: application/json" \-H "Accept: application/json, text/event-stream" \-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"1.0"}}}'
Rate limits
MCP requests share the API rate limit and carry the same standard headers, so a client can self-throttle. See Rate limits.