在 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 通信问题。

相关推荐
ZzT2 小时前
cc 写了一周代码,烧了 $2203 Token — 于是我让它给自己做了个账本
ai编程·claude·vibecoding
huohuopro3 小时前
提升你的claude能力--Everything Claude Code 本地化配置手册
claude·everything
xyzso1z3 小时前
基于 Claude Code Hooks 的 IP 地理位置检测达到账号防封方案记录
claude·anthropic·账号安全·claude code·封号防护
deephub4 小时前
Claude Code 命令体系解析:三种类型、七大分类、50+ 命令
人工智能·大语言模型·claude·claude code
光于前裕于后4 小时前
配置钉钉龙虾OpenClaw机器人调用OpenMetadata
机器人·钉钉·数据治理·mcp·openclaw
星野云联AIoT技术洞察5 小时前
2026 年 MCP + MQTT:AI Agent 真正控制 IoT 设备的落地路径
数字孪生·ack·ai agent·物联网平台·agentic·mcp·命令服务
不可能的是7 小时前
我是怎么搞清楚 Claude Code 每天用了多少 token
aigc·ai编程·claude
API开发8 小时前
一个MCP操作所有的数据库
数据库·api·api接口·apisql·mcp·mcpserver·openclaw
demo007x1 天前
如何提高 AI 做小程序的效率?
微信小程序·ai编程·claude
门豪杰1 天前
Ubuntu下安装Claude Code
linux·运维·ubuntu·claude·claude code