在 Claude Code 中设置 MCP 服务器(技术总结)

原文出处:Reddit - Setting up MCP Servers in Claude Code: a Tech Ritual for the Silently Desperate

🧩 一、什么是 MCP 服务器?

  • MCP(Model Context Protocol) 是一种让 Claude 获得"外部能力"的机制。

  • 它相当于 Claude 的"数字假肢",赋予它访问文件系统、浏览器、网页抓取、搜索等功能。

  • 常见 MCP 工具:

工具 功能 是否需 API Key
Sequential Thinking 链式推理,减少幻觉
Filesystem 访问本地目录
Playwright 多浏览器自动化
Puppeteer Chrome 自动化(已弃用)
Fetch HTTP 请求 / 抓取网页
Browser Tools DevTools 控制 / 截图 / 日志
Brave Search 网络搜索能力
Firecrawl 高级网页抓取

# 基本 MCP 服务器 (单独安装)

顺序思考

bash 复制代码
claude mcp add sequential-thinking -s user \ -- npx -y @modelcontextprotocol/server-sequential-thinking

让 Claude 真正思考问题,而不是自信地胡编乱造。

文件系统访问(根据需要更新路径)

bash 复制代码
claude mcp add filesystem -s user \ -- npx -y @modelcontextprotocol/server-filesystem \ ~/Documents ~/Desktop ~/Downloads ~/Projects

让 Claude 访问你的文件。

Playwright(多浏览器自动化)

bash 复制代码
claude mcp add playwright -s user \ -- npx -y @playwright/mcp

Puppeteer(已弃用,但仍然有效)

bash 复制代码
claude mcp add puppeteer -s user \ -- npx -y @modelcontextprotocol/server-puppeteer

看着你的浏览器自己操作,陷入存在主义的恐惧。

Web Fetching(Web 获取)

bash 复制代码
claude mcp add fetch -s user \ -- npx -y @kazuph/mcp-fetch

从网站抓取内容。

浏览器工具

让 Claude 访问你浏览器的控制台日志、网络流量,并能够运行性能/可访问性审核。

步骤 1:安装 Chrome 扩展程序 --- 从发布页面下载并将其加载到 Chrome 的扩展管理器中。

步骤 2:启动中间件服务器(保持此终端打开):

bash 复制代码
npx -y @agentdeskai/browser-tools-server@1.2.1

步骤 3:将 MCP 服务器添加到 Claude Code(在单独的终端中):

bash 复制代码
claude mcp add browser-tools -s user \ -- npx -y @agentdeskai/browser-tools-mcp@1.2.1

步骤 4:打开 Chrome DevTools (F12) 并找到 BrowserTools 标签。

★ Brave Search(需要 API 密钥)

复制代码
# 将 YOUR_API_KEY_HERE 替换为你的实际 Brave Search API 密钥 claude mcp add brave-search -s user \ -- env BRAVE_API_KEY=YOUR_API_KEY_HERE \ npx -y @modelcontextprotocol/server-brave-search 

让 Claude 搜索网络并带回结果。

★ Firecrawl(高级网页抓取 --- 需要 API 密钥)

# 将 fc-YOUR_API_KEY 替换为你的实际 Firecrawl API 密钥 claude mcp add firecrawl -s user \ -- env FIRECRAWL_API_KEY=fc-YOUR_API_KEY \ npx -y firecrawl-mcp

当你需要以工业级效率抓取网站,并且对 robots.txt 没啥敬意的时候。

⚙️ 二、一键安装脚本(macOS / Linux)

可批量安装多个常用 MCP 工具:

bash 复制代码
bash <<'EOF'
echo " 正在安装 Claude MCP 服务器..."
claude mcp add sequential-thinking -s user \
  -- npx -y @modelcontextprotocol/server-sequential-thinking || true
claude mcp add filesystem -s user \
  -- npx -y @modelcontextprotocol/server-filesystem \
     ~/Documents ~/Desktop ~/Downloads ~/Projects || true
claude mcp add playwright -s user \
  -- npx -y @playwright/mcp-server || true
claude mcp add puppeteer -s user \
  -- npx -y @modelcontextprotocol/server-puppeteer || true
claude mcp add fetch -s user \
  -- npx -y @kazuph/mcp-fetch || true
claude mcp add browser-tools -s user \
  -- npx -y @agentdeskai/browser-tools-mcp || true
echo "--------------------------------------------------"
echo "✅ MCP 注册完成。"
echo ""
echo "要启用浏览器工具,请在第二个终端中运行并保持打开:"
echo "  npx -y @agentdeskai/browser-tools-server"
echo "--------------------------------------------------"
claude mcp list
EOF

💡 Windows 用户 :可将上述命令改写为 .bat 文件或在命令前加上 cmd /c

🧭 三、安装范围说明

参数 含义 配置文件位置
-s user 全局安装 ~/.claude.json
-s local 项目内安装 当前项目目录下的 .claude.json

macOS 特殊说明:

  • Claude Desktop 配置文件:~/Library/Application Support/Claude/claude_desktop_config.json

  • Claude Code 配置文件:~/.claude.json

  • 两者的 MCP 配置是分开的。


🧰 四、常见问题与解决方案

问题 可能原因 解决方式
MCP 显示连接但无响应 路径配置或通信异常 检查 claude mcp list 输出和日志
超时错误 执行时间过短 设置环境变量:export MCP_TIMEOUT=10000
Windows 命令执行失败 CMD 兼容问题 在命令前添加 cmd /c
Docker/WSL 无法通信 网络隔离 使用 host.docker.internal 作为主机地址
Puppeteer 失效 工具已弃用 推荐改用 Playwright MCP

示例 .claude.json 配置:

"mcpServers": { "browser-tools": { "type": "stdio", "command": "npx", "args": ["-y", "@agentdeskai/browser-tools-mcp@1.2.0"], "env": { "BROWSERTOOLS_SERVER_HOST": "host.docker.internal", "BROWSERTOOLS_SERVER_PORT": "3025" } } }


💡 五、提示工程建议(Prompt Engineering)

  • Claude 可能不会主动使用 MCP 工具,需在提示中显式说明使用哪个 MCP

  • 作者推荐的做法:

    • 将项目说明拆分为多层 README(如主层、模块层、任务层)。

    • 通过结构化提示,让 Claude 依据层级调用相应 MCP。

  • 此方式能减少 Claude 误调用、提升推理一致性。


🗣️ 六、评论精选

用户 内容摘要
itsbyrobin 指出 MCP 列表在 ~/.claude.json 顶层。
rowild 解释 Desktop 与 Code 配置文件区别。
macoha 在 Windows+WSL 失败,改用 Ubuntu Docker 成功。
ph30nix01 测试脚本成功运行,感谢分享。
fullstack_ML_guy 分享 Windows 命令兼容方案。
useforbeta 建议在命令中用 @ 替代被转义的 u/

✅ 七、总结与建议

  • MCP 是让 Claude Code 拥有"外部能力"的核心机制。

  • 通过脚本可快速启用常用工具,增强 Claude 的实用性。

  • 注意区分:

    • 全局 vs 局部配置;

    • 不同系统路径差异;

    • Puppeteer 弃用、Playwright 替代;

    • WSL / Docker 通信问题。

相关推荐
MaybeAI14 小时前
构建可靠的 AI 工作流:我们在 MCP 架构下的实践与经验
ai·工作流·mcp·ai自动化·工作流自动化·无代码工作流·maybeai
励志成为糕手1 天前
VSCode+Cline部署本地爬虫fetch-mcp实战
ide·vscode·爬虫·ai·mcp
小虎AI生活2 天前
王炸!新一代 AI 浏览器,GitHub 上 16.4k 高星的开源项目
ai编程·mcp·codebuddy
檀越剑指大厂2 天前
【MCP系列】飞书MCP使用
mcp
阿然1653 天前
我如何使用 Claude Code 的每一个功能
人工智能·ai编程·claude
astersik3 天前
Windows下如何搭建ClaudeCode调用本地Qwen3-code
claude
yaocheng的ai分身3 天前
【大佬解读篇】通过 MCP 进行代码执行:构建更高效的 agents
claude
yaocheng的ai分身3 天前
Code Mode:使用 MCP 的更好方式
claude
yaocheng的ai分身3 天前
【Claude】通过 MCP 执行代码:构建更高效的 AI agents
claude
二进制_Leo3 天前
深入理解 Model Context Protocol (MCP)
mcp