Skip to content

Best MCP Servers for VS Code and GitHub Copilot in 2026

VS Code added MCP support mid-2025 via GitHub Copilot. The setup is different from Claude Desktop and Cursor. Here are the 10 best servers with exact configs.

March 27, 2026
5 min read

VS Code became the last major editor to ship MCP support — and in some ways, it did it best. Since going GA in VS Code 1.102 (July 2025), the implementation has matured into the most enterprise-ready MCP client available: built-in sandboxing, OAuth authentication, Settings Sync across devices, and a curated MCP marketplace in the Extensions panel.

But the setup is different from Cursor or Claude Desktop. VS Code uses mcp.json (not settings.json), the root key is "servers" (not "mcpServers"), and MCP tools only work in Copilot's Agent mode. Get any of these wrong and your servers silently fail to load.

This guide covers how MCP works in VS Code, the 10 servers worth installing, and the VS Code-specific features that other clients lack.

How MCP Works in VS Code

MCP in VS Code runs through GitHub Copilot. Servers register as tools that Copilot's Agent mode can call during conversations. This is the key difference from Cursor and Claude Code, where MCP tools are available in all chat modes.

Three things to know upfront:

  1. Agent mode is required. MCP tools are invisible in Ask or Edit mode. Open Copilot Chat, click the mode dropdown, select "Agent." Update to VS Code 1.99+ if you do not see it.

  2. Config lives in mcp.json. Open the Command Palette (Cmd+Shift+P) and run MCP: Open User Configuration. For per-project configs, create .vscode/mcp.json in your workspace root.

  3. The root key is "servers", not "mcpServers". Cursor and Claude Desktop use "mcpServers". Copy-pasting a Cursor config without changing this key is the number-one setup mistake.

{
  "servers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "@package/mcp-server"],
      "env": { "API_KEY": "your_key" }
    }
  }
}

Transports: stdio (local subprocess — most servers), HTTP (remote endpoints like GitHub MCP), and SSE (streaming remote servers). Workspace vs. user config: Put team servers (Context7, Playwright) in .vscode/mcp.json and commit it. Put servers with personal API keys in your user config, which syncs across devices via Settings Sync.

Setup: Your First MCP Server in 3 Minutes

Prerequisites: VS Code 1.99+, Node.js 18+, GitHub Copilot subscription (free tier works).

Step 1: Command Palette → MCP: Open User Configuration.

Step 2: Add Context7 (no API key needed):

{
  "servers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"]
    }
  }
}

Step 3: Save. VS Code prompts you to start the server. Click Start (or run MCP: List Servers to verify).

Step 4: Open Copilot Chat in Agent mode and ask a question. Copilot shows a confirmation dialog before calling any MCP tool. Click Allow.

Alternative: Open the Extensions panel (Cmd+Shift+X), search @mcp, and install servers from VS Code's curated marketplace. VS Code writes the config entry for you.

10 Best MCP Servers for VS Code and Copilot

Tier 1: Install These First

1. GitHub MCP Server

Search repos, manage issues, create PRs, review code — authenticated via Copilot's built-in OAuth. No token, no local process. The tightest integration in the VS Code MCP ecosystem.

"github": {
  "url": "https://api.githubcopilot.com/mcp/"
}

This is the only MCP server that works as a remote HTTP endpoint with zero-config auth.

2. Context7 MCP

Injects current, version-specific documentation into the prompt. Copilot writes Next.js 15 code using actual Next.js 15 docs — not stale patterns from its training data. No API key.

"context7": {
  "command": "npx",
  "args": ["-y", "@upstash/context7-mcp"]
}

3. Playwright MCP

Browser automation and E2E testing from Copilot chat. "Write a test for the login flow" — Copilot generates it, Playwright runs it, results return inline. Microsoft-maintained, so VS Code integration is polished.

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

Tier 2: Add Based on Your Stack

4. Filesystem MCP

Controlled read/write access to files. Scoped to directories you allow — pair with VS Code's built-in sandboxing (macOS/Linux) for defense in depth.

"filesystem": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-filesystem", "${workspaceFolder}"],
  "sandboxEnabled": true,
  "sandbox": { "filesystem": { "allowWrite": ["${workspaceFolder}"] } }
}

5. Sentry MCP

Pulls errors, stack traces, and performance data from Sentry into Copilot. Uses VS Code's ${input:} syntax to prompt for the token at startup — secrets stay out of config files.

"sentry": {
  "command": "npx",
  "args": ["-y", "@sentry/mcp-server"],
  "env": { "SENTRY_ACCESS_TOKEN": "${input:sentryToken}" }
}

Define the input variable alongside the server:

{
  "inputs": [{ "type": "promptString", "id": "sentryToken", "description": "Sentry API Token", "password": true }],
  "servers": { ... }
}

6. Supabase MCP

Query your database, explore schemas, run SQL, manage migrations. Essential for any Supabase backend.

"supabase": {
  "command": "npx",
  "args": ["-y", "@supabase/mcp-server-supabase@latest", "--project-ref", "your-project-ref"],
  "env": { "SUPABASE_ACCESS_TOKEN": "${input:supabaseToken}" }
}

7. Firecrawl MCP

Scrapes any URL into clean Markdown — documentation, reference material, competitor pages. Handles JavaScript-rendered sites and batch processing.

"firecrawl": {
  "command": "npx",
  "args": ["-y", "firecrawl-mcp"],
  "env": { "FIRECRAWL_API_KEY": "${input:firecrawlKey}" }
}

8. Postgres MCP

Connects Copilot to any PostgreSQL database. Natural language to SQL, schema exploration, data analysis. Never commit connection strings — use ${input:} or "envFile".

"postgres": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-postgres", "${input:pgConnectionString}"]
}

9. Linear MCP

Issue tracking from Copilot. Create, update, and search Linear issues inline. "Create a bug ticket for the auth regression" — Copilot handles labels, projects, and assignment.

"linear": {
  "command": "npx",
  "args": ["-y", "@mcp-devtools/linear"],
  "env": { "LINEAR_API_KEY": "${input:linearKey}" }
}

10. Memory MCP

Persistent memory across sessions. Stores architectural decisions, conventions, and project context in a local file. Commit it to source control so the team shares context.

"memory": {
  "command": "npx",
  "args": ["-y", "@modelcontextprotocol/server-memory"],
  "env": { "MEMORY_FILE_PATH": "${workspaceFolder}/.copilot-memory.json" }
}

VS Code-Specific Tips

Input variables keep secrets safe. The ${input:variableId} syntax prompts for values at server startup. Set "password": true to mask input. This feature is exclusive to VS Code — Cursor and Claude Desktop have no equivalent.

Settings Sync covers MCP. User-level configs sync across devices automatically. Enable/disable state is stored separately, so toggling a server off on your laptop does not affect your desktop.

Sandboxing restricts untrusted servers. VS Code is the only MCP client with built-in sandboxing (macOS/Linux). Restrict filesystem paths and network domains per server via the "sandbox" config key.

Dev Containers work too. Define MCP servers in devcontainer.json under customizations.vscode.mcp. Servers start automatically when the container launches.

Quick commands: MCP: List Servers (status check), MCP: Add Server (guided setup), Extensions panel @mcp (marketplace), code --add-mcp '{...}' (CLI).

VS Code MCP vs. Cursor vs. Claude Code

FeatureVS Code + CopilotCursorClaude Code
Config filemcp.json ("servers")mcp.json ("mcpServers")~/.claude.json ("mcpServers")
Transportsstdio, HTTP, SSEstdio, SSE, Streamable HTTPstdio, SSE
AuthOAuth + input variablesAPI keys onlyAPI keys, OAuth via CLI
SandboxingBuilt-in (macOS/Linux)NoneFilesystem permissions
Settings SyncYesNoNo
MCP marketplaceYesCurated listNone
Tool limitNo hard limit40 toolsNo hard limit
Agent mode requiredYesNo (all modes)No (always on)
Enterprise policiesIT admin toggleNoneNone

Choose VS Code if you use GitHub Copilot, need Settings Sync and shared workspace configs, or require enterprise policy controls. The GitHub MCP Server's zero-config OAuth is unmatched.

Choose Cursor if you want MCP in every chat mode without switching to Agent, or prefer one-click setup. Full Cursor MCP guide.

Choose Claude Code if you work in the terminal and need deep filesystem access without sandboxing. Full Claude Code MCP guide.

Bottom Line

VS Code's MCP implementation prioritizes security and team workflows. Sandboxing, input variables, Settings Sync, and enterprise policies make it the strongest choice for professional teams on GitHub Copilot.

Start with GitHub MCP Server (zero config), Context7 (no API key), and Playwright (Microsoft-maintained). Add Supabase, Sentry, or Linear as your stack demands. For a broader overview, see our complete guide to the best MCP servers in 2026.

mcpvscodegithub-copilotmcp-serversdeveloper-tools
Share this article