Out of the box, Claude Code can read files, edit them and run commands. Anything outside your machine, like a ticket in your issue tracker, rows in a database or a Figma design, it only knows if you paste it in. MCP, the Model Context Protocol, is the open standard that fixes that: you connect an MCP server, and Claude can read from and act on that system directly.
A good rule from the docs: connect a server when you notice yourself copying data from another tool into chat.
How it works
An MCP server is a small program that speaks the protocol. Mostly it offers tools: actions with a name and an input schema, like create_issue or query. Claude calls them the same way it calls its built-in tools (see tool use): it picks one, sends arguments, and the result comes back into the conversation.
Servers can also offer resources, which you mention with @ like a file (@github:issue://123), and prompts, which show up as commands such as /mcp__github__list_prs.
A server either runs locally as a process on your machine (stdio) or remotely at a URL (HTTP).
How you connect one
claude mcp add --transport http notion https://mcp.notion.com/mcpclaude mcp add --transport stdio airtable -- npx -y airtable-mcp-serverThe first adds a remote server; the second launches a local one (everything after -- is the command). Each server is saved at a scope:
- Local (the default): just you, just this project, stored in
~/.claude.json. - Project: written to
.mcp.jsonat the repo root, so your team shares it. In an interactive session, Claude Code asks before using them. - User: just you, in every project.
Inside a session, /mcp shows each server’s status and handles OAuth sign-in. Plugins can bundle MCP servers too.
The catch
Connecting a server means trusting it: Claude acts on what it returns, and a server that fetches outside content can expose you to prompt injection. Connect only servers you trust.
Tools also cost context. By default Claude Code uses tool search: only tool names load at the start, and full definitions are fetched when Claude needs one, so adding servers barely touches your context. Large tool results are capped too (25,000 tokens by default). The MCP docs cover the limits.