关于 Dynamic Tool MCP Server
Dynamic Tool MCP Server 是用于测试 MCP 客户端的 SSE 服务,内置工具可在运行时注册新工具并通知客户端工具列表变化。
主要功能
- 01SSE 传输
- 02问候工具
- 03运行时添加工具
- 04通知客户端工具列表变化
适用场景
- 01测试客户端处理工具列表更新
- 02验证新注册的工具可用
MCP 相关
这是通过 SSE 提供 `hello` 和 `add_tool` 的 MCP 服务。添加工具后会通知已连接的客户端,以便其获取更新后的工具列表。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
服务地址
http://localhost:4100/sse一键复制安装命令
Claude CodeTerminal
claude mcp add --transport http dynamic-tool http://localhost:4100/sseCursor.cursor/mcp.json
{"mcpServers":{"dynamic-tool":{"type":"http","url":"http://localhost:4100/sse"}}}在 Cursor 中打开VS Code.vscode/mcp.json
{"servers":{"dynamic-tool":{"type":"http","url":"http://localhost:4100/sse"}}}在 VS Code 中打开Claude Desktopclaude_desktop_config.json
{"mcpServers":{"dynamic-tool":{"type":"http","url":"http://localhost:4100/sse"}}}Windsurf~/.codeium/windsurf/mcp_config.json
{"mcpServers":{"dynamic-tool":{"serverUrl":"http://localhost:4100/sse"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
动态工具 MCP 服务
这是一个基础的 MCP(模型控制协议)服务实现,旨在测试 MCP 客户端。该服务展示了动态工具管理功能,允许在运行时添加工具。
功能
该服务内置两个工具:
-
问候工具(
hello)- 一个简单的问候工具,接收一个姓名参数
- 返回问候消息
- 示例:
hello("World")返回 "Hello, World!"
-
添加工具工具(
add_tool)- 动态向 MCP 服务添加新工具
- 接收工具名称和描述作为参数
- 添加工具后,通知已连接的 MCP 客户端工具列表已更改
- 客户端应请求更新后的工具列表
动态工具管理
该服务实现了 MCP 协议的动态工具管理功能。使用 add_tool 工具添加新工具时:
- 工具会注册到服务中
- 服务会向所有已连接的客户端发送工具列表已更改的通知
- 客户端应请求更新后的工具列表
- 新工具会立即可用
此功能使该服务非常适合测试 MCP 客户端实现,尤其是测试客户端能否:
- 处理动态工具列表更新
- 请求并处理更新后的工具列表
- 支持运行时工具注册
开始使用
-
安装依赖:
npm install -
启动服务:
npm start
默认情况下,服务将在 http://localhost:4100 上运行。
配置
可通过 .cursor/mcp.json 文件配置该服务:
{
"mcpServers": {
"dynamic-tool": {
"url": "http://localhost:4100/sse"
}
}
}
测试
此服务特别适用于测试需要处理动态工具管理的 MCP 客户端实现。借助它,你可以验证客户端是否能够:
- 正确处理工具列表更改通知
- 正确请求并处理更新后的工具列表
- 在新工具注册后立即使用它们
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。