使用说明
MCP工具包
在Go中构建模型上下文协议(MCP)服务器的样板,使用 官方Go SDK 对于MCP。该项目为使用可重用组件和示例工具创建MCP实现提供了基础。
🚧 进行中 -该项目正在积极开发和改进中。
特性
- 计算器工具:支持加、减、乘、除运算
- 健康检查端点:Kubernetes就绪活性和就绪性探测
- 结构化JSON日志记录:包含服务器名称和环境元数据
- 环境配置:可通过环境变量进行配置
- 清洁建筑:遵循Go最佳实践
快速开始
1.设置环境
复制环境模板并自定义:
cp .env.dist .env
# Edit .env with your preferred values
2.运行服务器
# Using default configuration
go run ./cmd/mcp-server
# Or with custom environment variables
SERVER_NAME=mcp-server PORT=9090 go run ./cmd/mcp-server
3.为生产而建造
# Build the server
go build -o bin/mcp-server ./cmd/mcp-server
./bin/mcp-server
用法
MCP服务器
运行后,服务器将在端口8080(或您配置的端口)可用:
- MCP端点:
http://localhost:8080/sse - 活体检测:
http://localhost:8080/live - 准备就绪检查:
http://localhost:8080/ready
计算器工具
计算器工具接受:
{
"x": 10.5,
"y": 3.2,
"operation": "add"
}
支持的操作: add, subtract, multiply, divide
健康检查
服务器提供与Kubernetes兼容的健康检查端点:
存活探针
- 端点:
/live - 目的:检查应用程序是否正在运行并且没有死锁
- 响应:带有状态、时间戳、服务名称和版本的JSON
就绪探针
- 端点:
/ready - 目的:检查应用程序是否已准备好为流量提供服务
- 响应:带有状态、时间戳、服务名称和版本的JSON
示例响应
{
"status": "healthy",
"timestamp": "2025-10-27T05:57:11.899468+01:00",
"service": "mcp-server",
"version": "0.0.1"
}
发展
添加新工具
- 在下创建新包
internal/tools/ - 实现工具接口和处理程序
- 在中注册该工具
internal/mcpserver/server.go
许可证
该项目在MIT许可证下分发。看 LICENSE.md 了解更多信息。
