MCP Servers
Model Context Protocol (MCP) is an open standard for connecting AI models to external data sources and tools. Instead of every AI tool reinventing integrations, MCP provides a single protocol that any client โ Copilot, Cursor, Cline, Claude Code โ can use to talk to any server: a database, the GitHub API, your file system, a browser.
What Is MCP?โ
Introduced by Anthropic in November 2024 and quickly adopted across the ecosystem, MCP standardizes how AI models access context and invoke tools.
Architecture:
- Host โ the AI client (e.g., VS Code with Copilot, Cursor, Claude Desktop). It manages connections to servers and exposes their capabilities to the model.
- Server โ a local or remote process that exposes data or functions. You run one server per integration.
- Client โ the connection layer inside the host that handles the protocol.
A server can provide three things:
| Type | Description |
|---|---|
| Resources | Structured data the model can read โ file contents, database records, API responses |
| Tools | Callable functions the model can invoke โ run a SQL query, create a GitHub issue, fetch a URL |
| Prompts | Reusable prompt templates the host surfaces to the user |
Key Reference Serversโ
Anthropic and the community maintain a curated set of reference servers in the modelcontextprotocol/servers repository. The most useful ones for web development teams:
| Server | What it does |
|---|---|
filesystem | Read and write local files within a specified directory |
github | Browse repos, read and create issues and PRs, search code |
postgres | Run read-only SQL queries against a PostgreSQL database |
sqlite | Same for SQLite databases |
fetch | Make HTTP requests to any URL โ useful for reading docs or live APIs |
brave-search | Web search via Brave's API |
memory | Persistent key-value memory across sessions |
puppeteer | Browser automation โ navigate, screenshot, scrape |
playwright | Browser automation with better cross-browser support |
chrome-devtools | Connect to a running Chrome instance for inspection and automation via DevTools Protocol |
figma | Read Figma files and components โ useful for design-to-code workflows |
The github + fetch + filesystem trio covers the majority of useful AI-assisted developer workflows without requiring any external service accounts beyond a GitHub token.
MDN Web Docs MCP Serverโ
Mozilla maintains a remote HTTP MCP server at https://mcp.mdn.mozilla.net/ that gives AI assistants direct access to MDN documentation and browser compatibility data. Unlike most MCP servers, it requires no local installation โ just an HTTP connection.
It exposes three tools:
| Tool | What it does |
|---|---|
mcp_mdn_search | Search MDN by keyword; returns summaries, doc paths, and compat-key values |
mcp_mdn_get-doc | Fetch full MDN page content as Markdown using a path from search results |
mcp_mdn_get-compat | Retrieve browser compatibility data by compat-key from search results |
This server is already configured in this repository's .vscode/mcp.json:
{
"servers": {
"mdn": {
"type": "http",
"url": "https://mcp.mdn.mozilla.net/"
}
}
}
Browser compatibility is where generic AI answers most often go wrong. The mcp_mdn_get-compat tool provides exact, up-to-date support tables instead of relying on a model's stale training data.
See MDN's MCP Server Brings Authoritative Web Docs Into Your Editor for setup instructions covering VS Code, Claude Code, Cursor, and Claude Desktop, plus MDN's benchmark results.
When an AI agent has access to git or the github MCP server, it can commit, push, create PRs, and โ if given write permissions โ overwrite or delete branches. Always review exactly what repository permissions you have granted and ensure the agent operates with the principle of least privilege. Never give an agent push access to a main or protected branch.
For a broader catalog, see mcp.so and Smithery โ community registries of published MCP servers.
Setting Up MCP in VS Code (Copilot)โ
Requires GitHub Copilot with agent mode enabled.
Configure servers in .vscode/mcp.json at the workspace root. Commit this file so the whole team shares the same server configuration. Put secret values like tokens in your shell environment (not in the file).
{
"servers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "${workspaceFolder}"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${env:GITHUB_TOKEN}"
}
}
}
}
Never commit real tokens or secrets to .vscode/mcp.json. Use ${env:VARIABLE_NAME} to reference values from your shell environment, or add secret values to a .env file that is gitignored.
To activate: open Copilot Chat, switch to Agent mode (the dropdown in the chat input), and the configured servers are available as tools automatically.
Reference: VS Code MCP documentation
Setting Up MCP in Cursorโ
Configure servers in Cursor Settings โ MCP tab, or via a mcp.json file in the project root. The JSON schema is the same as the VS Code format.
{
"servers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "."]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_TOKEN": "${env:GITHUB_TOKEN}"
}
}
}
}
Once configured, MCP tools appear in the @ mention menu in Cursor Chat and Composer.
Reference: Cursor MCP documentation
MCP Specification 2026-07-28 Release Candidateโ
The MCP specification has a release candidate locked May 21, 2026, with the stable release scheduled for July 28, 2026. The changes are significant for server implementers and integrators.
The RC changes below will be finalized July 28, 2026. The current (2025-11-25) specification remains active in all shipping SDKs until then.
Stateless core โ the largest change. The initialize/initialized handshake and Mcp-Session-Id headers are removed. Protocol version, client info, and capabilities now travel in a _meta field on every request, allowing any server instance to handle any request without sticky routing or shared session stores.
New capabilities:
- MCP Apps โ servers can deliver interactive HTML/JS interfaces rendered in sandboxed iframes inside host environments (Claude Desktop, VS Code Copilot, Microsoft 365 Copilot). See MCP Apps.
- Tasks extension โ a handle-based pattern for long-running work:
tools/callreturns a task handle, thentasks/get/tasks/update/tasks/cancelmanage the lifecycle. - Observability headers โ
Mcp-MethodandMcp-NameHTTP headers for load-balancer routing without parsing JSON-RPC; W3C Trace Context (traceparent,tracestate) for distributed tracing.
Deprecated (12-month sunset, removal no earlier than July 28, 2027):
- Roots โ replaced by tool parameters, resource URIs, or server configuration.
- Sampling โ replaced by direct LLM provider API calls.
- Logging โ replaced by stderr (stdio transports) or OpenTelemetry (structured observability).
See MCP Goes Stateless: Inside the 2026-07-28 Specification Release Candidate for the full breakdown.
Resourcesโ
- MCP official specification โ the spec and introduction from Anthropic
- MCP reference servers โ the official repository; the README lists all available servers
- VS Code MCP docs
- Cursor MCP docs
- Burke Holland's YouTube channel โ covers MCP setup in VS Code and Copilot as a Microsoft Developer Advocate; browse for MCP-specific videos
- VS Code YouTube channel โ search "MCP" for setup walkthroughs and demos
- awesome-copilot โ Tools โ curated directory of MCP-compatible tools and integrations for Copilot, complementing the mcp.so and Smithery registries mentioned above