MCP开发工具包

用于MCP(Model Context Protocol)开发的Rust工具包,提供热重载、调试和测试MCP服务器的工具。

  • by 0xErgod
  • Rust
  • 本地部署
  • 更新于
在 GitHub 查看 abderraouf-belalia/mcp-kit

使用说明

mcp试剂盒

用于MCP(模型上下文协议)开发的Rust工具包,提供用于热重载、调试和测试MCP服务器的工具。

工具

工具 说明
mcp-hmr 支持Windows卷影复制的MCP服务器的热重载代理
mcp客户端 用于调试MCP服务器的交互式CLI客户端

mcp-hmr

MCP服务器的热模块重新加载。文件更改时自动重启服务器,无缝初始化回放,实现不间断开发。

mcp-hmr ./my-mcp-server --watch ./src

特征:

  • 文件更改时自动重新启动
  • Windows卷影复制支持(避免文件锁定)
  • MCP初始化缓存和回放
  • 重启期间的消息缓冲

mcp客户端

用于连接和调试MCP服务器的交互式REPL。带有JSON-RPC消息检查的完整协议日志记录。

mcp-client --verbose --log-file debug.log
mcp> connect mcp-hmr ./my-server
mcp[my-server]> tools
mcp[my-server]> call get_data {"id": 123}

特征:

  • 带有历史记录的交互式命令行界面
  • 完整的JSON-RPC协议日志记录
  • 工具、资源和提示支持
  • 打印输出很漂亮

安装

来自crates.io(即将推出)

cargo install mcp-hmr
cargo install mcp-client

来源

# Install both tools
cargo install --path crates/mcp-hmr
cargo install --path crates/mcp-client

# Or build without installing
cargo build --release

二进制文件将在以下网址提供:

  • target/release/mcp-hmr (或 .exe 在Windows上)
  • target/release/mcp-client (或 .exe 在Windows上)

快速开始

开发工作流程

  1. 使用热重新加载启动MCP服务器:

    mcp-hmr ./target/release/my-server --watch ./src
    
  2. 连接mcp客户端进行调试:

    mcp-client --verbose
    mcp> connect mcp-hmr ./target/release/my-server
    
  3. 编辑服务器代码-mcp-hmr会自动重新启动并重新初始化

与MCP检查员一起

mcp-inspector mcp-hmr ./my-server

建筑

┌─────────────┐     ┌──────────┐     ┌────────────┐
│ mcp-client  │     │ mcp-hmr  │     │ MCP Server │
│   (debug)   │────►│  (proxy) │────►│   (your    │
│             │◄────│          │◄────│   code)    │
└─────────────┘     └──────────┘     └────────────┘
                          │
                          ▼
                    File Watcher

已知限制

这些工具主要通过以下方式进行了测试:

  • 仅限stdio传输 -不支持HTTP/SSE传输
  • 基于rmcp的服务器 -使用使用构建的MCP服务器进行测试 rmcp 在Rust

其他MCP服务器实现(TypeScript SDK、Python SDK等)应该可以工作,但测试不太彻底。如果您遇到兼容性问题,请打开问题。

发展

# Build all crates
cargo build

# Run tests
cargo test

# Build release
cargo build --release

许可证

麻省理工学院

相关项目