Claude Code MCP Servers
解释 Claude Code MCP servers 的作用、适用场景、安全添加方式,以及如何避免权限和上下文失控。
MCP servers 可以让 Claude Code 调用外部工具、读取资源或使用可复用 prompts。它适合真实工作流需要外部系统的时候,不应该因为“看起来高级”就盲目接入。
最后核查:2026 年 5 月 24 日。MCP 生态变化很快,第三方 server 应该当成有工具权限的代码来审查,而不是普通插件。
短答案
当 Claude Code 需要 GitHub、浏览器、文档检索、数据库、工单系统、内部 API 或自定义开发工具时,可以考虑 MCP。没有明确外部能力需求时,先不用 MCP。
什么时候值得用 MCP
| 需求 | MCP 适合 | 替代方式 |
|---|---|---|
| 读取或更新 GitHub issue / PR | GitHub MCP 或经过审查的集成。 | 一次性任务直接贴 issue 链接。 |
| 用真实浏览器测试网页 | Playwright / browser MCP。 | 只做静态代码审查时不用浏览器。 |
| 查询内部文档 | Docs / search MCP。 | 稳定规则写入 CLAUDE.md。 |
| 查看数据库 schema | 只读数据库 MCP。 | 一次性导出 schema 文件。 |
| 复用团队流程 | MCP prompt 或 skill。 | 不需要外部工具时用简单 command。 |
基本添加方式
本地 stdio server 的命令形态通常是:
claude mcp add --transport stdio <name> -- <command> [args...]-- 很重要。--transport、--env、--scope、--header 等选项要放在 server name 前面;-- 后面的内容才会传给 MCP server 进程。
安全检查清单
- 第一次配置优先用只读凭据。
- 一次只加一个 server。
- 不要默认给数据库、浏览器、文件系统过宽权限。
- 密钥放环境变量或凭据系统,不要提交到仓库。
- 先用小任务测试。
- 不用的 server 及时移除。
- 注意输出大小,MCP 大输出会吞上下文。
输出和上下文
MCP 输出可能非常大。Claude Code 会对大输出给出提示并有默认限制。少数场景可以调整 MAX_MCP_OUTPUT_TOKENS,但更好的做法通常是缩小查询范围。
好的提示:
Use the GitHub MCP server to inspect issue #42 only.
Summarize the acceptance criteria and list the files likely involved.
Do not modify anything yet.风险提示:
Read the whole repo, all open issues, and all recent PRs, then fix everything.