Model Context Protocol (MCP)
MCP lets an AI assistant like Claude operate your Doublespeed account for you: you describe what you want in plain English, and it calls Doublespeed directly to research trends, create content, manage accounts, and queue posts.
Your assistant gets the same access you have in the dashboard. It reads your products, templates, and media library, then creates content that matches your brand.
Server URL:
https://doublespeed.ai/api/mcpConnect Your Client
Claude Code
In your terminal, add the server:
claude mcp add --transport http doublespeed https://doublespeed.ai/api/mcpThen start Claude Code by running claude, and inside the session type:
/mcpSelect doublespeed and follow the browser prompt to sign in. /mcp is a command you run inside the Claude Code session, not in your shell.
Cursor
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"doublespeed": {
"url": "https://doublespeed.ai/api/mcp"
}
}
}VS Code
Add to .vscode/mcp.json in your workspace:
{
"servers": {
"doublespeed": {
"type": "http",
"url": "https://doublespeed.ai/api/mcp"
}
}
}Other Clients
Any MCP-compatible client can connect over streamable HTTP:
- URL:
https://doublespeed.ai/api/mcp - Auth: OAuth 2.0 with PKCE. Your browser opens to authorize, so there is no key to paste.
First Steps: Select a Product
Your MCP session is scoped to one product at a time, and most tools refuse to run until a product is selected. Do this first (or just ask your assistant to):
whoamishows who you are and which product, if any, is currently active.list_productslists the products you can access.set_productselects the active product. Every tool call after this is scoped to it.
Your selection persists across sessions, so you usually only do this once. Generation charges credits to the active product, so confirm you are on the right one before creating content. Rendering previews, rendering slides or videos, and queueing do not consume credits.
Tool Reference
Getting started
| Tool | What It Does |
|---|---|
whoami | Your identity, permissions, and the currently active product |
list_products | List products you can access and show which is active |
set_product | Set the active product for this session (required before product-scoped tools) |
Products
| Tool | What It Does |
|---|---|
get_product | Get the active product's title, overview, brand guide, and target audience |
update_product | Update fields on the active product |
Accounts
| Tool | What It Does |
|---|---|
list_accounts | List social media accounts for the active product |
get_account | Get one account's username, bio, status, platform, and profile info |
update_account | Update account fields like bio (160 character limit) |
Posts
| Tool | What It Does |
|---|---|
list_posts | List posts for the active product with filtering and search |
list_account_posts | List posts for a specific account |
create_post | Create a slideshow or video post from media URLs, assigned to an account |
queue_post | Queue a draft variant as a post using the variant's own caption, account, and media |
update_post | Update a draft, scheduled, or pending post's caption, status, or account |
Research
| Tool | What It Does |
|---|---|
get_research_trending_run | Get status and report data for an already-started research run |
Starting new trending-video research runs is temporarily unavailable while the research device workflow is repaired.
Generation
| Tool | What It Does |
|---|---|
list_models | List available image and video models with parameters and pricing |
generate_image | Generate an image with AI (text-to-image or image-to-image, uses credits) |
generate_video | Submit an async AI video generation job (uses credits) |
check_generation_status | Check video generation jobs and get the URL when complete |
Rendering and Drafts
| Tool | What It Does |
|---|---|
render_slides | Render fast slide previews from scene data for visual iteration |
render_video | Render a full video composition to a final mp4 or webm |
render_video_preview | Render a baked preview video from editor-style state |
upsert_slideshow_draft | Save a slideshow as an editable draft, optionally with a review link |
upsert_video_draft | Save an editable video draft, optionally with a review link |
get_draft | Read a draft's variants, text, and structure |
patch_draft | Edit a draft variant's text, caption, music, account, or status |
preview_slides, preview_video, and compose_video are aliases of render_slides, render_video_preview, and render_video.
Templates
| Tool | What It Does |
|---|---|
list_templates | List slideshow and video scene templates for the active product |
get_template | Fetch one template's scene data and variables |
Review Links
| Tool | What It Does |
|---|---|
create_review_link | Create a shareable review link for a draft |
Media Library
| Tool | What It Does |
|---|---|
browse_media | Browse media library folders and files (images, videos, audio) |
create_image_collection | Create a new image collection folder |
prepare_media_upload | Get an upload URL for a local media file |
commit_media_upload | Finalize an upload and get its durable media URL |
What Can I Actually Do With This?
Once connected, you work in plain English. Some real examples:
- Queue a post across accounts: "Take the top variant from this review link and queue it to all three skincare accounts."
- Render a slideshow draft: "Make a 5-slide carousel about morning routines using the livfresh emotional template, show me a preview, then save it as a draft with a review link."
- Batch edits: "The hook text on slide 1 is overflowing on every variant in this draft, shorten each one to under 8 words."
FAQ
How do I get an API key?
You don't need one for MCP. The server uses OAuth: when you connect, your browser opens and you sign in to your Doublespeed account.
If you want a key for the separate REST API, open your product in the dashboard, click API at the bottom left of the sidebar, and use Create Key. Keys start with ds- and are scoped to one product.
What auth does the MCP server use?
OAuth 2.0 with PKCE. Access tokens last 1 day and refresh automatically; refresh tokens last 90 days. Your session sees the same products you see in the dashboard.
I get "No product selected"
Most tools require an active product. Ask your assistant to run list_products and then set_product with the product you want. Only whoami, list_products, set_product, and list_models work without one.
I get "Active subscription required"
Generation tools use paid services and require an active subscription on the product. Rendering previews, rendering slides or videos, and queueing do not consume credits. Upgrade at doublespeed.ai.
I get "Invalid or expired token" or a 401
Re-authenticate. In Claude Code, run /mcp inside the session and reconnect doublespeed. If that fails, remove and re-add the server:
claude mcp remove doublespeed
claude mcp add --transport http doublespeed https://doublespeed.ai/api/mcpWhy did my call hit a rate limit?
Expensive operations (generation, rendering, research) are rate limited per user. The error tells you how long to wait before retrying.