Connecting MCP Servers to Ditto
Ditto can connect to third-party MCP servers, giving it access to external tools and data during your conversations. This means Ditto can interact with your databases, automation platforms, developer tools, and anything else that speaks MCP.
How It Works
- You add an MCP server in Ditto’s settings (URL + authentication)
- When you start a conversation, Ditto connects to your enabled servers in parallel
- Ditto discovers what tools each server provides
- Those tools become available alongside Ditto’s built-in tools (web search, memory, image generation, etc.)
- The AI decides which tools to use based on your message
Tool names are automatically namespaced with the server name to prevent collisions. For example, a server named “My GitHub” with a tool called search_repos appears as my_github__search_repos.
Adding a Server
- Open heyditto.ai → Settings → MCP Servers
- Click Add Server
- Fill in:
- Name — A display name (e.g., “GitHub”, “Zapier”, “My Database”)
- Description — Optional, helps you remember what it’s for
- Server URL — The MCP server’s SSE endpoint
- Authentication — Choose Bearer Token, X-API-Key, or Custom Headers
- Click Save
- Toggle the server on to enable it
The server will connect automatically on your next conversation.
Authentication Options
When adding a server, choose the authentication method it requires:
Bearer Token
For servers that accept Authorization: Bearer <token>:
- Select “Bearer Token”
- Paste your API key or token
X-API-Key
For servers that use an X-API-Key header:
- Select “X-API-Key”
- Paste your API key
Custom Headers
For servers with non-standard authentication:
- Select “Custom Headers”
- Add key-value pairs for any headers the server requires
Supported Transport
Ditto currently supports SSE (Server-Sent Events) transport only. This is the standard remote transport for MCP servers.
stdio transport is not supported for security reasons — it requires running arbitrary commands on the server. When Ditto launches a desktop app in the future, stdio will be available for local tools.
Managing Servers
Enable/Disable
Toggle servers on or off in Settings → MCP Servers. Disabled servers won’t connect during conversations but their configuration is preserved.
View Tools
Expand a server row to see the tools it provides. Ditto fetches the tool list when you expand the row, so you can verify the server is reachable and see what’s available.
Delete
Click the delete button on a server row. You’ll be asked to confirm before removal.
Connection Behavior
- Best-effort — If a server is down or unreachable, Ditto logs the failure and continues with all other servers and built-in tools. One broken server won’t block your conversation.
- Parallel connection — All enabled servers connect simultaneously at the start of each conversation, so multiple servers don’t add sequential latency.
- Per-conversation — Connections are established fresh for each conversation and closed when it ends.
Popular MCP Servers
Here are some well-known MCP servers you can connect to Ditto:
Automation
| Server | What It Does | URL |
|---|---|---|
| Zapier | Access 7,000+ app integrations | zapier.com/mcp |
| n8n | Self-hosted workflow automation | docs.n8n.io |
Developer Tools
| Server | What It Does | URL |
|---|---|---|
| GitHub | Browse repos, PRs, issues | github.com/modelcontextprotocol/servers |
| Sentry | Error monitoring and performance data | sentry.io |
| Linear | Project management and issue tracking | linear.app |
Databases
| Server | What It Does | URL |
|---|---|---|
| PostgreSQL | Query your database in natural language | github.com/modelcontextprotocol/servers |
| Supabase | Postgres + edge functions | supabase.com |
| MongoDB | Document database access | mongodb.com |
Knowledge & Search
| Server | What It Does | URL |
|---|---|---|
| Notion | Search workspaces and read pages | notion.so |
| Brave Search | Web search via MCP | brave.com |
| Exa | AI-native semantic search | exa.ai |
Browser & Web
| Server | What It Does | URL |
|---|---|---|
| Playwright | Browser automation — navigate, click, extract | playwright.dev |
| Fetch | HTTP fetching for any URL | github.com/modelcontextprotocol/servers |
For a comprehensive directory: github.com/wong2/awesome-mcp-servers
Tool Rendering
When Ditto uses an MCP tool during a conversation, you’ll see it rendered in the chat with:
- The server name and tool name as a header
- An expandable section showing the tool’s input and output
- A plug icon distinguishing MCP tools from Ditto’s built-in tools
Troubleshooting
Server Won’t Connect
- Verify the URL is correct and includes the full path (e.g.,
/sseor/mcp/sse) - Check that the server is running and reachable from the internet
- Verify authentication credentials are correct
- Look for CORS issues if the server doesn’t allow cross-origin requests
Tools Not Appearing
- Expand the server row in Settings → MCP Servers to check if tools load
- Make sure the server is toggled on (enabled)
- Try disabling and re-enabling the server
- Check that the MCP server implements the
tools/listmethod
Tool Calls Failing
- Check the expandable tool result in the chat for error details
- Verify the server’s API keys or tokens haven’t expired
- Check the server’s logs for authentication or authorization failures
- Ensure the tool’s required parameters are being sent correctly
What’s Coming
- OAuth MCP servers — One-click connections to services like Google Calendar, Salesforce, and others that use OAuth 2.1
- stdio transport — Coming with the Ditto desktop app for local tools and shell access
- Connection pooling — Keep persistent connections across conversations for faster startup