Integration guide

How to connect any MCP server to Claude

Add a remote MCP connector to Claude on web, desktop and mobile, so stdio MCP servers that only run locally become available in every Claude client.

MCP Nest Team Published Updated

Claude’s custom connectors take a remote URL. Most MCP servers aren’t remote: they’re npx or uvx commands that speak stdio on your machine, which Claude Desktop can run but claude.ai and the mobile apps cannot. That is why a server you configured on your laptop is missing the moment you pick up your phone.

MCP Nest runs those stdio servers in the cloud and exposes their tools over one authenticated HTTPS endpoint. Add it once as a custom connector and the same tools are there on web, desktop and mobile.

Before you start

You need one MCP Nest deployment running. Getting Started with MCP Nest covers that from a blank config. If you’d rather start from something concrete, these deploy a working server in a couple of clicks:

Which URL to give Claude

From your MCP Nest dashboard, open the OAuth (Claude, Cursor, etc.) tab and copy the Streamable HTTP Endpoint. Do not use the SSE Endpoint (Legacy) field.

https://mcp.mcpnest.dev/mcp/<your-config-id>

Claude implements the MCP OAuth flow, so use this one. Access is granted to Claude specifically and can be revoked from MCP Nest without disturbing your other clients.

The Authenticated URL shown next to it embeds a token in the query string. Claude doesn’t need it. It’s for clients with no OAuth support, covered in Using MCP Nest without OAuth.

Each config has its own URL and its own tool list, so a “work” config and a “personal” config can be two separate connectors. See deploying multiple separate configurations.

Add the connector

  1. Open https://claude.ai/settings/connectors.

  2. Click Add Custom Connector.

  3. Fill out the form:

    • Name: MCP Nest
    • Remote URL: the Streamable HTTP Endpoint from the OAuth (Claude, Cursor, etc.) tab in the dashboard

Claude Remote Connector Settings

  1. Click Add.

  2. Find MCP Nest in the connector list and click Connect. Claude sends you to MCP Nest to authorize, then returns.

Connect MCP Nest

The connector is account-level: it is now present in Claude on the web, in the desktop app and on mobile, without configuring anything on those devices.

What the tools look like

MCP Nest puts every server in a config behind the single connector and namespaces each tool as <server>__<tool>. A config running caldav-mcp under the name icloud_calendar shows up as icloud_calendar__list_events, icloud_calendar__create_event, and so on.

Claude is good at picking tools from a natural request like “what’s on my calendar Thursday?”, but if it reaches for the wrong one, naming the server in the prompt resolves it.

Keep the tool list short

Every tool the connector advertises is context Claude spends on every message, and a crowded list makes tool selection worse. Turn off what you don’t use from the MCP Nest dashboard; the toggles are per-user and drop the tools out of tools/list without a redeploy. See how to disable individual MCP tools.

This is also how you keep one connector serving several servers without the list becoming unusable.

Troubleshooting

The connector fails to connect, or lists no tools. A deployment still in progress returns a 404 status code rather than an empty tool list, which causes some clients to reject the endpoint. Wait until the MCP Nest dashboard shows the deployment as Active, click Refresh, then reconnect in Claude.

“Connect” bounces you to a login page and back. Claude opened the authorization in a browser profile that isn’t signed in to MCP Nest. Sign in at mcpnest.dev in that profile, then click Connect again.

Tools work on desktop but not mobile. Custom connectors are tied to your Claude account, so this is nearly always a stale session. Sign out and back in on the mobile app.

A tool call returns an upstream error. The failure is inside your MCP server, not the connector. The Logs page in MCP Nest shows the server’s own output; expired or missing API keys in its environment are the usual cause.

Tool names changed and prompts stopped working. The prefix comes from the server name in your config, so renaming a server renames all of its tools. Click Refresh after redeploying.

Related guides