Prerequisites
Before setting up the MCP server, you’ll need a Ditto API token. You can generate one from your developer integrations settings. The Ditto MCP server uses Streamable HTTP transport. Any MCP client that supports Streamable HTTP or SSE can connect to it directly.Figma Make
Open connector settings
From the chat box, select Add context, hover over Connectors, then choose Manage.
Create a new connector
Navigate to the Created by you tab and click Create. Enter “Ditto” as the connector name.
Configure authentication
Click Advanced settings and add a custom request header:
- Header name:
Authorization - Header value:
token <your-api-token>
Claude Code
Claude Code supports remote MCP servers natively.Local scope (default)
Adds the Ditto MCP server for your own use in the current project. This is private to you and won’t be visible to other team members.Project scope
Shares the Ditto MCP configuration with your entire team via version control. This creates a.mcp.json file at your project root that can be checked into source control.
.mcp.json file to your project root:
DITTO_API_TOKEN environment variable with their own API token. Claude Code will prompt for approval the first time a project-scoped server is used.
User scope
Adds the Ditto MCP server across all of your projects. This is private to you but available everywhere.Cursor, VS Code, Windsurf
These clients support remote MCP servers with Streamable HTTP natively.Open MCP settings
- Cursor: Go to Cursor Settings > Tools & MCP and click + Add new MCP server.
- VS Code: Open your user or workspace
mcp.jsonand add toservers. - Windsurf: Open your MCP configuration file.
Add the server configuration
Cursor (VS Code (Windsurf (MCP configuration file):
~/.cursor/mcp.json or workspace .cursor/mcp.json):~/.vscode/mcp.json or workspace .vscode/mcp.json):Other clients
If your MCP client doesn’t support Streamable HTTP or SSE natively, use themcp-remote package as a bridge.
This also applies if you’re on Cursor 2.6.x, which has a known bug where the V2 MCP handler doesn’t fall back from Streamable HTTP to SSE — it retries indefinitely instead of connecting. Use the mcp-remote config below as a workaround until the bug is fixed.
Configuration using mcp-remote
Configuration using mcp-remote