LabMCP-MCP服务器模板集合
一组用于构建不同语言的MCP(模型上下文协议)服务器的最小生产就绪模板。
概述
此存储库包含MCP服务器的参考实现,展示了构建与Claude和其他MCP兼容客户端集成的工具的最佳实践。每个模板都实现了一个骰子滚动工具作为工作示例。
可用模板
🦎 zig-mcp模板
语言: Zig 0.15.1 依赖关系: 无(仅使用Zig标准库) 构建系统: zig建筑
现代Zig中的最小MCP服务器实现,展示了内存安全系统编程。
- ✅ 零外部依赖
- ✅ 快速编译
- ✅ 类型安全的JSON处理
- ✅ 全面的测试套件
🔧 cpp20 mcp模板
语言: C++20 依赖关系: RapidJSON(仅标题) 构建系统: 制造
使用现代C++20特性的干净、面向对象的MCP服务器实现。
- ✅ 现代C++特性(指定初始化器,std::可选)
- ✅ RapidJSON用于快速JSON解析
- ✅ RAII和智能指针
- ✅ 简单的Makefile构建
快速开始
Zig模板
cd zig-mcp-template
zig build
./zig-out/bin/zig-mcp-templateC++模板
cd cpp20-mcp-template
make
./build/cpp20-mcp-template测试
这两个模板都包含测试脚本:
# Zig
cd zig-mcp-template && ./test_server.sh
# C++
cd cpp20-mcp-template && ./test_server.sh与Claude Desktop一起使用
添加到您的Claude Desktop配置(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS上):
{
"mcpServers": {
"zig-dice": {
"command": "/path/to/LabMCP/zig-mcp-template/zig-out/bin/zig-mcp-template"
},
"cpp-dice": {
"command": "/path/to/LabMCP/cpp20-mcp-template/build/cpp20-mcp-template"
}
}
}特性
所有模板都实现:
- MCP协议:完整的JSON-RPC 2.0实现
- 工具注册表模式:基于回调的调度的集中工具注册
- 摇骰子:接受符号如“3d8”的示例工具
- 错误处理:正确的错误代码和消息
- stdio运输:标准输入/输出通信
- 测试:包括集成测试脚本
- 易于扩展:在不修改核心调度逻辑的情况下添加新工具
项目结构
LabMCP/
├── README.md # This file
├── zig-mcp-template/
│ ├── README.md
│ ├── PLAN.md
│ ├── STATUS.md
│ ├── build.zig
│ ├── src/
│ └── test_server.sh
└── cpp20-mcp-template/
├── README.md
├── PLAN.md
├── STATUS.md
├── Makefile
├── src/
├── third-party/
└── test_server.sh创建自己的工具
这两个模板都使用工具注册表模式以便于扩展:
Zig模板
- 在中创建新文件
src/tools/(例如。,mytool.zig) - 定义常量:
NAME,DESCRIPTION,SCHEMA - 实施
execute()函数匹配ToolExecuteFn签名 - 向添加一个条目
TOOLS数组insrc/tools/registry.zig - 构建和测试-无需更改调度逻辑!
C++模板
- 在中创建新文件
src/tools/(例如。,MyTool.cpp) - 执行工具逻辑
- 将其注册到工具向量中
main.cpp - 构建和测试
这两种方法都消除了硬编码的工具处理,并使用了集中注册。
资源
语言比较
| 特性 | Zig | C++20 |
|---|---|---|
| 构建速度 | ⚡ 非常快 | 🚀 快速 |
| 依赖关系 | 无 | 仅RapidJSON |
| 内存安全 | ✅ 内置 | 手动(RAII) |
| 学习曲线 | 中等 | 中等偏高 |
| 成熟 | 新兴 | 成熟 |
| 性能 | 优秀 | 优秀 |
贡献
每个模板都是自包含的,可以独立使用。请随意:
- 根据您的需求进行分叉和修改
- 添加新的工具实现
- 提交改进
- 用其他语言创建模板
许可证
MIT许可证-有关详细信息,请参阅各个模板目录。
支持
如有疑问或问题:
- 检查单个模板README文件
- 查看PLAN.md文件以了解架构详细信息
- 检查STATUS.md文件的当前状态
______________________________________________________________________
内置: Zig 0.15.1 | C++20 | RapidJSON 协议: MCP 2024-11-05 状态: ✅ 生产就绪
