Complete Guide to MCP with Claude Desktop
Turn Claude Desktop into a powerhouse with MCP servers. This guide covers everything from installation to advanced multi-server configurations.
What is Claude Desktop + MCP?
Claude Desktop is Anthropic's desktop application for interacting with Claude. With MCP support, it transforms from a chat interface into a connected AI assistant that can read your files, query databases, search the web, manage GitHub repos, and much more.
Step 1: Install Claude Desktop
Download Claude Desktop from claude.ai/download. Available for macOS, Windows, and Linux.
After installation, sign in with your Anthropic account.
Step 2: Install Node.js
Most MCP servers require Node.js. Download from nodejs.org (LTS version recommended).
Verify installation:
node --version # Should show v18+
npx --version # Should show a version number
Step 3: Open the Config File
Claude Desktop stores MCP server configuration in a JSON file.
macOS
# Open in your editor
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Or create it if it doesn't exist
mkdir -p ~/Library/Application\ Support/Claude
echo '{"mcpServers":{}}' > ~/Library/Application\ Support/Claude/claude_desktop_config.json
Windows
# Open in your editor (PowerShell)
code $env:APPDATA\Claude\claude_desktop_config.json
# Or create it
New-Item -ItemType Directory -Force "$env:APPDATA\Claude"
'{"mcpServers":{}}' | Out-File "$env:APPDATA\Claude\claude_desktop_config.json"
Linux
code ~/.config/Claude/claude_desktop_config.json
Step 4: Configure Your Servers
Here's a complete configuration with the most popular servers. Copy and customize:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/you/Documents",
"/Users/you/Projects"
]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token"
}
},
"brave-search": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
"env": {
"BRAVE_API_KEY": "BSA_your_key"
}
},
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
},
"sqlite": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-sqlite",
"/Users/you/data/my-database.db"
]
}
}
}
Customize for Your Needs
- Filesystem: Change paths to your actual project directories. You can list multiple paths
- GitHub: Create a Personal Access Token with
reposcope - Brave Search: Get a free API key from Brave Search API
- SQLite: Point to your database file path
Step 5: Restart and Verify
- Quit Claude Desktop completely (Cmd+Q on macOS, or close from system tray on Windows)
- Reopen Claude Desktop
- Start a new conversation
- Look for the ๐จ hammer icon near the chat input โ this confirms MCP servers are connected
- Click the hammer to see all available tools
Step 6: Try It Out
Here are some things to try with your new MCP-powered Claude:
File Operations
"List all JavaScript files in my Projects folder"
"Read the package.json from my project and summarize the dependencies"
GitHub
"Show me my open pull requests on GitHub"
"Create a GitHub issue in my-repo titled 'Fix login bug' with a description of the problem"
Web Search
"Search for the latest Node.js LTS release"
"Find the best practices for Docker multi-stage builds"
Database
"Show me the tables in my SQLite database"
"Query the users table and show the 10 most recent signups"
Combined Workflows
"Read my project's source code, check GitHub for open issues, and suggest which issue to work on next"
Windows-Specific Tips
- Use
npx.cmdinstead ofnpxif you have issues - Use forward slashes or escaped backslashes in paths:
"C:/Users/you/Documents"or"C:\\Users\\you\\Documents" - If Node.js was just installed, restart your computer before configuring Claude Desktop
Advanced Configuration
Multiple Filesystem Paths
Pass multiple directories as separate arguments:
"args": [
"-y", "@modelcontextprotocol/server-filesystem",
"/Users/you/Projects",
"/Users/you/Documents",
"/Users/you/Desktop"
]
Custom Server from GitHub
Some servers aren't on npm yet. Run them directly:
"custom-server": {
"command": "node",
"args": ["/path/to/cloned/repo/dist/index.js"],
"env": {
"CUSTOM_API_KEY": "your_key"
}
}
Troubleshooting
If things aren't working:
- Validate your JSON (no trailing commas!)
- Check that Node.js is installed:
node --version - Use full paths if
npxisn't found - Check logs:
~/Library/Logs/Claude/(macOS) or%APPDATA%\Claude\logs\(Windows)
For detailed troubleshooting, see our complete troubleshooting guide.
What's Next?
- Browse the MCP Hub directory for more servers to add
- Check our Top 10 Essential Servers list
- Learn security best practices for production use
- Want to build your own? Building Custom MCP Servers
FAQ
Is Claude Desktop free to use with MCP?
Claude Desktop is free to download and use. MCP server support is included in the free tier. Some advanced Claude features may require a Pro subscription, but basic MCP functionality works for everyone.
How many MCP servers can Claude Desktop handle?
Claude Desktop can connect to multiple MCP servers simultaneously. Most users run 3-8 servers. There's no hard limit, but each server uses some system resources.
Does Claude Desktop auto-update MCP servers?
If you use npx to run servers, the latest version is fetched each time Claude Desktop starts. For globally installed servers, you need to manually update via npm update -g.