After much trial and error I finally got functioning MCP servers in Claude Code albeit with slightly less will to live.
What are MCP Servers?
They're digital prosthetics that give Claude arms and legs to crawl around your computer with. Less poetically: extensions that let it do stuff beyond generating code you'll never actually use.
The Tools (★ = Requires API Key)
Sequential Thinking: Helps Claude solve problems step‑by‑step
Filesystem: Lets Claude rummage through the folders you allow
Playwright: Modern multi‑browser automation
Puppeteer: Chrome‑only (deprecated)
Web Fetching: Grabs content from websites
Browser Tools (Chrome DevTools Integration): Capture and analyze browser data through a Chrome extension
★ Brave Search: Web searching capabilities
★ Firecrawl: Advanced web scraping
🏃♂️ One‑Command Installation (The "I Don't Have Time For This" Version)
Copy everything in the block, paste into a macOS/Linux terminal, and hit ↵.
bash <<'EOF'
echo "🔧 Installing Claude MCP servers (latest versions)…"
# Sequential Thinking — Claude's chain‑of‑thought engine
claude mcp add sequential-thinking -s user \
-- npx -y @modelcontextprotocol/server-sequential-thinking || true
# Filesystem — give Claude access to local folders
claude mcp add filesystem -s user \
-- npx -y @modelcontextprotocol/server-filesystem \
~/Documents ~/Desktop ~/Downloads ~/Projects || true
# Playwright — modern multi‑browser automation
claude mcp add playwright -s user \
-- npx -y @playwright/mcp-server || true
# Puppeteer — Chrome‑only (deprecated but still works)
claude mcp add puppeteer -s user \
-- npx -y @modelcontextprotocol/server-puppeteer || true
# Fetch — simple HTTP GET/POST
claude mcp add fetch -s user \
-- npx -y @kazuph/mcp-fetch || true
# Browser‑Tools — DevTools logs, screenshots, etc.
claude mcp add browser-tools -s user \
-- npx -y @agentdeskai/browser-tools-mcp || true
echo "--------------------------------------------------"
echo "✅ MCP registration finished."
echo ""
echo "🔴 To enable Browser‑Tools, run this in a *second* terminal and leave it open:"
echo " npx -y @agentdeskai/browser-tools-server"
echo "--------------------------------------------------"
claude mcp list
EOFSave this as install-mcp-servers.sh, make it executable (chmod +x install-mcp-servers.sh), and run it while questioning your life choices.
Windows users: you'll need a .bat file instead. Good luck with that!
# Essential MCP Servers (Individual Installation)
Sequential Thinking
claude mcp add sequential-thinking -s user \ -- npx -y @modelcontextprotocol/server-sequential-thinking
Lets Claude actually think through problems instead of making things up with confidence.
Filesystem Access (update paths as desired)
claude mcp add filesystem -s user \
-- npx -y @modelcontextprotocol/server-filesystem \
~/Documents ~/Desktop ~/Downloads ~/ProjectsGive Claude access to your files.
Playwright (multi‑browser automation)
claude mcp add playwright -s user \ -- npx -y @playwright/mcp
Puppeteer (deprecated but still works)
claude mcp add puppeteer -s user \ -- npx -y @modelcontextprotocol/server-puppeteer
Watch in existential dread as your browser operates itself.
Web Fetching
claude mcp add fetch -s user \ -- npx -y @kazuph/mcp-fetch
Grabs content from websites.
Browser Tools
Gives Claude access to your browser's console logs, network traffic, and the ability to run performance/accessibility audits.
Step 1: Install the Chrome extension – download from the releases page and load it via Chrome’s extension manager. Step 2: Start the middleware server (keep this terminal open)
npx -y @agentdeskai/[email protected]
Step 3: Add the MCP server to Claude Code (in a separate terminal)
claude mcp add browser-tools -s user \ -- npx -y @agentdeskai/[email protected]
Step 4: Open Chrome DevTools (F12) and find the BrowserTools tab.
★ Brave Search (Requires API Key)
# Replace YOUR_API_KEY_HERE with your actual Brave Search API key
claude mcp add brave-search -s user \
-- env BRAVE_API_KEY=YOUR_API_KEY_HERE \
npx -y @modelcontextprotocol/server-brave-searchLet Claude search the web and bring back results.
★ Firecrawl (Advanced Web Scraping — Requires API Key)
# Replace fc-YOUR_API_KEY with your actual Firecrawl API key
claude mcp add firecrawl -s user \
-- env FIRECRAWL_API_KEY=fc-YOUR_API_KEY \
npx -y firecrawl-mcpFor when you need to scrape websites with industrial‑grade efficiency and minimal respect for robots.txt.
# The -s user vs -s local Thing
-s user: Makes these tools available globally-s local: Only works in your current directory
# Troubleshooting
Windows issues: prepend
cmd /cbefore npx commandsTimeout errors:
MCP_TIMEOUT=10000 claudeConnection problems: Type
/mcpin Claude Code to see which servers are nappingFilesystem access: Double‑check your paths
That's it. Save yourself the four hours of my life I'll never get back.
PS – Yes, this was written mostly with the help of Claude.
EDIT: Apparently there were some stupid Reddit formatting issues. It converted the "@" to "u/", I'm such a noob, sorry! I updated the script to include playwright which is a pretty good alternative to puppeteer. Thanks all for pointing out my numerous flaws.
Videos
i've found that you can globally add mcp's for claude code my editting ~/claude.json however that file is huge and filled with lots of other stuff such as history etc. is there another way to add mcp json blocks that claude code will see for all projects? can I add them to ~/.claude/CLAUDE.md or maybe ~/.claude-mcp.json or some such?
I know there's a "mcp add" command but It seems the syntax thats out there for some MCP server appears to be older. I want to add Sentry to my MCP servers but im running into issues.
From what I can tell the way to add it in JSON looks like this:
{
"mcpServers": {
"Sentry": {
"command": "npx",
"args": ["mcp-remote@latest", "https://mcp.sentry.dev/sse"]
}
}
}
I created this file in ~/.config/claude-code/mcp_servers.json but it doesn't seem to detect it when restarting claude.
Anyone know if Im doing something wrong or can tell me how to set sentry up to work with Claude Code? Thanks!
Basically title, I asked Claude how to setup them up and it just told me to add it to claude_desktop.json (used with the claude app) but for some reason that's wrong
can someone tell me what file I can use to add all my mcp in json format?
thanks!