MCP-GO 工具是一个基于 Go 语言的模型上下文协议(MCP)服务器,能助力语言模型更高效地理解和生成高质量的 Go 代码,遵循既定的模式和惯例。
MCP-GO 工具是一款强大的基于 Go 语言的 MCP 服务器,它提供了符合 Go 风格的代码生成、样式指南和最佳实践,能帮助语言模型更好地理解和生成高质量的 Go 代码。
slog 库实现结构化日志,支持多种输出格式和日志级别。要安装 MCP-GO 工具,请运行以下命令:
go install -o mcp-go-tools ./cmd/mcp-go-tools
mcp-go-tools server --config ./config.yaml
# 输出到文件,使用 JSON 格式
mcp-go-tools server --log-file /var/log/mcp-go.log --log-format json
要在 Cline 工具链中使用 MCP-GO 工具,可以按照以下方式进行配置:
{
"mcp-go": {
"host": "localhost",
"port": 8080,
"config": "./config.yaml"
}
}
该项目使用了 github.com/metoro-io/mcp-golang 库来实现 MCP 协议。服务器实现了以下功能:
golang.org/x/sync 包处理并发请求。MCP-GO 工具遵循 Clean Architecture 设计原则,分为以下几层:
--config:指定配置文件路径,默认为当前目录下的 config.yaml。--log-level:设置日志级别,可选值包括 debug、info、warning、error,默认为 info。--log-format:指定日志输出格式,支持 json 和 plain,默认为 plain。--log-file:指定日志文件路径,默认为标准输出。# 基本配置
global:
log_level: info
log_format: plain
log_file: ./mcp-go.log
# 服务器配置
server:
host: "127.0.0.1"
port: 8080
# 其他自定义配置
custom:
enable_cache: true
cache_timeout: 3600
项目的目录结构如下:
.
├── cmd/
│ └── mcp-go-tools/
│ ├── main.go # 主程序入口
│ └── command/ # 各自的命令实现
├── core/
│ └── code_generator.go # 核心代码生成逻辑
└── repo/
└── template.go # 模板管理与加载
如果您希望为 MCP-GO 工具贡献力量,请参考以下步骤:
如遇任何问题或发现 bug,请在 GitHub 仓库 Issues 区提交问题报告。
MCP-GO 工具遵循 MIT 许可证,允许用户自由使用、修改和分发代码。