MCP (Model Context Protocol) in Claude

MCP (Model Context Protocol) in Claude

Understand the open standard that lets Claude connect to your files, apps, and services: how it is built, how a single request travels, how it stays safe, and how to choose and use it wisely.

On its own, an AI model is like a brilliant person locked in a room with a telephone that only connects to a library of old books. It can talk, reason, and write, but it cannot see your calendar, open your documents, check your sales numbers, or create a ticket in your project tool. To be truly useful at work, it needs doors that lead from the room to the real world.

The Model Context Protocol, usually shortened to MCP, is a standard way of building those doors. It was introduced by Anthropic as an open standard, which means that anyone can build with it, not just one company. With MCP, a program that offers some ability, such as reading files or searching a database, can describe that ability in a common language, and any AI application that speaks the same language can use it.

This guide explains MCP from the very beginning. We cover the problem it solves, the roles and parts involved, how a request travels from your question to a result, how it appears in Claude, and how to use it safely. Product names, menus, and supported features change often, so for exact setup steps, check the Claude help center at support.claude.com and the developer documentation at docs.claude.com, as well as the official MCP site. This article focuses on the ideas that stay true as the details shift.

1What Is MCP?

MCP is a shared language that lets AI applications talk to outside tools and data in a consistent way.

The plain-words definition

A protocol is an agreed set of rules for how two programs talk. You already use protocols every day. When your browser loads a web page, it follows rules called HTTP. When your phone sends an email, it follows rules for mail. MCP is a protocol for one particular conversation: the one between an AI application and the outside tools or information it wants to use.

What it offers

MCP lets a program, called a server, say: “here is what I can do, here is what I can show you, and here is how to ask.” An AI application, such as Claude, reads that description and can then use those abilities when they help with your request. The AI does not need custom code written specially for each tool. It follows the common rules.

Open

An open standard

The rules are public, so many companies and individuals can build servers and applications that work together.

Common

One language

A tool described once can be used by many AI applications, instead of being rebuilt for each one.

Two-way

Doing and reading

Servers can let AI read information and also take actions, always under rules you control.

Growing

A large ecosystem

Servers exist for files, databases, developer tools, productivity apps, and many other services.

Everyday analogy

Think of the USB-C port on your devices. Before a common port, every gadget had its own plug, and drawers were full of tangled cables. With one standard port, any compatible device plugs into any compatible charger or screen. MCP is the USB-C port for AI: a common connector between assistants and the tools they use.

i
Good to know

In Claude, you will often meet MCP under friendlier names, such as connectors or integrations. Behind the scenes, many of them are MCP servers.

A short story of why it appeared

As AI assistants became capable, people wanted them to work with real information: their documents, their code, their messages, their company data. Developers solved this one connection at a time, writing special code to join an assistant to a service. Every connection was slightly different, and each needed upkeep. MCP was created to replace that patchwork with a shared standard, so that effort spent on one connection benefits everyone. It is a bit like the early days of the web, when agreeing on common rules turned isolated pages into a connected world.

What MCP is not

It is not a model, and it does not make Claude smarter. It is not a single product that you buy. It is not a security guarantee either; it is a way of connecting things, and the safety of each connection still depends on the server, the permissions, and your care. Keeping these limits in mind helps you judge claims about MCP calmly.

2The Problem MCP Solves

Without a standard, every AI application would need its own special connection to every tool.

The many-to-many tangle

Imagine five AI applications and ten tools: a calendar, a document store, a code host, a database, and so on. If each application needs a custom connection to each tool, that is fifty separate pieces of work. Every time a tool changes, many connections break. Every new application starts from zero. This is sometimes called the N times M problem, because the work grows with the product of the two numbers.

flowchart LR
  subgraph Before["Without a standard"]
    A1["App 1"] --- T1["Tool A"]
    A1 --- T2["Tool B"]
    A2["App 2"] --- T1
    A2 --- T2
  end
  subgraph After["With MCP"]
    B1["App 1"] --> M["MCP"]
    B2["App 2"] --> M
    M --> S1["Tool A server"]
    M --> S2["Tool B server"]
  end
    
Figure 1: Without a standard, every app needs a separate link to every tool. With MCP, each side connects once to the shared standard.

On the left of the diagram, two apps and two tools need four separate connections. Add a third app and a third tool, and you need nine. On the right, each app speaks MCP, and each tool is wrapped in an MCP server. Now each side is built once, and any app can reach any server. The work grows by addition instead of multiplication.

Why it matters for AI in particular

AI assistants are only as helpful as the information and abilities they can reach. A model that cannot read your documents cannot summarize them. A model that cannot create a ticket cannot help you manage your tasks. As people ask AI to do real work, the number of tools it must reach grows quickly. A standard makes that growth manageable and keeps the ecosystem open to new tools and new assistants.

Everyday analogy

Imagine a country where every shop used a different payment machine, and every bank card worked with only one of them. Shoppers would carry dozens of cards, and shops would stock dozens of machines. A common card standard lets one card work in every shop. MCP does this for AI and tools: one standard, many partners.

i
The key idea

MCP does not make the model smarter. It gives the model a consistent way to reach information and abilities outside itself.

Who benefits

Everyone in the chain gains something. Tool providers write one server and reach many assistants. Assistant makers support one standard and gain access to many tools. Companies can connect their internal systems once and let different teams use them with the assistant of their choice. And ordinary users get an assistant that knows more about their world and can help with real work. A shared standard also reduces lock-in, since a tool built for MCP is not trapped inside one product.

3The Three Roles: Host, Client, and Server

MCP describes who does what with three simple roles.

Host

The AI application

The program you use, such as the Claude app or a coding tool. It holds the conversation, talks to the model, and decides what you allow.

Client

The connector inside the host

A piece of the host that keeps one dedicated connection to one server and handles the messages in both directions.

Server

The provider of abilities

A program that offers tools, information, or prompts through MCP. It might run on your computer or on the internet.

One host, many servers

A single host can connect to several servers at once. Each connection has its own client inside the host. So in one conversation, Claude might use a calendar server to check your schedule, a document server to find a file, and a database server to look up numbers. The servers do not talk to each other. The host sits in the middle and decides how to combine what they return.

Why this separation is useful

The separation keeps responsibilities clean. The host controls the user experience and permissions. The client handles the technical conversation. The server focuses on its own specialty, such as a particular service, and need not know anything about the AI model itself. This makes servers simpler to write and safer to reason about.

flowchart TD
  U["You"] --> H["Host: the Claude application"]
  H --> C1["Client 1"]
  H --> C2["Client 2"]
  H --> C3["Client 3"]
  C1 --> S1["Server: files"]
  C2 --> S2["Server: calendar"]
  C3 --> S3["Server: database"]
    
Figure 2: One host holds one client per server. Each client talks to exactly one server.
Everyday analogy

Think of a hotel concierge desk. You are the guest. The concierge is the host, who takes your request. The concierge has a separate phone line to the taxi company, the restaurant, and the theater, and each line is a client. The taxi company, restaurant, and theater are the servers. You speak to one person, and the concierge decides which lines to use.

i
Terminology tip

People often say “MCP client” to mean the whole AI application. Strictly, the application is the host, and the client is the connector inside it.

4Architecture and Components

MCP has layers: a message format, a way to carry messages, and the features built on top.

The layers

It helps to picture MCP in three layers. At the bottom is the transport, which is the road the messages travel on. Above it is the message format, which defines how requests and answers look. At the top are the features, which describe what servers and clients can offer each other. Each layer can be understood on its own.

LayerWhat it doesSimple picture
FeaturesTools, resources, prompts, and client abilitiesThe menu of services
MessagesStructured requests, responses, and notificationsThe language spoken
TransportMoves the messages between host and serverThe phone line or road

The message format

MCP messages follow a widely used, lightweight format for remote calls, in which one side sends a request with a method name and details, and the other side sends back a result or an error. There are also one-way notices, for events that need no reply. Because the format is simple and common, it is easy to build and to inspect when something goes wrong.

The main components

ComponentRole
Host applicationHolds the conversation, shows results, and enforces your permissions
MCP clientKeeps a session with one server and exchanges messages
MCP serverExposes tools, resources, and prompts for a service or data source
TransportCarries messages, either locally or over the network
Backing serviceThe real system behind the server, such as a file system, a database, or a web service
ModelDecides which abilities to use based on your request
Everyday analogy

Sending a letter involves layers too. There is the message you write, the envelope with an address, and the postal system that carries it. You can change the wording of the letter without changing the post office. In MCP, the features are the letter, the message format is the envelope, and the transport is the postal system.

i
Versions evolve

The standard is updated over time, and clients and servers agree on a version when they connect. Always check the official MCP documentation for the version that matters to you.

5The Building Blocks: Tools, Resources, and Prompts

A server can offer three kinds of things, each with a different purpose and a different level of control.

Tools

Actions the model can call

Functions such as “search files”, “create an event”, or “run a query”. The model chooses to use them, usually with your approval.

Resources

Information to read

Content such as documents, records, or logs, identified by an address. The application or user selects what to include.

Prompts

Ready-made instructions

Reusable templates the server offers, such as “summarize this week’s tickets”, that a person can choose to start.

Who is in control?

A neat way to remember the three is by asking who triggers each. Tools are model-controlled: the AI decides when a tool would help. Resources are application-controlled: the host decides which information to supply. Prompts are user-controlled: you pick them from a list. This split helps keep people in charge of the important choices.

Building blockWho triggers itTypical exampleRisk level
ToolThe model, with permissionSend a message, update a recordHigher, since it can change things
ResourceThe application or userAttach a document or a log fileLower, mostly reading
PromptThe userChoose a “weekly report” templateLower, since the user picks it

How a tool describes itself

Every tool comes with a name, a plain-language description, and a description of the inputs it expects. The model reads these descriptions to decide when and how to use the tool. This is why descriptions matter so much. A clear description helps the model use the tool correctly. A vague or misleading one leads to mistakes. Servers can also say whether a tool only reads or can also change things, which helps hosts ask for the right level of approval.

Everyday analogy

Think of a workshop. The tools on the wall are what the worker can pick up and use. The reference books on the shelf are information to read. The laminated job cards are ready-made instructions that a supervisor hands out. A good workshop labels every tool clearly, so the worker never uses a saw when a screwdriver was needed.

!
Tools can change things

Reading is usually safe, but a tool that sends, deletes, or buys can have real effects. Pay the most attention to approvals for tools that act.

Choosing the right building block

When you design or select a server, it helps to ask what the reader actually needs. If Claude must do something, such as create a ticket, a tool is right. If Claude must see something, such as a policy document, a resource is right, because it is simply information to read. If a person often starts the same kind of task, such as a weekly summary, a prompt template saves them from retyping the same instructions. Many beginners make everything a tool. A more careful design keeps reading and acting separate and offers the simplest block that fits the need.

6Transports: How Messages Travel

Messages can travel on your own computer or across the internet, and the transport decides which.

Local servers

A local server runs on your own machine, started by the host. The host and the server exchange messages through standard input and output, which is the simplest possible channel between two programs on the same computer. There is no network involved, which makes local servers fast and easy to build. They are well suited to tasks such as reading files on your computer or using local developer tools.

Remote servers

A remote server runs somewhere else, such as a company’s cloud, and the host reaches it over the internet using standard web requests. A remote server can serve many users, can be updated centrally, and does not require installing anything on your machine. It also needs more care around identity and security, since it is reachable from outside.

FeatureLocal serverRemote server
Where it runsOn your computerOn the internet or a company network
SetupInstall and configure on your machineAdd a connection address and sign in
Access to local filesDirectNone, unless uploaded or exposed
UpdatesYou update it yourselfThe provider updates it
UsersUsually just youMany users, each with their own sign-in
Main riskRunning untrusted code on your machineAccount access and data leaving your control

Streaming and long tasks

Some work takes time, and servers may want to send progress updates or several pieces of a result as they become ready. The remote transport supports streaming, so a server can send information gradually over one connection. This is useful for long searches, large downloads, or tasks that report their progress step by step.

Everyday analogy

A local server is like asking a colleague at the next desk: quick, easy, and in the same room. A remote server is like phoning a specialist at another office: they can serve many callers and keep their own records, but you need their number, and you must make sure it is really them on the line.

i
Older and newer options

The standard has changed its recommended remote transport over time. If you build or choose a server, check the current specification so you do not rely on a transport that is being phased out.

7Inside a Connection: Lifecycle and Capabilities

Every MCP connection starts with a handshake, runs for a while, and ends cleanly.

The handshake

When a client connects to a server, the two begin by introducing themselves. The client says which version of the standard it speaks and which abilities it supports. The server answers with its own version and the abilities it offers. This exchange is called capability negotiation. After it, both sides know exactly what the other can do, and neither will try to use something the other lacks.

sequenceDiagram
  participant H as Host and client
  participant S as Server
  H->>S: Hello: my version and abilities
  S-->>H: Hello: my version and abilities
  H->>S: Ready to work
  H->>S: What tools do you have?
  S-->>H: List of tools with descriptions
  H->>S: Call this tool with these inputs
  S-->>H: Result
  H->>S: Close the connection
    
Figure 3: The life of an MCP connection, from the first greeting to a clean close.

The sequence shows an orderly conversation. The two sides greet each other and agree on abilities. The client then asks what tools exist, receives the list, and calls a tool when the model needs it. At the end, the connection closes. The same pattern applies to resources and prompts: ask for a list, then ask for the item you want.

Staying up to date

Servers can change over time. A new tool may appear, or a document list may grow. The standard lets servers send a notice that something has changed, so the host can ask for a fresh list. This keeps the model’s picture of what is available accurate, without restarting the connection.

1

Connect

The host opens a channel to the server using the chosen transport.

2

Negotiate

Both sides agree on a version and list the abilities they support.

3

Discover

The client asks for lists of tools, resources, and prompts.

4

Operate

Requests and results flow back and forth as the conversation needs them.

5

Close

The connection ends and resources on both sides are released.

Everyday analogy

A phone call to a customer service line works the same way. You greet each other, the agent says what they can help with, you ask your question, they answer, and you say goodbye. If the agent could not help with refunds, you would find out at the start, not after twenty minutes of explaining.

i
Practical tip

If a tool you expect is missing in Claude, the cause is often at the discovery step: the connection failed, the server did not list it, or it was turned off in your settings.

8Data Flow: One Request from Start to Finish

Following one question through the system shows how all the parts work together.

An example request

Suppose you type: “Find the notes from last Tuesday’s meeting and add the action items to my task list.” You have connected a document server and a task server. Here is what happens, in plain terms.

sequenceDiagram
  participant U as You
  participant H as Claude host
  participant M as Model
  participant D as Document server
  participant T as Task server
  U->>H: Your request
  H->>M: Request plus list of available tools
  M-->>H: Please call the document search tool
  H->>U: Ask for permission if needed
  U-->>H: Approve
  H->>D: Search for last Tuesday's notes
  D-->>H: Matching notes
  H->>M: Notes returned as context
  M-->>H: Please call the task creation tool
  H->>T: Create tasks from action items
  T-->>H: Tasks created
  H->>M: Confirmation
  M-->>H: Final answer for you
  H->>U: Summary of what was done
    
Figure 4: A request that uses two servers. The host mediates every step and can ask for your approval.

Step by step

1

The host prepares

It sends your request to the model along with the descriptions of the tools that are available.

2

The model chooses

It decides that a search tool would help, and asks the host to call it with specific inputs.

3

You approve

The host can show what is about to happen and wait for your permission, especially for tools that change things.

4

The server acts

The document server runs the search against the real document system and returns the result.

5

The model continues

It reads the result, plans the next step, and may call another tool, such as the task creator.

6

You get an answer

The model writes a final reply that explains what it found and what it changed.

Two points deserve attention. First, the model never reaches the document or task systems directly. It only asks the host, and the host talks to servers. Second, everything returned by a server becomes part of the text that the model reads. This is why trusting the server matters, a theme we will return to in the security chapters.

Everyday analogy

Think of a manager who asks an assistant to book a meeting room and order lunch. The assistant phones the facilities desk and the caterer, brings back confirmations, and reports to the manager. The manager never dials those numbers. The assistant is the host, the desks are servers, and the manager can still say “check with me before you spend money”.

i
Tokens and cost

Tool descriptions and results are text that the model reads, so they use part of its working room. Connecting many servers with long descriptions can crowd the context window.

What can go wrong along the way

A request passes through many hands, and each hand is a place where something can fail. The model might choose the wrong tool. The inputs might be incomplete. The server might be slow or return an error. The result might be too long to be useful. A good host and a good server expect these troubles. They show clear messages, let the model try again with better inputs, and avoid repeating the same failing call. As a user, you can help by describing your request clearly, naming the service you mean, and saying what a good result looks like.

Why the host stays in the middle

It might seem simpler to let the model talk to servers directly, but keeping the host in the middle is a deliberate choice. The host can enforce your permissions, show approvals, hide secrets from the model, record what happened, and cut off a server that behaves badly. This central position is what makes it possible to combine many servers without trusting each of them completely.

9MCP Across Claude Products

MCP appears in several Claude products, each with its own way to add and manage servers.

Claude is available in several places, and MCP shows up in many of them. The common thread is that each product can act as a host. The differences lie in how you add servers, how approvals work, and what the product is designed for.

Claude app

Connectors

In the main Claude app, services are offered as connectors. You choose a service, sign in to allow access, and Claude can use it in your chats. Many connectors are remote MCP servers. Availability depends on your plan and your organization.

Desktop

Local servers and extensions

The desktop app can also run local servers on your computer, which suits file access and developer tools. Packaged extensions can make installing them easier.

Claude Code

Developer tooling

For software work, Claude Code can connect to servers for code hosts, issue trackers, databases, and monitoring. Servers can be set up per project and shared with a team.

Platform

Building your own agents

Developers using the Claude API and its agent tools can connect their applications to MCP servers, so their own products reach the same ecosystem.

Connectors in everyday words

If you are not a developer, you can think of a connector as a permission slip. You tell Claude, “you may look in my calendar” or “you may search my team’s documents”, and you sign in to approve it. After that, when your request needs that information, Claude can fetch it. You stay in control of which connectors exist, and you can turn them off.

Organizations and administrators

On work plans, administrators may decide which connectors are allowed, who can add new ones, and what data they may reach. This is a feature, not an obstacle. It keeps company information inside approved systems. If a connector you want is missing, ask your administrator before looking for workarounds.

Everyday analogy

Think of a smartphone and its apps. The phone is the host, and each app asks permission before it reaches your contacts or camera. You can grant or remove permission whenever you like. Connectors in Claude follow the same idea: Claude is the phone, and each connector asks for the access it needs.

i
Check the current list

Names and options change. The help center at support.claude.com explains how to add, manage, and remove connectors for your plan, and docs.claude.com covers the developer side.

Example: one task, three products

Imagine you want help preparing for a client meeting. In the Claude app, you might connect your document store and calendar, and ask for a briefing based on the last three proposals and tomorrow’s agenda. In a coding product, a developer might connect the issue tracker and ask Claude to prepare release notes from closed tickets. In a custom assistant built through the developer platform, a company might connect its customer database so support staff can ask plain-language questions. The same idea of a shared standard powers all three, while the setup and controls differ.

10Choosing Between Local and Remote Servers

The right choice depends on where your data lives, who needs access, and how much risk you accept.

flowchart TD
  A["I want Claude to reach something"] --> B{"Is it a cloud service with a provided connector?"}
  B -- "Yes" --> C["Use the remote connector and sign in"]
  B -- "No" --> D{"Is it on my own computer?"}
  D -- "Yes" --> E["Use a trusted local server"]
  D -- "No" --> F{"Is it an internal system of my company?"}
  F -- "Yes" --> G["Ask the platform team for an approved server"]
  F -- "No" --> H["Consider building a small server of your own"]
    
Figure 5: A simple decision path for choosing how Claude should reach a tool or data source.

The path begins with the easiest option. If a trusted provider already offers a connector for the service, use it. If the data sits on your own computer, a local server is natural. If it is an internal company system, the right route is through the people who manage it, who can provide an approved and monitored server. Only when none of these exist is it worth building your own.

Questions that guide the choice

QuestionLeans toward
Does the data live on my own machine?Local server
Do many people need the same access?Remote server
Do I need to avoid installing software?Remote server
Is the source of the server trusted and maintained?Either; untrusted sources should be avoided
Does the work involve highly sensitive data?The option your security team approves
Will I need to customize behavior?A server you control
Everyday analogy

Think of getting a meal. You can cook at home with ingredients you trust, order from a restaurant that many people use, or hire a chef to prepare something special. Each has costs and benefits. Cooking at home gives control; the restaurant gives convenience; the chef gives customization. Servers offer the same set of trade-offs.

!
Trust matters more than convenience

A server is code that can read data and perform actions on your behalf. Only use servers from sources you trust, and keep them updated.

11Features That Flow the Other Way: Sampling, Roots, and Elicitation

Besides what servers offer, clients can offer abilities back to servers.

So far we have described servers offering tools, resources, and prompts. MCP also lets clients offer a few abilities to servers. These are optional, and both sides must agree to them during the handshake.

Sampling

Asking the model

A server can ask the host to have the model write something on its behalf, without the server holding its own model access. The host can review and approve such requests.

Roots

Boundaries for access

The client can tell a server which folders or locations it is allowed to work in, which keeps a file server inside a defined area.

Elicitation

Asking you a question

A server can request a missing detail from the user through the host, such as “which project should this go into?” instead of guessing.

Why these features exist

Each addresses a real need. Sampling lets simple servers use intelligence without managing their own model. Roots keep servers from wandering across your whole disk. Elicitation avoids wrong guesses by asking you directly. In all three cases, the host remains in charge: it decides what to allow, shows you what is happening, and can refuse.

Everyday analogy

Imagine a contractor working in your house. Roots are the rooms you say they may enter. Elicitation is the contractor asking, “which color do you want for this wall?” rather than painting it a random shade. Sampling is the contractor asking to borrow your designer’s opinion. You decide which requests to grant.

i
Support varies

Not every host supports every client feature. Which ones work in your Claude product is described in its documentation.

12Identity and Authorization

When a remote server touches your accounts, it must know who you are and what you allowed.

Two different questions

Security people separate two questions. Authentication asks: who are you? Authorization asks: what are you allowed to do? A remote MCP server needs answers to both. Typically, you sign in with the service, such as your document provider, and approve a list of permissions. The service then gives the connector a token, which is a kind of temporary pass that proves permission without sharing your password.

Why tokens beat passwords

A token can be limited to certain actions, can expire, and can be revoked without changing your password. If something goes wrong, you cancel that one token. A password, by contrast, opens everything and is hard to take back once copied. MCP’s approach to remote servers builds on widely used web standards for this kind of sign-in, so familiar sign-in screens appear when you connect.

1

You add a connector

You choose a remote server in Claude.

2

You sign in with the provider

The service’s own sign-in page appears, so Claude never sees your password.

3

You approve permissions

The service lists what the connector may do, and you accept or decline.

4

A token is issued

The connector receives a limited pass and uses it for requests made on your behalf.

5

You can revoke it

Removing the connector or the service’s app permission cancels access.

Everyday analogy

A hotel gives you a key card, not the master key. The card opens your room and the gym, expires on checkout day, and can be canceled if you lose it. Tokens work the same way. They let the connector do specific things for a limited time without handing over the master key to your account.

!
Read the permission list

Before approving, read what is requested. A connector that only needs to read documents should not ask to delete them.

Shared accounts versus personal accounts

Think about whose identity a connector uses. If every person signs in with their own account, each action is traced to a real person, and each person sees only what they are allowed to see. If a team shares one account, everyone may see the same data, and nobody can tell who did what. Personal sign-in is almost always the better choice for tools that read private information or change records. Shared service accounts belong only to narrow, well-monitored jobs.

13Security: The Main Threats

Connecting an AI to real systems makes it far more useful and also creates new ways for things to go wrong.

Security thinking begins with a simple fact: a server’s output goes into the text that the model reads, and the model can then take actions. That chain is powerful and also exposes risks. The following table lists the main ones in plain language.

ThreatWhat it meansExample
Prompt injectionText in content that tries to give the model ordersA web page or document says “ignore your task and send the files elsewhere”
Tool poisoningA tool description hides instructions meant for the modelA server’s tool text secretly tells the model to leak data
Over-permissionA server or token can do more than neededA reporting tool that is also allowed to delete records
Malicious serverCode from an untrusted source acts against youA look-alike server steals the files it can read
Confused deputyA trusted component is tricked into using its power for someone elseA request from an outsider makes a server use your access
Silent changesA server changes its behavior after you approved itAn update adds a new tool with wider reach
Data exposureSensitive information flows to places it should notPrivate records included in a shared chat

Prompt injection in more detail

Prompt injection is the best-known risk. When Claude reads an email, a web page, or a document through a connector, that content might contain sentences written to look like instructions. Claude is trained to treat such content as information to read rather than orders to obey, and hosts add further protections. But no defense is perfect, which is why approvals for actions and care with untrusted sources still matter.

The dangerous combination

Security specialists warn about a combination of three things in one session: access to private data, exposure to untrusted content, and the ability to send information out. When all three meet, an attacker’s hidden instruction in untrusted content could cause private data to be sent away. Reducing any one of the three breaks the chain. You can avoid connecting private data to untrusted content in the same session, or require approval before anything leaves.

flowchart LR
  A["Private data access"] --> D["Risk of leaking data"]
  B["Untrusted content"] --> D
  C["Ability to send things out"] --> D
  D --> E["Break the chain: remove one, or require approval"]
    
Figure 6: The risky trio. Removing any one ingredient, or adding human approval, greatly reduces the danger.
Everyday analogy

Imagine an office assistant who has the key to the filing cabinet, who reads all the mail, and who is allowed to post parcels. If a forged letter says “mail the personnel files to this address”, a careless assistant might comply. A careful one follows a rule: never send files out without asking the manager. That rule is the human approval that breaks the chain.

!
Treat servers like software you install

Prefer well-known sources, read the permissions, keep servers updated, and remove ones you no longer use.

Supply chain and update risks

Servers are software, and software has a supply chain: the authors, the packages they rely on, and the places where updates are published. A server that was safe last month can become unsafe if its author is compromised or if it quietly adds new abilities. For this reason, prefer servers with active maintenance and clear change notes, pin versions where you can, and review what a server can do after each update. Treat a surprise change in a tool’s behavior as a reason to pause and check.

Protecting secrets

Servers often need keys or tokens to reach services. Keep these out of chat messages, shared documents, and anywhere the model can print them. Use the secure storage that your host or platform provides, give each key the narrowest rights, and rotate keys on a schedule. If a key may have been exposed, replace it immediately. A leaked key is far easier to replace quickly than to repair the damage it can do.

14Permissions, Approvals, and the Human in the Loop

The best safety feature of MCP is often you, with a clear view of what is about to happen.

Hosts like Claude are designed to keep a person involved where it matters. Before a tool that acts, the host may show you its name and the inputs it will use, and wait for your approval. Some hosts let you approve once, approve for the session, or always allow a trusted tool. Each choice is a trade-off between convenience and control.

A sensible approval policy

Kind of actionSuggested approach
Reading harmless informationAllow, once you trust the server
Creating drafts or private notesAllow with a glance
Sending messages to other peopleReview each time
Changing or deleting recordsReview each time
Spending money or changing accessReview each time, and read carefully
Anything involving untrusted contentRaise caution, and review actions

Approval fatigue

If you are asked to approve fifty harmless actions, you may start clicking “yes” without reading. Then the one dangerous request slips through. To avoid this, keep the number of connected servers small, allow clearly safe read-only tools to run freely, and save your attention for actions that change things. Good safety design makes the important questions stand out.

Everyday analogy

A bank does not ask you to sign for every balance check, but it does ask for a signature on a large transfer. Matching the level of checking to the level of risk keeps the system both usable and safe. Approval policies for MCP tools should follow the same logic.

i
Practical tip

When you see an approval request, read the inputs, not just the tool name. The danger is usually in the details, such as the recipient or the file being changed.

15Monitoring, Logging, and Metrics

If you cannot see what a server is doing, you cannot fix it, secure it, or improve it.

Anyone who runs MCP servers, especially for a team, needs visibility. Without logs and measurements, problems appear as vague complaints such as “Claude seems slow today”. With them, you can say exactly which call failed and why.

What to log

Calls

Every tool request

Which tool, when, by which user, and whether it succeeded, without storing sensitive content unnecessarily.

Errors

Failures and their causes

Timeouts, permission denials, and unexpected responses, with enough detail to reproduce them.

Access

Sign-ins and permission changes

Who connected, what they approved, and when access was removed.

Changes

Actions that modify things

An audit trail of every write, delete, or send, to answer “who did what and when”.

What to measure

MetricWhat it tells youWarning sign
Response timeHow long tools take to answerSteady rise or sudden spikes
Error rateHow often calls failMore than a small, stable percentage
Usage by toolWhich abilities people really useTools never used, or one tool overloaded
Permission denialsWhere users hit access limitsMany denials for the same tool
Result sizeHow much text comes backHuge results that waste the model’s working room
Approval rejectionsHow often users refuse an actionA tool that is often rejected may be confusing or risky

Protect the logs themselves

Logs can contain sensitive information, such as file names or message text. Store them securely, limit who can read them, and keep them only as long as needed. Log what you must, and avoid recording secrets such as tokens and passwords.

Everyday analogy

A shop keeps a till receipt roll and a security camera. The receipts show what was sold and when, and the camera helps when something goes missing. Neither slows down the customers, and both make problems solvable. Logs and metrics play the same role for servers.

i
For ordinary users

If you only use connectors, your main tools are the approval prompts, the list of connected services in settings, and the activity records that each service keeps.

Reviewing logs with a purpose

Logs are only useful if someone reads them. Set up a small routine: check the error rate once a week, look at unusual spikes in usage, and review any permission changes. When a user reports a problem, start from the log entry for that call. Over time, patterns appear, such as one tool that fails every Monday morning or one team that never uses a connector it asked for. Those patterns guide improvements and show where training or redesign would help.

16Design Patterns for Good Servers

A well-designed server is easy for the model to understand and hard to misuse.

If you build servers, or choose between them, design quality matters a great deal. A model uses a tool by reading its name and description, so a tool that is clear to a human reader is usually clear to the model as well.

PATTERN 01 Adopt
Design tools around tasks, not endpoints

Offer a tool called “find open tickets assigned to me” instead of exposing dozens of low-level calls that the model must stitch together.

Why it helps

Fewer, clearer tools reduce mistakes, cost fewer tokens, and make approvals easier to understand.

PATTERN 02 Adopt
Write descriptions for a newcomer

State what the tool does, when to use it, what each input means, and what the result looks like. Add short examples in words.

Why it helps

The model picks the right tool and fills in inputs correctly, instead of guessing.

PATTERN 03 Adopt
Separate reading from changing

Keep read-only tools apart from tools that modify, and mark the difference clearly.

Why it helps

Hosts can allow reading freely and ask for approval only where things change.

PATTERN 04 Adopt
Return concise, helpful results and clear errors

Return only what the model needs, in a tidy form, and make error messages explain what to try next.

Why it helps

Less text means less cost and less confusion, and good errors let the model recover instead of repeating a failing call.

PATTERN 05 Adopt
Apply least privilege

Give the server only the access its job needs, and ask for the narrowest permissions during sign-in.

Why it helps

If something goes wrong, the damage stays small.

Everyday analogy

A well-organized tool drawer has clear labels, one tool for each job, and sharp tools kept apart from safe ones. A messy drawer with unlabeled gadgets invites mistakes. Server design is organizing the drawer so that even a new worker picks the right tool.

Testing a server before trusting it

Before you rely on a server, test it. Try the tools with harmless data. Ask Claude questions that you know the answer to, and see whether the results match. Try a request that should be refused, such as touching a folder outside the allowed area, and confirm that it is. Look at the approval prompts and see whether they are clear. Testing takes an hour and can reveal confusing descriptions, missing safeguards, or slow responses long before real work depends on them.

17Anti-Patterns to Avoid

Some designs and habits cause trouble again and again.

ANTI-PATTERN 01 Avoid
The wrapper that exposes everything

A server simply mirrors a large service API, turning hundreds of calls into hundreds of tools.

Why it hurts

The model is overwhelmed by choices, tool descriptions fill its working room, and risky actions are mixed in with safe ones.

Do this instead

Offer a small set of well-named tools built around real tasks.

ANTI-PATTERN 02 Avoid
The all-powerful token

A connector is given an administrator-level key because it was easier than working out what it needed.

Why it hurts

One mistake or one injected instruction can touch everything the key can reach.

Do this instead

Create a narrow, read-only credential, and widen it only when a clear need appears.

ANTI-PATTERN 03 Avoid
Installing servers on faith

People add servers found in a list or a post without checking who made them or what they can do.

Why it hurts

A local server runs as code on your machine, and a remote one can read what you connect. A bad one can leak or damage data.

Do this instead

Prefer official or well-known sources, read what the server can access, and test with harmless data first.

ANTI-PATTERN 04 Avoid
Approve-all habits

Users turn on automatic approval for every tool to avoid interruptions.

Why it hurts

The human checkpoint disappears, so a mistaken or tricked action goes through unnoticed.

Do this instead

Auto-allow only harmless read-only tools, and keep approvals for actions that change things.

ANTI-PATTERN 05 Avoid
Connecting everything at once

A user turns on twenty connectors, just in case.

Why it hurts

Many tool descriptions crowd the model’s context, similar tools confuse its choices, and the attack surface grows.

Do this instead

Enable only what you need for the current task, and turn off the rest.

Everyday analogy

An anti-pattern is like giving every visitor a master key because it saves time at the door. It works until the day it does not. Good habits cost a little effort every day and spare you a large problem once.

18Advantages, Disadvantages, and Trade-offs

MCP is powerful, but like every tool it has strengths and costs.

Advantages

  • One standard replaces many custom connections.
  • A server built once can serve many AI applications.
  • Gives Claude fresh, relevant context instead of guesses.
  • Lets Claude carry out tasks, not only talk about them.
  • Keeps people in control through approvals and permissions.
  • An open, growing ecosystem of servers.

Disadvantages

  • New security risks, such as prompt injection and over-permission.
  • Tool descriptions and results consume the model’s working room.
  • Quality of servers varies widely.
  • Extra setup and maintenance for local servers.
  • Possible approval fatigue.
  • The standard is still evolving, so details change.

Main trade-offs

ChoiceBenefitCost
Many connected serversBroad abilities in one placeCrowded context, confusion, bigger risk
Few connected serversFocused and saferLess automation
Automatic approvalsSmooth and fastLess oversight
Manual approvalsStrong controlMore interruptions
Remote serverEasy and sharedData leaves your machine
Local serverData stays near youYou maintain and trust the code
Read-only accessSafeCannot complete tasks that change things
Everyday analogy

Giving a helper more keys makes them more capable and also more risky. A good manager does not hand out all keys or none. They give the keys needed for today’s work and take them back afterward. Choosing MCP settings is the same balancing act.

i
Start small

Begin with one or two trusted, read-only connectors for a real task. Add more as you gain confidence and see the benefit.

When MCP is not the answer

MCP is not needed for every task. If you only want Claude to read a page you can paste, pasting is simpler. If you need a one-time file conversion, upload the file. If a task needs exact, repeatable behavior with no AI judgment, a normal script may be better and cheaper. MCP shines when the assistant must reach changing information or take actions across tools, and when you want that access to be reusable and controlled.

19Best Practices and Common Mistakes

A short list of habits will keep most MCP setups safe and useful.

PRACTICE 01 Adopt
What to do

Connect only what the current task needs, from sources you trust.

Why it helps

Fewer connections mean fewer risks, a cleaner context for the model, and simpler troubleshooting.

Example

For a research task, enable the document connector and leave the email and calendar connectors off.

PRACTICE 02 Adopt
What to do

Give each connector the least access that works, and prefer read-only first.

Why it helps

Even if something goes wrong, the harm is limited to what that access allows.

Example

Allow Claude to read the shared reports folder, not the entire drive.

PRACTICE 03 Adopt
What to do

Read approval prompts, especially the inputs, before you accept actions that change or send.

Why it helps

You are the last checkpoint against mistakes and tricks.

Example

Before approving a sent message, confirm the recipient and the text.

PRACTICE 04 Adopt
What to do

Review your connected servers regularly, update them, and remove those you no longer use.

Why it helps

Old connections are quiet risks, and updates fix known problems.

Example

Every quarter, open your connector list and remove anything unused.

Common mistakes in one table

MistakeResultFix
Trusting content from unknown sourcesHidden instructions reach the modelBe cautious, and review actions
Vague tool descriptionsThe model picks the wrong toolRewrite for a newcomer
Huge tool resultsCosts rise and answers get worseReturn only what is needed
No logsProblems are hard to findLog calls and errors safely
Shared tokensNo way to trace who did whatUse individual sign-ins
i
A habit that pays off

Before adding a connector, ask: what exactly do I want Claude to do with it, and what is the worst that could happen if it goes wrong?

20Troubleshooting Common Problems

Most connection problems fall into a few familiar groups.

ProblemLikely causeWhat to try
Connector does not appearNot available on your plan, or blocked by your organizationCheck the help center and ask your administrator
Sign-in failsWrong account, expired session, or missing permissionSign out and in again, and check the account used
Claude does not use the toolThe tool is turned off, or the request did not call for itEnable it, and name the service in your request
Tool calls time outSlow service or network problemsRetry, narrow the request, or check the service status
Wrong or empty resultsPermissions are too narrow, or the search was too vagueCheck access, and give clearer details
Local server fails to startMissing software or an error in its setupRead its error message and its documentation
Answers get worse with many toolsCrowded context or similar tools confusing the modelTurn off unused servers

A calm method

Work from the outside in. First, confirm that the service itself works when you use it directly. Second, check that the connector is enabled and signed in. Third, check the permissions it was given. Fourth, try a very simple request that must use the tool, such as “list my five most recent documents”. Only then look at more complex causes. This order finds simple faults quickly and avoids chasing complicated explanations for simple problems.

Everyday analogy

When a lamp does not light, you check the bulb, the switch, and the plug before calling an electrician. Connectors deserve the same patient checking. Most faults are loose plugs, not broken wiring.

i
Practical tip

Save the exact error message. It usually names the cause, and it makes any support request much faster to answer.

Asking for help well

If you need support, describe the problem in a way that makes it easy to answer. Say which product you use, which connector or server is involved, what you tried to do, what you expected, and what happened instead. Include the exact error message and the time it occurred, and remove any private details before you share a screenshot. A clear report saves days of back-and-forth, and it helps the people who maintain the connector fix the real problem.

21Real-World Scenarios

Six everyday situations show where MCP earns its place.

A project manager catching up on work

A manager connects the team’s document store and task tracker. On Monday she asks Claude to summarize last week’s meeting notes and list overdue tasks. Claude searches the notes, reads the tracker, and returns a short brief with open items grouped by owner. She approves only the step that posts a summary to the team channel.

A developer fixing a bug

A developer using a coding tool connects servers for the code host and the issue tracker. He asks Claude to read the bug report, find the related code, and propose a fix. Claude gathers the context across systems without copy-and-paste, and the developer reviews the change before it is saved.

An analyst asking questions of data

An analyst connects a read-only database server. She asks in plain words, “which regions grew fastest last quarter?” Claude builds and runs the query, then explains the results. Because the access is read-only, the analyst can explore freely without risking the data.

Give the model hands only where you are willing to watch what they do.

A support team answering customers

A support lead connects the help-article library and the ticket system. Claude finds the right article, drafts a reply with the customer’s details, and leaves the final send to a person. Response times fall, and quality stays high because a human approves each message.

A small business owner organizing files

An owner uses a local file server limited to a single folder. She asks Claude to sort invoices by month and create a summary table. Because the server is confined to one folder, the rest of her computer stays out of reach.

A security-minded team’s cautious rollout

A company allows only reviewed connectors, with read-only access at first. The platform team monitors call logs, reviews errors weekly, and adds write access to one tool at a time after testing. Adoption is slower than a free-for-all, yet nobody loses sleep over what the assistant can reach.

22Frequently Asked Questions

Q1Is MCP only for Claude?
No. MCP is an open standard introduced by Anthropic, and many other AI applications and tools support it. A server built for MCP can work with any compatible application.
Q2What is the difference between an MCP server and an API?
An API is a service’s own way for programs to talk to it, and every service has a different one. An MCP server often sits in front of such an API and presents its abilities in the common MCP format, with descriptions that an AI model can read and use.
Q3Do I need to be a programmer to use MCP?
Not to use connectors in Claude. You usually sign in and approve access. Building your own server, or setting up a local one, does require some technical skill.
Q4Can Claude change things in my accounts through MCP?
If a connector offers tools that change things and you have allowed them, yes. Hosts are designed to show you what is about to happen and ask for approval, and you can choose read-only access where possible.
Q5Is MCP safe?
It can be used safely, but safety depends on your choices. Use trusted servers, grant the least access, read approvals carefully, and be cautious with untrusted content. No setup is risk-free, so treat connectors like any software with access to your data.
Q6What is prompt injection, and does MCP make it worse?
Prompt injection is text in content that tries to give the model orders. Because MCP lets Claude read more content from more places, there is more chance of meeting such text. Claude is designed to treat content as information, and hosts add protections, but human approval for actions remains important.
Q7Why does Claude sometimes not use a connector I turned on?
The request may not call for it, the tool may be disabled, or sign-in may have expired. Naming the service in your request, and checking your connector settings, usually solves it.
Q8Do connectors use up Claude’s working room?
Tool descriptions and tool results are text that the model reads, so they do take space in the context window. Connecting many servers, or returning very large results, can crowd that space, so keep connections focused.
Q9Where can I find the latest details?
Features and names change. For Claude app connectors, see support.claude.com. For the Claude API and Claude Code, see docs.claude.com. For the standard itself, see the official MCP documentation.
Q10Should my company build its own MCP server?
Consider it when you have an internal system that people need Claude to reach and no trusted server exists. Start small and read-only, design tools around tasks, apply least privilege, add logging, and involve your security team before wider rollout.

23Summary and Key Takeaways

Key Takeaways

  • MCP is a common connector. It is an open standard that lets AI applications such as Claude reach outside tools and data in one consistent way, instead of through many custom links.
  • Three roles, three building blocks. The host holds the conversation, a client in the host keeps one connection to each server, and servers offer tools, resources, and prompts.
  • Every connection follows an orderly path. Connect, negotiate abilities, discover what exists, work, and close. The host sits in the middle of every request and can ask for your approval.
  • Local and remote servers differ. Local servers run on your machine and suit local files. Remote servers run elsewhere, serve many users, and rely on sign-in with limited tokens.
  • Security needs care. Watch for prompt injection, over-permission, and untrusted servers, and break the risky trio of private data, untrusted content, and outbound actions.
  • Least privilege and human approval win. Grant the narrowest access, start read-only, read approval prompts, and keep logs so you can see what happened.
  • Start small and keep learning. Connect only what you need, review often, and check support.claude.com, docs.claude.com, and the official MCP site for current details.