Blog
GuideSeptember 2, 20269 min read

What Is an MCP Server? A Developer's Guide With Examples

An MCP server explained in plain English: what it does, how tools work, and how to connect a real one to Claude in under 3 minutes, with an example.

An MCP server is a program that exposes a system, such as a database, an API, a file tree or a browser, to an AI application as a set of named tools it can call. It speaks the Model Context Protocol, an open standard released by Anthropic in November 2024 and now supported by Claude, ChatGPT, Cursor and most AI coding tools.

The AI client starts or connects to the server, asks what tools it offers, and gets a list with names, descriptions and parameter schemas. When the model decides it needs a tool, the client sends a call, the server performs the real action and returns the result, and the model continues with actual data.

You rarely write one yourself. Thousands already exist, one for GitHub, one for Slack, one for Postgres, one for browser automation, and you connect your AI client to the ones you need. This guide covers what happens under the hood, shows how an MCP server differs from an API or a plugin, and walks through connecting a real one in a few minutes.

Servers, clients and tools

MCP splits into two roles. The client is the AI application you use: Claude Desktop, Claude Code, Cursor, Windsurf, VS Code. The server is the program that exposes a capability. A GitHub MCP server exposes tools like "list open pull requests" or "create an issue". A filesystem MCP server exposes tools like "read this file" or "list this directory".

  You                 AI client                    MCP server               Real system
   |  "open an issue"   |                              |                        |
   |------------------->|  tools/list                  |                        |
   |                    |----------------------------->|                        |
   |                    |  [create_issue, get_file...] |                        |
   |                    |<-----------------------------|                        |
   |                    |  tools/call create_issue     |                        |
   |                    |----------------------------->|  POST /repos/.../issues|
   |                    |                              |----------------------->|
   |                    |  { number: 482, url: ... }   |                        |
   |  "Opened #482"     |<-----------------------------|                        |
   |<-------------------|                              |                        |

When you connect a client to a server, the client asks the server what tools it has. From that point on, when you ask your AI agent to do something a tool covers, it calls the tool instead of faking the action through text generation.

Take a concrete example. browser_navigate is a tool exposed by the Playwright MCP server. It takes one parameter, a URL, and loads that page in a real browser. The agent is not describing what a browser might do. It is calling a function that opens Chromium and returns the resulting page state.

This changes what is reliable. An AI model asked to "check if this website is up" without tools can only guess from training data. The same model with an MCP server connected navigates to the URL, reads the actual response, and tells you the result. The gap between "the model describes an action" and "the model performs an action" is why MCP exists.

MCP server vs API vs plugin

The question behind "what is an MCP server" is usually "how is this different from what we had". The short version is simple: an API is for programs, a plugin is for one product, an MCP server is for any AI client.

MCP server REST API Plugin (ChatGPT-style, IDE extension)
Who calls it Any MCP client (Claude, Cursor, ChatGPT, VS Code) Code you write One specific product
How the caller learns what it can do Asks the server at connect time (tools/list) Reads docs, writes integration code Manifest fixed to that product's format
Built once, works in Every MCP client Anything, with custom code each time That product only
Typical transport stdio on your machine, or HTTP HTTP Product-specific
Who runs it You, locally, or a vendor remotely The API provider The product
Example Playwright MCP, GitHub MCP GitHub REST API A VS Code extension

An MCP server often wraps a REST API. The value it adds is the self-description: the model discovers the tools and their schemas at runtime, so no one has to write glue code for each client.

Install a real MCP server in 3 minutes

The fastest way to understand MCP is to connect one. Here is the Playwright MCP server, Microsoft's official browser automation server, added to Claude Code:

claude mcp add playwright npx @playwright/mcp@latest

For Claude Desktop, Cursor, Windsurf, VS Code or Zed, add this to your client's MCP configuration file instead:

{
  "mcpServers": {
    "playwright": {
      "command": "npx",
      "args": ["@playwright/mcp@latest"]
    }
  }
}

Restart your client, and it lists a new set of browser tools: browser_navigate, browser_click, browser_fill_form, browser_console_messages, browser_network_requests, and more. Ask it to open a URL and describe what is on the page. That request now runs through a real browser session instead of a guess. See the full Playwright MCP install guide for the complete tool list and client compatibility.

That three-minute loop, install a server, restart the client, watch new tools appear, is the same for every MCP server you connect. Only the tools change.

Build one in 10 minutes

If the system you want to connect has no server yet, writing one is shorter than most people expect. In Python, a tool is a decorated function:

from fastmcp import FastMCP

mcp = FastMCP("notes")

@mcp.tool
def search_notes(query: str) -> list[str]:
    """Return the titles of notes containing the query."""
    ...

The docstring becomes the description the model reads and the type hints become the schema. The FastMCP tutorial builds a complete server with tools, resources and prompts, tests it, and publishes it so anyone can run it with one command.

Why this took over so fast

Before MCP, every AI product built its own plugin format. A tool vendor wanting to work with Claude, ChatGPT and Cursor had to build and maintain three separate integrations, then repeat that for every new client. MCP replaced that with one protocol any client can speak and any server can implement once.

Anthropic released MCP as open source in November 2024. OpenAI adopted it for ChatGPT in March 2025, and Google and Microsoft followed. It is now governed by the Linux Foundation rather than owned by a single vendor, which helps explain why competitors adopted it instead of building a rival standard.

The catch: quality varies a lot

Anyone can publish an MCP server. That openness made the ecosystem grow this fast, and it also creates the main risk. A server you connect to your AI client runs with real permissions on real data. Some are maintained by the vendor whose product they wrap, tested continuously, and updated within days of an API change. Others are weekend projects, abandoned after the first release, with no indication of whether they still work.

This is what MCPVault exists to fix. Every one of the 18,000+ servers in the vault carries a quality grade based on maintenance recency, adoption, license clarity and documentation, and a subset carry a verified badge, meaning MCPVault started the server in a sandbox, completed a live MCP handshake, and re-tests it weekly. See how grading works and what verification confirms.

If you are choosing between three different Postgres MCP servers, the grade and verification status tell you which one is safer to point at real data and which one has not been touched in a year.

Browse the vault to find a graded MCP server for whatever system you are trying to connect.

Frequently Asked Questions

What is an MCP server, in one sentence?

An MCP server is a program that gives an AI application a set of callable tools for one system, using the open Model Context Protocol, so the model can act on real data instead of guessing.

What does "MCP server" mean, and what does MCP stand for?

MCP stands for Model Context Protocol. An MCP server is the side of that protocol that provides tools, resources and prompts; the AI application that uses them is the MCP client.

Do I need to write code to use an MCP server?

No, for most uses. Installing an existing MCP server is a config change or a one-line command, shown above for Playwright MCP. Writing your own is only necessary when no server exists for the system you want to connect, and the FastMCP tutorial linked above takes about ten minutes.

Is an MCP server the same as a plugin?

No. A plugin is built against one product's format. An MCP server implements an open protocol, so the same server works with Claude, ChatGPT, Cursor and any other MCP client without changes.

Can one AI client connect to multiple MCP servers at once?

Yes, and that is the normal setup. A developer might run a GitHub server, a Postgres server and a Playwright server at the same time, and the agent picks whichever tool the task calls for. Each enabled server adds its tool descriptions to every request, so most people keep three to six on per project.

Are MCP servers safe to connect to my data?

It depends on the server. Check its maintenance activity, the permissions it asks for, and whether it carries a grade or a verified badge before connecting it to anything sensitive. Prefer official, vendor-maintained servers where one exists, and use read-only modes for databases.

What is the difference between a tool, a resource and a prompt in MCP?

Tools are actions the model can invoke, like running a query. Resources are data the client can read, like a file or a schema. Prompts are reusable templates the server provides. Most servers today are primarily tool providers. See the full protocol breakdown.


Your server in the vault.

If you built an MCP server, claim the listing and get it in front of developers who are actively looking. Free to claim. Verification is free during early access and earns a do-follow link to your project.

Claim your listing or submit a server if it is not indexed yet.

MCP ServerModel Context ProtocolHow-ToClaude Desktop