扩展能力
MCP 与 LSP 集成解析:Claude Code 如何接入外部能力
内置能力再多,也覆盖不了所有场景
Claude Code 的工具已经很多了,但一个现实问题是:
再强的内置工具,也不可能提前覆盖所有团队、所有仓库、所有工作流。
所以它一定要支持外部能力接入。
源码里最重要的两条扩展线,就是:
- MCP
- LSP
加载图表中...
MCP:把外部工具和资源接进来
从 services/mcp/* 可以看出,Claude Code 对 MCP 的支持并不浅:
- 配置解析
- 连接管理
- 认证与 OAuth
- channel 权限
- 资源读取
- 命令与工具映射
这说明 MCP 在 Claude Code 里不是装饰品,而是正式扩展机制。
从系统视角看,MCP 接进来的不只是“工具”
更准确地说,MCP 可能给 Claude Code 带来三类东西:
- 新工具
- 新命令
- 新资源
这三类能力会直接改变当前 session 的能力版图。
加载图表中...
借助 MCP,Claude Code 可以拿到:
- 额外工具
- 额外命令
- 额外资源
这会直接改变它在当前 session 里的能力边界。
LSP:接入语言层智能反馈
另一条线是 services/lsp/*。
LSP 的意义和 MCP 不一样,它更偏向编程语言层面的能力增强,比如:
- 诊断信息
- 符号与语义信息
- 语言服务反馈
这意味着 Claude Code 不只是“看文本文件”,还在努力接入语言工具链的结构化能力。
LSP 的价值不在“替代搜索”,而在“补结构化语义”
文件搜索很强,但它本质上还是文本层。
LSP 更擅长的是:
- 符号和引用关系
- 编译器/语言服务诊断
- 更接近代码结构的反馈
这类能力对大型仓库尤其重要。
两者的分工
一个很实用的理解方式是:
- MCP 更像接入外部世界和外部系统
- LSP 更像接入代码语言自身的专业能力
前者扩宽能力边界,后者提高代码理解与编辑精度。
为什么这两条线这么关键
因为当一个 Agent 进入真实工程环境后,内置能力只是起点。
真正决定上限的,往往是它能不能:
- 接公司内部系统
- 接仓库专属资源
- 接语言和 IDE 生态
MCP 和 LSP,正好就是这两条路。
小结
Claude Code 接入外部能力,不是靠临时拼插件,而是围绕 MCP 与 LSP 建立了比较完整的扩展结构。
这也是它从“工具”走向“平台”的重要标志之一。
用一句话区分两者
- MCP:把外部世界接进 Claude Code
- LSP:把代码语言自身的智能能力接进 Claude Code