Skip to content
Advertisement

Best MCP Servers for Claude Code and Claude Desktop

SumitSumit··13 min read
Claude and Model Context Protocol logos above the words Best MCP servers for Claude

MCP (Model Context Protocol) servers are how Claude reaches outside the chat: a browser, your database, GitHub, your design files, your error tracker. Claude Code on its own can read and edit files and run commands. With the right MCP servers it can check its UI in a real browser, read the current docs for your framework, open a pull request and look up the error that just hit production.

We run this site's CMS through an MCP server, and use Claude Code with MCP every day. This list is the servers we would install first, grouped by job. For each one you get the install command, what it can touch, and a note on how much context it uses. Everything was checked against each project's repo and docs on September 26, 2026.

Quick picks
  • Start with three: Context7 (current docs), Playwright or Chrome DevTools (browser), and the official GitHub server.
  • Prefer remote servers with OAuth (GitHub, Supabase, Sentry, Linear, Notion, Figma): no local install, no API key in a file.
  • Many old reference servers (GitHub, Postgres, Puppeteer, Brave, SQLite) are archived. Use the vendors' official servers instead.
  • Claude Code now loads MCP tools on demand, so idle servers cost little. Claude Desktop still loads everything.
  • Use read-only modes wherever a server offers one, and never connect an agent to a production database.

How to add an MCP server to Claude

Claude Code uses one command. A local (stdio) server runs a program on your machine; a remote (HTTP) server is a URL:

# local server
claude mcp add playwright -- npx @playwright/mcp@latest

# remote server, then sign in with /mcp
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp

claude mcp list            # see what is configured

Add --scope user to make a server available in every project, or --scope project to write it to a .mcp.json file in the repo so your team gets it too. The default scope is just you, in the current project. Log in to OAuth servers by typing /mcp inside Claude Code.

Claude Desktop has two routes. For remote servers, go to Settings, Connectors, Add custom connector, and paste the URL (custom connectors need a paid plan). For local servers, open Settings, Developer, Edit Config and add them to claude_desktop_config.json:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/Projects"]
    }
  }
}

Desktop also installs MCP Bundles (.mcpb files, previously called .dxt) with a double-click. If you already set servers up in Desktop, claude mcp add-from-claude-desktop copies them into Claude Code (macOS and WSL). Using Cursor, Codex, Gemini CLI or opencode instead? See how to add MCP servers to other coding agents.

What MCP costs in context

  • Claude Code turns on tool search by default: only tool names load at start, and full tool definitions load when Claude needs them. Ten idle servers no longer eat your context.
  • Tool search falls back to loading everything if you point Claude Code at a third-party gateway through ANTHROPIC_BASE_URL. Watch your server count if you use Claude Code with free models.
  • A tool's output is capped at 25,000 tokens by default. Raise it with MAX_MCP_OUTPUT_TOKENS=50000 if a server keeps getting cut off.
  • Type /context to see what is using space, and /mcp to switch off servers you are not using.

Browser automation

01 / BROWSER

Playwright MCP

Official, Microsoft

Lets Claude open pages, click, type and read the page through the accessibility tree rather than screenshots, which is faster and cheaper. The default set is about 24 tools; extras for tabs, storage, network, PDF and devtools are opt-in with --caps.

claude mcp add playwright -- npx @playwright/mcp@latest

Context tip: Microsoft's own README says coding agents may be better served by the Playwright CLI plus a skill, which uses fewer tokens. Try the MCP first; switch if context gets tight.

Replaces
Clicking through your app by hand
Runs on
Node.js
Difficulty
Easy
Licence
Apache-2.0 (open)
Skip if
Your project has no web UI
02 / BROWSER

Chrome DevTools MCP

Official, Google

From Google's Chrome DevTools team. Beyond browsing, it records performance traces, reads network and console, runs Lighthouse and takes heap snapshots. This is the one to reach for when Claude needs to debug a slow page or a layout shift. It has around 65 tools, so start it with --slim if you only need to browse.

claude mcp add chrome-devtools --scope user -- npx chrome-devtools-mcp@latest
Replaces
Opening DevTools yourself
Runs on
Node.js, Chrome
Difficulty
Easy
Licence
Apache-2.0 (open)
Skip if
You only need basic clicking (use Playwright)
03 / DOCS

Context7

Official, Upstash

Fetches current, version-specific documentation for thousands of libraries on demand. Only two tools, so it is almost free in context, and it fixes the most common AI coding failure: code written for last year's version of a framework. A free API key raises the rate limit.

npx ctx7 setup --claude

Or install it as a plugin: /plugin install context7@claude-plugins-official.

Replaces
Claude guessing at an old API
Runs on
Any
Difficulty
Easy
Licence
MIT (open)
Skip if
You work on one stable, well-known stack
04 / FETCH

Fetch

Reference server

One of the seven reference servers still maintained by the MCP project. It fetches a URL and converts it to Markdown. Most useful in Claude Desktop, since Claude Code already has web fetch built in. Its README warns it can reach local and internal IP addresses, so be careful on a work network.

claude mcp add fetch -- uvx mcp-server-fetch
Replaces
Pasting web pages into chat
Runs on
Python (uv)
Difficulty
Easy
Licence
MIT (open)
Skip if
You use Claude Code (it has built-in web fetch)

Databases

06 / SQL

DBHub

Bytebase

One server for Postgres, MySQL, MariaDB, SQL Server, Oracle and SQLite, with just two tools (run SQL, search objects), a read-only mode and row limits. Anthropic uses it as the example in the Claude Code docs. This replaces the old reference Postgres and SQLite servers, which are archived.

claude mcp add db -- npx -y @bytebase/dbhub --dsn "postgresql://user:pass@localhost:5432/app"
Replaces
The archived Postgres and SQLite servers
Runs on
Node.js
Difficulty
Easy
Licence
MIT (open)
Skip if
You use Supabase or Neon (use theirs)
07 / BACKEND

Supabase

Official, remote

Query tables, apply migrations, read logs and search Supabase docs. Remote, with OAuth. Lock it down with URL options: read_only=true, project_ref= to pin one project, and features= to limit tools. Supabase's own docs warn about prompt injection and say not to connect it to production.

claude mcp add --scope project --transport http supabase "https://mcp.supabase.com/mcp?read_only=true"
Replaces
The Supabase dashboard for routine work
Runs on
Supabase account
Difficulty
Easy
Licence
Apache-2.0 (open)
Skip if
You do not use Supabase
08 / NOSQL

MongoDB, Neon and PlanetScale

Official, vendors
  • MongoDB: npx -y mongodb-mcp-server@latest setup. Use --readOnly; needs Node 22.13 or later.
  • Neon: remote at https://mcp.neon.tech/mcp, add ?readonly=true. Neon says not to use it in production. The old npm package is deprecated.
  • PlanetScale: claude mcp add --transport http planetscale https://mcp.pscale.dev/mcp/planetscale. Reads go to replicas, and DELETE without WHERE is blocked.
Replaces
Database consoles
Runs on
Account with the vendor
Difficulty
Easy
Licence
Apache-2.0 / MIT
Skip if
Not your database

Git and GitHub

09 / GITHUB

GitHub MCP Server

Official, GitHub

Read and manage repos, issues, pull requests, Actions runs and code scanning alerts. The remote version needs no install:

claude mcp add --transport http github https://api.githubcopilot.com/mcp/ \
  --header "Authorization: Bearer YOUR_GITHUB_PAT"

Context tip: across all toolsets it has 90+ tools. The default set is repos, issues, pull requests, users and context. Add /readonly to the URL, or use a toolset-specific URL, to keep it small. Honestly, for most work the gh CLI (which Claude Code can already run) is lighter. The old @modelcontextprotocol/server-github package is deprecated.

Replaces
Switching to github.com for issues and PRs
Runs on
GitHub token
Difficulty
Easy
Licence
MIT (open)
Skip if
The gh CLI already does what you need

Design

10 / DESIGN

Figma MCP

Official, Figma

Gives Claude the actual layout, components, variables and styles of a Figma frame, so generated UI matches the design instead of approximating a screenshot. The remote server works on every plan; the desktop server needs a paid Dev or Full seat. Writing back to the canvas is in beta.

claude plugin install figma@claude-plugins-official
Replaces
Describing designs in words
Runs on
Any Figma plan (remote)
Difficulty
Easy
Licence
Figma
Skip if
Your team does not use Figma

Ops, analytics and project tools

11 / ERRORS

Sentry

Official, remote

Claude can read issues, stack traces and releases, and ask Sentry's Seer for a root cause. The loop "look at the new error, find the bug, fix it" becomes one prompt. Self-hosted Sentry works through the local npm server.

claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
Replaces
Copying stack traces into chat
Runs on
Sentry account
Difficulty
Easy
Licence
FSL (source available)
Skip if
You do not use Sentry
12 / CLOUD

Cloudflare

Official, remote

Cloudflare's "Code Mode" server covers about 2,500 API endpoints while using around 1,000 tokens of context, because Claude writes small code snippets against the API instead of loading a tool per endpoint. That makes it one of the most context-efficient large servers available. Product-specific servers (Workers, DNS, logs, browser rendering) also exist.

claude mcp add --transport http cloudflare https://mcp.cloudflare.com/mcp
Replaces
The Cloudflare dashboard
Runs on
Cloudflare account
Difficulty
Easy
Licence
Apache-2.0 (open)
Skip if
You do not use Cloudflare
13 / TASKS

Linear and Notion

Official, remote

Both are remote with OAuth. Claude reads the ticket or spec, does the work, then updates the issue.

claude mcp add --transport http linear https://mcp.linear.app/mcp
claude mcp add --transport http notion https://mcp.notion.com/mcp

Linear offers a /mcp/readonly endpoint. Notion's old local server is no longer maintained; use the remote one.

Replaces
Copying tickets and specs into chat
Runs on
Account with the vendor
Difficulty
Easy
Licence
Vendor
Skip if
Not your tools
14 / PAYMENTS

Stripe and Vercel

Official, remote

Stripe (https://mcp.stripe.com) can search docs, create test products and look up payments. Vercel (https://mcp.vercel.com, public beta) can read deployments and logs, and can now also deploy and make purchases. Both are powerful. Use test mode and a restricted account.

Replaces
Dashboards for test data and deploys
Runs on
Account with the vendor
Difficulty
Medium
Licence
MIT / Vendor
Skip if
You are uneasy giving an agent billing or deploy access

Files and memory (mainly for Claude Desktop)

15 / FILES

Filesystem

Reference server

Lets Claude Desktop read and write files, limited to the folders you list. This is what turns the Desktop app into a basic local assistant. Claude Code does not need it.

Replaces
Uploading files to chat
Runs on
Node.js
Difficulty
Easy
Licence
MIT (open)
Skip if
You use Claude Code (it has file tools built in)
16 / MEMORY

Memory

Reference server

A simple knowledge graph Claude can write facts into and recall later. Useful in Desktop for long-running personal projects. In Claude Code, CLAUDE.md files and auto memory usually do this job better.

Replaces
Repeating yourself every chat
Runs on
Node.js
Difficulty
Easy
Licence
MIT (open)
Skip if
Claude's built-in memory is enough
17 / CONTAINERS

Docker MCP Toolkit

Official, Docker

Docker's gateway runs each MCP server in its own container, with managed secrets, from a catalogue in Docker Desktop. One command connects the whole set to Claude Code: docker mcp client connect claude-code --global. It is the tidiest way to run many servers without Node and Python installs everywhere.

Replaces
Installing each MCP server by hand
Runs on
Docker Desktop
Difficulty
Medium
Licence
MIT (open)
Skip if
You only run two or three servers
18 / HOME

Home Assistant

Official, built in

Home Assistant ships an MCP server built in. Claude can read sensors and control only the devices you have exposed to Assist. More in our MCP servers for home lab guide.

Replaces
The Home Assistant app for quick checks
Runs on
Home Assistant 2025.2+
Difficulty
Medium
Licence
Apache-2.0 (open)
Skip if
No smart home

Archived servers to avoid

A lot of older guides still recommend these. They were moved to the archived servers-archived repo in 2025, and their npm packages are marked deprecated:

Old serverUse instead
server-githubGitHub's official github-mcp-server
server-postgres, server-sqliteDBHub, Supabase, Neon or Postgres MCP Pro
server-puppeteerPlaywright MCP or Chrome DevTools MCP
server-brave-searchBrave's @brave/brave-search-mcp-server
server-sentry, server-slack, server-gdriveThe vendors' own remote servers

Also note: SSE transport is deprecated in Claude Code. Use --transport http.

Staying safe with MCP

  • Install only official vendor servers, or community ones you have read
  • Turn on read-only mode wherever a server offers it
  • Never connect an agent to a production database or live payment account
  • Prefer OAuth over API keys pasted into config files
  • Do not commit .mcp.json with secrets; use ${VAR} references instead
  • Remember that anything a server returns (a web page, a ticket, a row) can contain prompt injection

Using other agents too? Our guide on how to add MCP servers to Cursor, Codex, Gemini CLI and opencode has copy-paste config for each. For workflow add-ons that are not MCP, see the best Claude Code skills and plugins.

What is an MCP server in Claude?
An MCP server is a small program or web service that gives Claude new tools through the Model Context Protocol, for example controlling a browser, querying a database or reading GitHub issues. Claude Code and Claude Desktop can both connect to local and remote MCP servers.
How do I add an MCP server to Claude Code?
Run claude mcp add -- for a local server, or claude mcp add --transport http for a remote one. Add --scope user to use it in every project. Then type /mcp inside Claude Code to log in to servers that use OAuth.
How do I add an MCP server to Claude Desktop?
For remote servers, go to Settings, Connectors, Add custom connector and paste the URL. For local servers, open Settings, Developer, Edit Config and add the server under mcpServers in claude_desktop_config.json, then restart the app. You can also double-click an .mcpb bundle.
Do MCP servers use a lot of tokens?
Less than they used to in Claude Code, which now loads tool definitions only when needed. Big servers like GitHub (90+ tools) can still add up, especially in Claude Desktop or when Claude Code uses a third-party gateway. Use toolset or read-only options and switch off servers you are not using.
Are MCP servers safe?
Official vendor servers are generally safe, but any server can act with the permissions you give it, and data it returns can contain prompt injection. Use read-only modes, avoid production credentials, and only install community servers after reading their code.
SSumit

Sumit

Contributor

Hi, I'm Sumit, Being an introvert I have always been obsessed with technology-computers and reading dozens of posts to learn, find answers out of my curiosity. I love to write as I explore more.

106 articles writtenView all posts by Sumit →

Related articles

See all