# How to add a custom MCP connector to Claude

Canonical: https://clawdocx.com/docs/mcp-add-custom-connector-to-claude
Author: Sam Okafor
Difficulty: INTERMEDIATE
Published: 2026-02-24
Updated: 2026-10-22

> Add a remote MCP server to Claude as a custom connector: the plan rules, the firewall range your server must accept, the add steps and the auth choices.

To add a custom MCP connector to Claude you need two things: the HTTPS URL of a remote MCP server, and an account allowed to add one. On Free, Pro and Max you add it yourself under **Customize > Connectors**; on Team and Enterprise an Owner adds it once under **Organization settings > Connectors** and members then connect individually. Free accounts are capped at one custom connector. The step people get wrong is not in Claude at all: Claude reaches your server from Anthropic's cloud, not from your computer, so a server that only answers on your own network will never connect.

This guide covers adding a connector for a server that already exists. If you are writing the server, see Anthropic's own [Build an MCP server for Claude](https://claude.com/docs/connectors/building) and our explainer on [what MCP is](/blog/what-is-mcp).

## Who can add a custom connector, and on which plan?

Anthropic's help center states that custom connectors using remote MCP are available on Claude, Cowork and Claude Desktop for users on Free, Pro, Max, Team and Enterprise plans, and that "Free users are limited to one custom connector". The Claude documentation lists the same set of plans for adding a connector by URL.

Who may do the adding is where the plans differ:

| Plan | Who adds the connector | Where | Limit |
|---|---|---|---|
| Free | You, for your own account | Customize > Connectors | One custom connector |
| Pro, Max | You, for your own account | Customize > Connectors | No documented limit |
| Team | An Owner or Primary Owner, for the organization | Organization settings > Connectors | No documented limit |
| Enterprise | An Owner, a Primary Owner, or a custom role that includes Manage access to Libraries | Organization settings > Connectors | No documented limit |

On Team and Enterprise, adding is only half the job. Once an Owner has added the connector, each member connects to it individually from **Customize > Connectors**, which the help center explains is what keeps Claude limited to the tools and data that each person can already reach. The exception it names is a connector that uses a shared credential such as an API key: there, everyone who uses it reaches the service with that one credential's access.

## What must be true of your MCP server first?

Three things, and the first catches most people.

**It must be reachable from the public internet, from Anthropic's addresses.** The help center is explicit that when you add a custom connector, Claude connects to your server "from Anthropic's cloud infrastructure, rather than from your local device", and that this is true across every Claude client including claude.ai, Claude Desktop, Cowork and the mobile apps. A server on a private corporate network, behind a VPN, or blocked by a firewall will not connect even though you can reach it from your own machine.

This surprises people on Claude Desktop and Cowork in particular, because both run on your computer. The help center addresses that directly: remote connectors are configured and brokered through your Claude account, so the connection starts at Anthropic's servers. Local MCP servers configured in `claude_desktop_config.json` are a separate mechanism that does use your network, and those are not available in Cowork or claude.ai.

If your server sits behind a firewall, allowlist Anthropic's outbound range. The IP addresses page gives one IPv4 range for outbound requests, which is what it uses "when making MCP tool calls to external servers":

```text
160.79.104.0/21
```

That page also lists five addresses as phased out and says to remove them from your rules if you allowlisted them before: `34.162.46.92/32`, `34.162.102.82/32`, `34.162.136.91/32`, `34.162.142.92/32` and `34.162.183.95/32`. Check the page yourself before you write the rule, since it is the list Anthropic maintains.

**It must speak the right transport.** Anthropic's build guide says to use Streamable HTTP, which the MCP specification defines for remote servers, and notes that the legacy HTTP+SSE transport is still supported but is being deprecated in favor of it. In the add dialog, a URL ending in `/sse` is what selects the older transport.

**It must fit the limits.** The build guide gives different numbers for the hosted apps and for Claude Code:

| Limit | claude.ai and Desktop | Claude Code |
|---|---|---|
| Maximum tool result size | About 150,000 characters | 25,000 tokens, configurable with `MAX_MCP_OUTPUT_TOKENS` |
| Tool call timeout | 240 seconds per tool call | Configurable with `MCP_TOOL_TIMEOUT` |

The same guide lists what Claude does not yet support, so do not build a connector that depends on resource subscriptions, sampling, or advanced and draft capabilities.

## How do you add a custom connector on Free, Pro or Max?

The help center gives these steps for an individual account:

1. Go to **Customize > Connectors**.
2. Click **+ Add**, then **Add custom connector**.
3. Enter a name. This is what appears in your connectors list.
4. Enter the remote MCP server's URL and click **Continue**. The documentation's example of the shape to use is `https://mcp.example.com/mcp`.
5. Review the authentication settings Claude detected and change them if your server needs something else, then click **Continue**.
6. Choose an option under **Authentication**, and one under **OAuth client** if you did not choose no sign-in.
7. Add any fixed credentials under **Request headers**, if your organization has that section.
8. Click **Add**.

To use the connector in a conversation, the help center says to open the "+" button at the lower left of the chat, then **Connectors**, where each configured connector has a per-conversation toggle. A connector being added is not the same as a connector being switched on.

## How does an Owner add one for a Team or Enterprise organization?

The same dialog, reached from a different place, with one extra choice at the start:

1. Go to **Organization settings > Connectors**.
2. Click **Add**, hover over **Custom**, and select **Web**.
3. Enter the name, then the server URL, and click **Continue**.
4. Review the detected authentication settings, then set **Authentication**, **OAuth client** and any **Request headers** as below.
5. Click **Add**.

Members then find it under **Customize > Connectors** and click **Connect** to authenticate.

One piece of behavior worth knowing before someone reports it as a bug. The help center notes that if your connector's URL is on a domain matching a listing in the Connectors Directory, it appears with that service's name and branding instead of a "Custom" label. It is still your connector, pointed at the exact URL the Owner entered, and it does not need removing and re-adding.

## Which authentication option should you choose?

The documentation gives three, and the right one depends on whose account the server should see:

- **Sign in now.** Each user signs in through the server's OAuth flow before using the connector. Choose this when the server has real per-user accounts and you want each person's own permissions to apply.
- **Sign in when needed.** Claude connects without credentials and prompts the user to sign in when the server asks. This suits a server where some tools are public and only some need an account.
- **No sign-in.** Anyone with access to the server URL can use the connector. The documentation pairs this with request headers for a server that authenticates with an API key.

If you are not using no sign-in, you also choose an **OAuth client**, which is how Claude identifies itself to your authorization server:

- **Use Claude's published identity**, which the documentation marks as recommended. The server reads Claude's client details from a Client ID Metadata Document that Anthropic hosts, and you set nothing up, but the server has to support the method.
- **Register automatically**, which uses Dynamic Client Registration as users connect. The documentation notes this works with most servers and adds client registrations over time.
- **Use your own OAuth client**, where you enter a client ID you registered yourself and leave the secret blank unless your authorization server needs one.

Server authors should check their OAuth setup against Claude's client rather than against the specification alone: the build guide says Claude follows the `2025-03-26`, `2025-06-18` and `2025-11-25` authorization specifications and needs `https://claude.ai/api/mcp/auth_callback` allowed as a redirect URI for the hosted surfaces.

## How do you use an API key instead of OAuth?

Through the **Request headers** section, with a caveat the help center does not mention and the documentation does.

The help center lists request headers as an ordinary step in the add flow: add fixed credentials such as API keys that Claude sends on every request, if your server authenticates with an API key, bearer token or other fixed credential instead of OAuth. The documentation adds that "Request header authentication is in beta and available to a limited set of organizations", and that if you do not see the section in the dialog, your organization does not have access yet. We follow the documentation on this point, because it is the more specific and more recent statement, and because the failure mode it describes is one a reader will otherwise hit without explanation.

Where you do have the section, the documented rules are worth reading before you start:

- Claude sends the value exactly as entered and adds no scheme or prefix, so an `Authorization` header value has to include its scheme.
- You can add up to four headers, each marked required or optional. A required header with no stored value fails the connection; an optional one is simply omitted.
- Anthropic reviews and approves each custom header name before Claude will send it, and rejects a save that uses an unapproved name. Standard names such as `authorization`, `x-api-key` and `x-auth-token` are offered in the list and available to every connector.
- On an OAuth connection you cannot configure `Authorization` as a request header, because OAuth is already using it.

On Team and Enterprise, remember what the help center says about shared credentials: everyone who uses that connector reaches the service with the same key, so scope the key to what members should be able to do rather than to what you can do.

## How do you change or remove a connector?

There is no edit. The help center states that to change a custom connector you remove it and re-add it with the updated details. Removal is from **Customize > Connectors**, where you click **Remove** or use the three dots beside the connector, and Team and Enterprise Owners can do it for the organization from **Organization settings > Connectors**.

## What should you check before you trust a connector?

The help center is blunt that a custom connector is a connection to a service Anthropic has not verified, and that Claude can then access and act in that service with your permissions. Its guidance, which is worth treating as the checklist:

- Connect only to servers built and hosted by organizations you trust.
- Review the permissions requested during authentication, limit the scopes where you can, and deny anything that looks unnecessary.
- Expect prompt injection to be attempted. The help center says a malicious MCP server may include hidden instructions that try to make Claude take unintended actions, and that while Claude has built-in protections, you should watch tool inputs and outputs.
- Watch for tool behavior changing, since a server's developer can update what a tool does after you have connected it.
- Use the "Search and tools" menu to switch off tools that are not relevant to the conversation.

Two features deserve a second look. Research can invoke tools from your connectors automatically without further approval, so the help center advises disabling any tool that writes to an external application before using it. Interactive connectors, which render live interfaces inside the conversation, act with the same permissions you granted when connecting, and Team and Enterprise Owners can disable the specific tool calls that render them from **Organization settings > Connectors**.

If you are weighing a connector against the other ways to extend Claude, our comparison of [MCP and agent skills](/blog/mcp-vs-agent-skills) covers what each is for, and our guide to [auditing a third-party SKILL.md](/docs/skill-security-audit) applies the same skepticism to the other half of the ecosystem. For the equivalent job in a different tool, see [adding MCP servers to Codex](/docs/codex-add-mcp-servers). For what MCP is and which agents implement it, start at our [MCP hub](/ai-agents/mcp).

## Frequently asked questions

**Can you add a custom connector on the Claude Free plan?**

Yes, but only one. Anthropic's help center says custom connectors using remote MCP are available on Free, Pro, Max, Team and Enterprise plans, and that Free users are limited to one custom connector. The Claude documentation says the same thing in its own words: on the Free plan, you can add one custom connector.

**Why does my MCP server work on my laptop but not as a Claude connector?**

Because Claude does not connect from your laptop. Anthropic's help center says the connection comes from Anthropic's cloud infrastructure across every Claude client, including claude.ai, Claude Desktop, Cowork and the mobile apps, so a server behind a VPN, a private network or a firewall will not connect even when you can reach it yourself. The server has to accept inbound traffic from Anthropic's published outbound range.

**Which IP range do I allowlist for a custom connector?**

Anthropic's IP addresses page lists 160.79.104.0/21 as the IPv4 outbound range, which is what it uses for outbound requests such as MCP tool calls to external servers. That page also lists five /32 addresses in 34.162.0.0/16 as phased out, and says to remove them from firewall rules if you allowlisted them before.

**How do I edit a custom connector after adding it?**

You cannot edit one in place. The help center says that if you want to change a custom connector, you remove it first and then re-add it with the updated details. Removing is done from Customize > Connectors, or from Organization settings > Connectors for a Team or Enterprise Owner acting for the organization.

**Can I use an API key instead of OAuth for a custom connector?**

Sometimes. The documentation says to choose No sign-in and put the key in the Request headers section, but it also says request header authentication is in beta and available to a limited set of organizations, and that you will not see the section if yours does not have access. Anthropic also reviews and approves each custom header name before Claude will send it.

**How long can a connector tool call take?**

On claude.ai and Claude Desktop the documentation gives a tool call timeout of 240 seconds per tool call and a maximum tool result size of about 150,000 characters. Claude Code uses different numbers: 25,000 tokens of tool result, configurable with MAX_MCP_OUTPUT_TOKENS, and a timeout configurable with MCP_TOOL_TIMEOUT.

## Sources

- [Get started with custom connectors using remote MCP (Claude Help Center)](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp)
- [Add a connector that isn't in the directory (Claude Docs)](https://claude.com/docs/connectors/custom/add-unlisted)
- [Build an MCP server for Claude (Claude Docs)](https://claude.com/docs/connectors/building)
- [Anthropic IP addresses](https://platform.claude.com/docs/en/api/ip-addresses)
- [Connect to remote MCP Servers (Model Context Protocol)](https://modelcontextprotocol.io/docs/2026-07-28/develop/connect-remote-servers.md)