返回市场
麦普赫兹纳尔

麦普赫兹纳尔

作者:MahdadGhasemian5 星标更新:2025-08-25

项目介绍

MCP Hetzner Go

这是一个用于与Hetzner云API交互的Go模型上下文协议(MCP)服务器。

🌟 特点

🎉 现在是官方Awesome HCloud列表的一部分!

在Claude Desktop中使用

~/Library/Application Support/Claude/claude_desktop_config.json文件中创建以下内容:

{
  "mcpServers": {
    "hetzner": {
      "command": "<你的golang MCP服务器go可执行文件路径>",
      "env": {
        "HCLOUD_TOKEN": "YOUR-HCLOUD-TOKEN"
      }
    }
  }
}

🛠 构建客户端

npm --prefix ./client i
npm --prefix ./client run build

🖥 构建服务器

go mod init github.com/MahdadGhasemian/mcp-hetzner-go
go mod tidy
go build -o mcphetzner
# go run .

🚀 运行客户端

node ./client/build/index.js ./mcphetzner

⚠️ 使用限制

服务器支持两种操作模式,由配置控制:

  • 只读模式:仅允许GETLIST操作。
  • 读写模式:允许GETLIST以及创建/更新/删除操作。

默认情况下,服务器以只读模式启动。
要启用写入操作(如创建、更新或删除资源),必须显式设置配置标志以启用读写模式。

警告:启用写模式允许客户端更改您的Hetzner云资源。
确保您理解其影响并已设置适当的访问控制。

切换模式

编辑您的配置或在启动时传递相关的环境变量/标志:

  • 对于只读(默认;适合检查和监控):
    ./mcphetzner --restriction=read_only
    
  • 对于读写(谨慎使用!):
    ./mcphetzner --restriction=read_write
    

✅ 检查

# 安装golangci-lint然后运行:
golangci-lint run

🔍 检视器

npx @modelcontextprotocol/inspector

🗺 发展路线图

  • 实现所有GETLIST操作:

    • 证书
    • SSH密钥
    • 地点
    • 数据中心
    • 防火墙
    • 浮动IP
    • 服务器
    • 镜像
    • ISO
    • 置放组
    • 主IP
    • 服务器类型
    • 负载均衡器
    • 负载均衡器类型
    • 网络
    • 价格
  • 添加配置标志或设置以:

    • 启用只读模式(仅GET/LIST)
    • 启用读写模式(GET/LIST + 创建/更新/删除)
  • 实现写操作(创建/更新):

    • 证书
    • SSH密钥
    • 防火墙
    • 浮动IP
    • 服务器
    • 镜像
    • 置放组
    • 主IP
    • 负载均衡器
    • 网络
  • 为支持的资源添加删除功能