MCP Plugin Installation Guide
Learn how to install and configure MCP (Model Context Protocol) servers to extend Claude's capabilities with external tools, data sources, and integrations.
The Model Context Protocol (MCP) is an open standard created by Anthropic that standardizes how AI models connect to external data sources and tools. Often described as "USB-C for AI", MCP provides a universal interface for Claude to interact with your local files, databases, APIs, and development tools.
As of 2026, MCP is supported by Anthropic, OpenAI, Google, and Microsoft—making it the de facto integration standard for AI agents. There are now 593+ MCP servers available in the ecosystem, from official Anthropic packages to community-built integrations.
Prerequisites
Node.js (LTS)
Required for running most MCP servers via npx. Download from nodejs.org.
Python / uv (Optional)
Some MCP servers are Python-based and use uvx instead of npx.
Claude Desktop
The Claude Desktop app must be installed. Available for macOS and Windows.
No Subscription Required
MCP servers work with any Claude plan, including the free tier.
Config File Location
MCP servers are configured in claude_desktop_config.json. The file location depends on your operating system:
~/Library/Application Support/Claude/claude_desktop_config.json %APPDATA%\Claude\claude_desktop_config.json Tip
You don't need to create this file manually. Claude Desktop can generate it for you—see the installation steps below.
Step-by-Step Installation
Launch Claude Desktop
Open the Claude Desktop application on your computer.
Open Settings
Click the hamburger menu → File → Settings (or use the keyboard shortcut).
Navigate to Developer Tab
In the Settings panel, click the "Developer" tab on the left sidebar.
Click "Edit Config"
This opens (or creates) the claude_desktop_config.json file in your default text editor.
Add MCP Server Configuration
Add your desired MCP servers under the mcpServers key (see configuration format below).
Save and Restart
Save the config file and restart Claude Desktop completely for changes to take effect.
Verify Installation
Look for the hammer icon 🔨 in the Claude Desktop interface. Clicking it shows all available MCP tools.
Configuration Format
The config file uses a simple JSON structure. Each MCP server is defined under the mcpServers key:
{
"mcpServers": {
"server-name": {
"command": "npx",
"args": ["-y", "@package/server-name"],
"env": {
"API_KEY": "your-api-key-here"
}
}
}
} {
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/username/Desktop",
"/Users/username/Downloads"
]
}
}
} {
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/username/Documents"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_xxxxxxxxxxxx"
}
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "your-brave-api-key"
}
}
}
} Popular MCP Servers
Here are the most widely-used MCP servers in the ecosystem:
| Server | Package | Purpose |
|---|---|---|
| Filesystem | @modelcontextprotocol/server-filesystem | Read/write local files, create documents, organize folders |
| GitHub | @modelcontextprotocol/server-github | Read codebases, inspect PRs, track workflows |
| PostgreSQL | @modelcontextprotocol/server-postgres | Read-only database access with schema inspection |
| Brave Search | @modelcontextprotocol/server-brave-search | Web search capabilities |
| Puppeteer | @modelcontextprotocol/server-puppeteer | Browser automation and web scraping |
| Sequential Thinking | @modelcontextprotocol/server-sequential-thinking | Dynamic reasoning and step-by-step problem solving |
| Slack | @anthropic/mcp-server-slack | Slack workspace integration |
| Google Drive | @anthropic/mcp-server-gdrive | Google Docs, Sheets, and Drive integration |
| Docker | @anthropic/mcp-server-docker | Container management and orchestration |
| Memory | @modelcontextprotocol/server-memory | Persistent memory across sessions |
Transport Protocols
MCP supports different transport mechanisms for communication between Claude and MCP servers:
stdio (Standard I/O)
The default transport for Claude Desktop. The client spawns the MCP server as a local process and communicates via stdin/stdout. This is what the command and args fields in the config define.
StreamableHTTP
The recommended protocol for web and remote access. Supports multiple concurrent clients and is the successor to the deprecated SSE transport.
language For remote/web serversSSE (Server-Sent Events)
Deprecated in favor of StreamableHTTP. Avoid using for new integrations.
Security Considerations
Important
MCP servers run locally with access to your system. In January 2026, critical vulnerabilities were discovered in Anthropic's official Git MCP server. Always follow security best practices.
Only install from verified sources — Use official Anthropic packages or well-known community servers with active maintenance.
Keep servers updated — Run npx @package/server-name regularly to get the latest security patches.
Use environment variables for secrets — Never hardcode API keys directly in the config file. Use the env field or system environment variables.
Restrict filesystem scope — When using the filesystem server, only grant access to specific directories you need.
Remove unused servers — Each MCP server increases your attack surface. Remove any you're not actively using.
Troubleshooting
Hammer icon doesn't appear after restart expand_more
This usually means the config file has a JSON syntax error. Common issues:
- Missing or extra commas between server entries
- Unmatched brackets or braces
- Using single quotes instead of double quotes
Validate your JSON at jsonlint.com or use node -e "JSON.parse(require('fs').readFileSync('path/to/config.json'))"
MCP server fails to start expand_more
Check the following:
- Ensure Node.js is installed and
npxis available in your PATH - Try running the npx command manually in your terminal to see error output
- Check if the package name is correct (typos are common)
- For servers requiring API keys, verify the key is valid and properly set in the
envfield
Permission denied errors expand_more
MCP servers inherit the permissions of the Claude Desktop process:
- On macOS, check System Settings → Privacy & Security for relevant permissions
- Ensure the directories specified in the config are accessible to your user account
- For the filesystem server, verify the paths in
argsexist and are readable
Explore the MCP Ecosystem
With 593+ MCP servers available, there's likely a server for your use case. Browse the official MCP server directory at modelcontextprotocol.io or check community curated lists on GitHub for the latest additions.