You want Claude Code to look into your mail. You search for how to do it and you land on two different recipes: one has you click Connect on claude.ai, the other type a command starting with claude mcp add into a terminal. The first is over in a moment, the second looks like a job for a developer.
The click and the command lead to the same place: Claude Code reaches data it could not see before. What differs is how much of the setup somebody else did for you – and where your credentials end up.
A connector is a connection somebody else set up
A connector is an entry from a directory that you switch on in the browser. You go to claude.ai, find the service under Customize → Connectors, click Connect and log in to it. You don’t set the connection up yourself – the server address and the list of tools come ready to use. All you decide is which of those tools to switch on. The directory covers Google Drive, Gmail, Google Calendar, GitHub, Slack and Microsoft 365, among others.
Not every entry in that directory was built by Anthropic, though. A verified connector carries a checkmark: Anthropic has tested its tools for quality and compatibility, while saying outright that this is not a security audit. A Community badge means somebody outside built it; Anthropic screens those connectors before listing them, but does not review them in depth, and will remind you of that before you connect one.
In Claude Code you don’t add such a connector a second time. Connectors belong to your Claude account rather than to one program, so they turn up in Claude Code by themselves. There is one condition: you sign in to Claude Code with the same Claude account you use in the browser.
What switching a connector on looks like from the inside – with Google’s consent screen and the permissions of the individual tools – is in our lesson on the Gmail and Calendar connectors.
An MCP server you add yourself, with one sentence in the conversation
MCP is short for Model Context Protocol – an open standard that AI programs use to reach data and tools sitting outside them. An MCP server is what stands on the other side of such a connection: a service or a program that offers Claude Code a set of tools. Notion runs one for its documents, Sentry for reported errors, Stripe for payments.
A server added this way often gives you more than a connector from claude.ai – somebody picked the connector’s list of tools for you, and it tends to be narrower than what the service exposes over MCP. It comes with one limit: it works in Claude Code on this computer and nowhere else. It isn’t saved to your Claude account, so you won’t see it on another device or in claude.ai.
In the simplest case you need one thing: an address. That is mostly how it goes with servers holding public data. The address comes from whoever makes the service – in their documentation, on their integrations page, or on a page about MCP itself.
As an exercise, you are about to connect the Claude Code documentation. Its MCP server sits at https://code.claude.com/docs/mcp and needs no login.
There is no command to learn here. Asking the AI for the server in the conversation is enough. This one time, though, we’ll do it by hand, to see what happens underneath. Type this in the terminal, before you start Claude Code:
claude mcp add --transport http claude-code-docs https://code.claude.com/docs/mcp
--transport http says the server sits at an address rather than on your disk. claude-code-docs is a name you make up – it is how you’ll recognise this server’s tools in the conversation.
For every server after that, a plain sentence in the conversation does it:
Add an MCP server: https://mcp.example.com/mcp
The AI puts the same command together and shows it to you before it runs it. Ask for a list of connected servers as well, and you’ll see whether the new one got through.
If the data the server reaches for isn’t public and getting to it takes a login, most makers hand you a ready block of JSON – with everything the connection needs. You don’t have to type that code out either – you paste it into the conversation with one sentence.
Here's some code, use it to make an MCP connection:
{
"mcpServers": {
"Project Tracker": {
"command": "npx",
"args": ["-y", "@example/mcp-server"],
"env": { "AUTH_TOKEN": "your-token" }
}
}
}
Claude Code takes from the block what it needs and fixes two things on the way that are easy to trip on. A server name accepts letters, digits, hyphens and underscores only, so “Project Tracker” with its space has to change. An entry with a url field instead of command needs a type field as well – without it Claude Code reads it as a server started by a command, skips it and reports an error.
Those two fields also tell you where the server sits. url means it runs at the maker’s end. command means Claude Code starts it on your computer, and that is already the third route, the one in the next section.
The token from a block like that – AUTH_TOKEN here – you create beforehand in the service’s own panel. It tells the server who is asking, so it shows up wherever your own data is involved rather than public content. Not every service does it with a token: some simply ask you to log in in the browser. Claude Code then reports that the server is waiting for a login, and you go through it with the /mcp command. Which route your service takes is in the same documentation where you find the address.
A new server is saved to the project you happen to be talking in. Want it everywhere – add that to what you ask for, in plain words: “set it up for all my projects”.
A local MCP server runs on your own computer
An MCP server doesn’t have to sit at the maker’s end – the third route is running it at yours. A server like that keeps the credentials to the service on your own disk, and that is the whole practical difference. Which is why it works whichever Claude account you happen to be on, and why nobody stands between you and the service’s API.
Email is the clearest case here. The official Gmail connector serves the one Google account you connect to it, and no more. A local server you can add several times over, under different names, each with the credentials to a different mailbox – your work inbox and your private one become two separate sources in one conversation.
Ready-made local servers turn up in a maker’s documentation now and then, more often on GitHub, where enthusiasts write them. So keep in mind that somebody else’s repository is installed at your own risk: nobody went through that code, not at Anthropic and not at the service. Before you install a server like that, paste the repository’s address into the conversation and ask Claude Code to check who wrote it, when they last fixed anything in it, and what its code is going to do with your data.
To Claude Code it is all one mechanism
Connectors from claude.ai run on MCP. You can see it in the terminal: the /mcp command in Claude Code lists all three kinds together, and their tools are called in exactly the same way.
The cost is shared too. Every connected server takes up a little room in the context window, because its tool names and its instructions load into every conversation. So connect what you actually use – the rest you can remove at any time.
In short
Start at the connector directory on claude.ai, in the settings under Customize → Connectors. Is your service there? Switch the connector on in the browser and leave it at that – Claude Code shows it with no further setup, and on a Community badge check first who is behind it. Not there? Look for the MCP server’s address in the service’s documentation and ask Claude Code, in the conversation, to add it. And where a connector’s tools turn out to be too few – the fuller option is a local server.
The whole difference comes down to who holds the settings and the credentials. As long as “somebody else” is an answer you can live with, there is nothing you need to add yourself.