Claude Desktop without MCP is a fast chat app that knows whatever was true at training time.
Claude Desktop with MCP is a fast chat app that also knows your live Notion workspace, the GitHub issues you opened this week, the contents of a folder you point it at, and the stack of saved threads you swore you would re-read. The gap between those two setups is one or two clicks, sometimes one JSON file, and a restart.
This is the practical guide for 2026. What MCP looks like inside Claude Desktop now that Custom Connectors and Desktop Extensions are both shipping. Where the config file still lives. The servers worth wiring up. And the small mistakes that quietly burn an hour.
- Three install paths in 2026: Custom Connectors (remote, OAuth), Desktop Extensions (.mcpb one-click), and
claude_desktop_config.json(local stdio). - Config file:
~/Library/Application Support/Claude/claude_desktop_config.jsonon macOS,%APPDATA%\Claude\claude_desktop_config.jsonon Windows. - Custom Connectors live at Settings → Connectors → Add custom connector. Built-in OAuth, ideal for hosted services.
- Restart Claude Desktop fully after any change. A window reload does not pick up new servers.
- The 2026 starter stack: Filesystem, GitHub, Notion or Linear, Postgres or SQLite, a search tool (Exa or Firecrawl), plus your knowledge layer (bookmarks, notes).
What MCP actually is in Claude Desktop
The Model Context Protocol is an open standard released by Anthropic in late 2024 that defines how an AI client talks to external tools and data sources.
In Claude Desktop, the chat window is the client. MCP servers are separate processes (or remote URLs) that expose tools the model can call. When you start a new conversation, Claude reads the list of available tools from each connected server. When it decides it needs one, it calls the tool, gets the result, and folds the result back into its reasoning.
Without MCP, Claude knows whatever was true at training time plus whatever you paste into the chat. With MCP, it queries live systems. The difference between “the docs probably look like this” and “I just read your repo and the docs look like this” is the difference between guessing and knowing.
The official Anthropic docs are decent but spread across three or four pages. The setup itself is shorter than the docs.
The three install paths in 2026
Claude Desktop in 2026 has three ways to add an MCP server. They each suit a different kind of tool. Most users end up using a mix.
Custom Connectors. Open Settings, then Connectors, then click Add custom connector. Paste a remote MCP server URL, name it, and (optionally) supply OAuth credentials. Best for hosted services like Notion, Linear, Sentry, GitHub, and ContextBolt. This is the modern, recommended path for anything that lives on the public internet. Available on Free, Pro, Max, Team, and Enterprise per the Anthropic Help Center.
Desktop Extensions (.mcpb). Open Settings, then Extensions, then Browse extensions. Pick from the Anthropic-reviewed directory or click Install Extension and load a .mcpb file. Each bundle ships the MCP server plus all its dependencies, so you do not need Node, Python, or any package manager installed. This is the consumer-friendly path. Anthropic’s engineering writeup on Desktop Extensions explains the format. Note that the file extension moved from .dxt to .mcpb in late 2025, with old .dxt files still working.
The config file. Open Settings, then Developer, then Edit Config. This opens claude_desktop_config.json in your default editor (or creates it if missing). Best for local stdio servers (Filesystem, SQLite, custom Python scripts) and anything you want to manage as code. The structure is the same one every MCP client uses.
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/Documents"]
},
"sqlite": {
"command": "uvx",
"args": ["mcp-server-sqlite", "--db-path", "/Users/you/data/notes.db"]
}
}
}
Two transport types matter in 2026.
Stdio servers run locally. Claude spawns the process and talks to it through standard input and output. Most local tools (Filesystem, Postgres, SQLite, Git) use stdio. They get command, args, and optional env.
HTTP servers run remotely. Claude talks to a URL over the network. Hosted services and personal endpoints (such as the ContextBolt MCP) use this transport. In 2026 these almost always go through Custom Connectors in the UI rather than the JSON file. The November 2025 spec finalized the streamable HTTP transport, which is what made hosted MCP practical at all.
Once anything is added, fully quit Claude Desktop and reopen it. MCP servers load at startup only. Cmd-Q on macOS, or close every window on Windows. A window reload does not pick up new servers, and roughly half the troubleshooting questions in the Anthropic forum are people who reloaded.
The mistakes that eat an hour
I have hit enough of these to make a list. Six things that fail silently or noisily in unhelpful ways.
Forgetting the mcpServers root key. If your top-level JSON does not start with "mcpServers": {, Claude Desktop reads the file and ignores everything in it. No error in the chat window, no warning, just no servers. Check the brackets first.
Skipping -y on npx commands. Without the -y flag, npx waits for an interactive “should I install this package” prompt. Claude cannot answer it, the process hangs, and the server never registers. Always include -y when you launch a server through npx.
Reloading instead of restarting. Claude only reads the config and connector list at full startup. Reload Window does not work. Use Cmd-Q on macOS or fully close on Windows, then reopen.
Cramming in 25 servers. Each MCP server is a separate subprocess with its own startup cost and memory footprint. Three to six servers is the sweet spot. Past ten you will notice cold starts, and past twenty Claude Desktop’s memory use climbs fast. Anything you have not used in two weeks is dead weight.
Using stdio for a remote service. Stdio assumes the server runs on your machine. If you are pointing Claude at a hosted endpoint, you want Custom Connectors with the URL. The ContextBolt MCP, for example, is HTTP only. Trying to npx-install a remote service will sit forever and never start.
OAuth flows breaking after Claude Desktop updates. This is real. After a December 2025 desktop update, several remote MCP servers using OAuth 2.0 stopped authenticating until users re-added the connector. If a previously working connector goes dead after an update, remove it from Settings, then add it again. The token refresh path is fragile.
The 2026 starter stack
Most “best Claude Desktop MCP servers” lists give you 15. That is not a stack, that is a tab graveyard. Here is the smaller version, picked by friction not hype.
| Server | What it does | Install path | Why it earns its slot |
|---|---|---|---|
| Filesystem | Read and write files in allowed dirs | config or .mcpb | Claude Desktop is sandboxed by default. Filesystem is the cheapest way to give it a real document and notes folder to work in. |
| GitHub | Repos, issues, PRs, code search | Custom Connector (hosted) | The hosted GitHub MCP via OAuth removes the personal-access-token dance. Per the official install guide this is now the recommended path. |
| Notion or Linear | Notes, specs, tickets | Custom Connector (hosted) | Pick whichever holds the source of truth for your work. Claude reading your spec is better than you re-typing it into chat. |
| Postgres or SQLite | Run SQL against your databases | config (stdio) | Lets Claude query the live shape of your data instead of hallucinating columns. SQLite is fine for a personal notes DB; Postgres for anything bigger. |
| Exa or Firecrawl | Live web search and page fetch | Custom Connector (hosted) | Claude Desktop’s built-in web search is fine for casual browsing. A real search MCP returns structured results Claude can chain through, which matters for research. |
| ContextBolt | Search your X, Reddit, and LinkedIn bookmarks by meaning | Custom Connector (hosted) | The threads, articles, and tutorials you saved months ago, surfaced when Claude actually needs them. The thing your AI client knows least about is your own brain. |
That stack covers files (Filesystem), code and tickets (GitHub plus Notion or Linear), data (Postgres or SQLite), live web (Exa or Firecrawl), and your knowledge layer (ContextBolt). Six servers, well under any practical ceiling, and every one of them earns its keep in a normal week. If you want the longer reasoned list, the 7 best MCP servers for knowledge workers post goes deeper on the non-coding side of the stack.
Adding your knowledge layer to Claude Desktop
Most MCP setup guides stop at “install the GitHub server, you are done.” That misses the highest-leverage piece. The thing your AI client knows least about is your own brain: the threads you saved when you were skimming X, the Reddit comments that changed how you think about a problem, the LinkedIn posts you bookmarked because the framing was good. None of that is in any of the standard Connectors.
ContextBolt is a Chrome extension that captures your X, Reddit, and LinkedIn bookmarks into a searchable AI knowledge base. The free tier ($0, 150 bookmarks) gives you AI tagging, topic clustering, and semantic search inside the extension. Pro ($6 a month) adds unlimited bookmarks, encrypted cloud sync, and a personal MCP endpoint that any MCP client (Claude Desktop, Claude Code, Cursor, ChatGPT) can call.
Wiring it into Claude Desktop is one paste and one restart.
- Open Settings, then Connectors.
- Click Add custom connector.
- Paste your personal endpoint URL (something like
https://api.contextbolt.app/mcp/your-token-here). - Name it “ContextBolt” and save.
- Quit Claude Desktop fully and reopen.
In your next chat, ask “what did I save about agent memory in the last six weeks?” Claude calls search_bookmarks against your collection, ranks results by semantic match, and you get the three things you actually saved instead of a generic answer pasted from training data. The endpoint also exposes list_clusters, get_cluster_bookmarks, get_recent_bookmarks, and save_bookmark, so Claude can browse your topic clusters or save a new bookmark mid-chat.
This is the gap most 2026 Claude Desktop guides miss. Notion and GitHub matter, but the difference between a competent Claude and a personal one is whether it can read your saved context. For more on that argument, see Personal AI Context Stack for Claude.
Claude Desktop MCP vs Claude Code MCP
People conflate these all the time. They are different products with different MCP behavior, and the difference matters for how you set up your stack.
| Dimension | Claude Desktop | Claude Code |
|---|---|---|
| Audience | Mainstream Claude users | Developers in a terminal |
| Config file | claude_desktop_config.json (single global file) | ~/.claude.json or project .mcp.json |
| Project-level config | No (single global config) | Yes (.mcp.json in repo) |
| UI for installs | Yes (Connectors, Extensions, Developer settings) | CLI (claude mcp add) |
| One-click install format | Yes (.mcpb Desktop Extensions) | No (CLI or JSON only) |
| Filesystem access | Sandboxed, must be granted via Filesystem MCP | Full system access by default |
| Shell access | None (sandboxed) | Full (the entire premise) |
Claude Desktop is sandboxed. That is why Filesystem is a useful MCP install for it but a redundant one for Claude Code (which already touches your whole machine). Custom Connectors and Desktop Extensions are Claude Desktop features, not Claude Code features. If you use both products, your stack will skew different in each. If you want the parallel walk-through for Claude Code, see Add Your Bookmarks to Claude Code via MCP.
The one opinion worth holding
You will read a lot of “install these 25 MCP servers” posts in 2026. Almost all of them are wrong.
Each MCP server is a subprocess. Each one has a startup cost. Each one adds tools to the list Claude has to consider every time you ask a question. The model gets less precise when there are too many doors, and the desktop app gets slower to launch. Past ten servers you will feel both effects.
Pick servers the way you pick browser extensions. Three to six. Each one earns its slot or it gets uninstalled within a fortnight. Anything you have not used in two weeks is dead weight, no matter how cool the demo was.
The other thing nobody says out loud: the stack that matters most is not the one Anthropic puts in the Connectors marketplace. The marketplace is biased toward what is easy to integrate, not what makes you smarter. Your knowledge layer (notes, bookmarks, journal, whatever you are actually reading) is almost never on the front page. That is the slot that will move the needle for personal use, and it is the slot you have to wire up yourself.
What to wire up next
If Claude Desktop itself feels new, start small. Install Filesystem and point it at your Documents folder. Use it for a week. Notice how often Claude can finally answer questions about the actual file you are working on instead of asking you to paste it. Then add GitHub through Connectors. Then a database server pointed at any DB you keep notes in.
Once those three feel routine, add your knowledge layer. ContextBolt’s MCP endpoint is one paste and one restart (the step-by-step connect flow walks through Claude Desktop, Cursor, and the other major clients). Stack with Notion or Linear if your work lives there. That is the full setup most solo builders need.
The full Custom Connectors documentation is at support.claude.com. The MCP spec is at modelcontextprotocol.io. The Desktop Extensions registry is at desktopextensions.com. The starter stack above takes about ten minutes to wire up if you already have the accounts, and roughly twenty if you do not.
That is twenty minutes you spend once. Claude Desktop gets sharper every day after.