MCP服务器生成工具

一个用于快速生成符合规范的MCP服务器的Go语言工具,提供交互式问答和自动化测试功能。

  • by alesr
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 alesr/mcpgen

使用说明

MCPGEN

一个用于在Go中引导MCP服务器的cookiecutter。

回答几个问题→ 在几秒钟内获得一个干净、经过测试、可供检查员使用的MCP服务器。

需求

  • 转到1.25
  • Node.js(用于检查器检查)
  • npx

快速开始

go install github.com/alesr/mcpgen@latest
mcpgen

你会得到一个小的互动流。按Enter键接受默认值。

CLI标志

您还可以使用标志在非交互模式下运行:

mcpgen --help

仅当stdin为TTY(与跳过检查器检查的现有非交互式默认值匹配)时,才会在标志模式下运行检查器检查。

示例:

mcpgen --name weather --transport stdio
mcpgen --name weather --transport http --no-inspector

它产生了什么

  • cmd/<server>/main.go –入口点
  • internal/mcpapp/ –服务器接线+处理程序
  • internal/mcpapp/tools/handlers/ –存根工具处理程序
  • internal/mcpapp/prompts/ –存根提示
  • internal/mcpapp/resources/ –存根资源
  • internal/mcpapp/stubs/ –共享存根响应
  • 工具/提示/资源的单元测试(仅适用于已启用的功能)

世代之后会发生什么

MCPGEN按以下顺序运行快速健全管道:

  • go mod tidy
  • gofmt -w .
  • go vet ./...
  • go test ./...

如果一切顺利,它将运行检查器检查任何启用的功能。

定制

从编辑开始:

  • internal/mcpapp/tools/handlers/handlers.go
  • internal/mcpapp/prompts/prompts.go
  • internal/mcpapp/resources/resources.go

用您的实际实现替换存根逻辑。

备注

  • 默认传输方式为 标准 (最适合本地工具)。
  • 如果需要联网服务器,可以在设置流程中切换到HTTP。

截图

待办事项

  • 单元测试
  • API软件包
  • 生成中间件
  • 生成http包装器