Claude Code MCP 工具
📖 目录
MCP(Model Context Protocol,模型上下文协议) 是 Anthropic 于 2024 年 11 月推出的开放标准,旨在为大型语言模型(LLMs)提供统一接口,以便连接和调用外部数据源和工具。
MCP 遵循 C/S 架构:
MCP Server
实际运行外部工具(如访问文件系统、发送邮件、查询日历)的服务端叫做 MCP Server。它负责处理请求并将结果返回给 Client。
MCP Client
运行着与大模型对话的客户端(可能会使用工具)叫做 MCP Client。在 Claude Code 中,Claude Code(或 Claude 桌面版)作为客户端,连接到这些服务器。我们可以在项目根目录下创建 .mcp.json 文件来配置连接的 MCP Server。
查找和构建 MCP 服务器
在 Anthropic Directory 中浏览已审核的连接器。Directory 连接器使用与 Claude Code 相同的 MCP 基础设施,因此您可以使用 claude mcp add 添加列出的任何远程服务器。
Anthropic Directory: https://claude.ai/directory
Note: 国内显示不可用,其它支持的地区正常显示可用的 MCP 服务。
安装 MCP 服务器
MCP 服务器可以根据您的需求以多种方式进行配置:
选项 1:添加远程 HTTP 服务器
HTTP 服务器是连接到远程 MCP 服务器的推荐选项。这是云服务最广泛支持的传输方式。
基本语法:
claude mcp add --transport http 'name' 'url'真实示例:连接到 Notion
claude mcp add --transport http notion https://mcp.notion.com/mcp带有 Bearer 令牌的示例
claude mcp add --transport http secure-api https://api.example.com/mcp\ --header "Authorization: Bearer your-token"

在通过 .mcp.json、~/.claude.json 或 claude mcp add-json 中的 JSON 配置 MCP 服务器时,type 字段接受 streamable-http 作为 http 的别名。MCP 规范对此传输使用名称 streamable-http,因此从服务器文档复制的配置无需修改即可工作。
案例实现:
使用魔塔社区里的一个 MCP 服务并运行服务。
MCP 的配置可以直接获取到:
在这里插入图片描述

配置如下的 .mcp.json 并放在根目录下,Claude Code 会识别到,并可以使用该服务。

选项 2:SSE (Server-Sent Events) 传输已弃用。请在可用的地方使用 HTTP 服务器。
选项 3:添加本地 stdio 服务器
Stdio 服务器作为您机器上的本地进程运行。它们非常适合需要直接系统访问或自定义脚本的工具。
Claude Code 在生成的服务器的环境中设置 CLAUDE_PROJECT_DIR,指向项目根目录,因此服务器可以解析项目相对路径,而无需依赖工作目录。这与 hooks 在其 CLAUDE_PROJECT_DIR 变量中接收的目录相同。从服务器进程内部读取它,例如 Node 中的 process.env.CLAUDE_PROJECT_DIR 或 Python 中的 os.environ["CLAUDE_PROJECT_DIR"]。服务器也可以调用 MCP roots/list 请求,该请求返回启动 Claude Code 的目录。
基本语法
claude mcp add [options] 'name' -- 'command' [args...]真实示例:添加 Airtable 服务器
claude mcp add --transport stdio --env AIRTABLE_API_KEY=YOUR_KEY airtable \ -- npx -y airtable-mcp-server
案例实现:
使用 Spring Boot 实现一个 MCP 服务并进行打包。
配置如下的 .mcp.json 并放在根目录下,Claude Code 会识别到,并询问是否启用该服务。

调用 MCP 服务:


WebSocket 服务器保持持久的双向连接,适合于向 Claude 主动推送事件的远程 MCP 服务器。当服务器仅响应请求时,需要改用 HTTP,因为 HTTP 支持 OAuth 和 claude mcp add --transport 标志,而 WebSocket 两者都不支持。
在 .mcp.json 中或使用 claude mcp add-json 配置 WebSocket 服务器:
claude mcp add-json events-server \'{"type":"ws","url":"wss://mcp.example.com/socket","headers":{"Authorization":"Bearer YOUR_TOKEN"}}'
type: "ws" 条目接受与 http 相同的 url、headers、headersHelper、timeout 和 alwaysLoad 字段。身份验证仅限于标头,因此在 headers 中传递静态令牌或在连接时使用 headersHelper 生成一个。claude mcp add --transport 标志不接受 ws。
管理 MCP 服务器
配置后,您可以使用这些命令管理 MCP 服务器:
列出所有配置的服务器
claude mcp list获取特定服务器的详细信息
claude mcp get github删除服务器
claude mcp remove github(在 Claude Code 中)检查服务器状态
/mcp

插件提供的 MCP 服务器
Plugins 可以捆绑 MCP 服务器,在启用插件时自动提供工具和集成。插件 MCP 服务器的工作方式与用户配置的服务器相同。
插件 MCP 服务器的工作原理:
- 插件在插件根目录的
.mcp.json中或在plugin.json中内联定义 MCP 服务器。启用插件时,其 MCP 服务器会自动启动。 - 插件 MCP 工具与手动配置的 MCP 工具一起出现。
- 插件服务器通过插件安装进行管理(不是
/mcp命令)。
插件 MCP 功能:
- 自动生命周期:在会话启动时,启用的插件服务器会自动连接。如果在会话期间启用或禁用插件,请运行
/reload-plugins以连接或断开其 MCP 服务器。 - 环境变量:对捆绑的插件文件使用
${CLAUDE_PLUGIN_ROOT},对持久状态使用${CLAUDE_PLUGIN_DATA}(在插件更新后仍然存在),以及对稳定项目根目录使用${CLAUDE_PROJECT_DIR}。 - 用户环境访问:访问与手动配置的服务器相同的环境变量。
- 多种传输类型:支持 stdio、SSE、HTTP 和 WebSocket 传输(传输支持可能因服务器而异)。
Claude Code 支持 MCP list_changed 通知,允许 MCP 服务器动态更新其可用工具、提示和资源,而无需您断开连接并重新连接。当 MCP 服务器发送 list_changed 通知时,Claude Code 会自动刷新来自该服务器的可用功能。
MCP 其它功能持续更新中…
更多推荐

所有评论(0)