返回市场
基因伊阿斯-MCP

基因伊阿斯-MCP

作者:GeiserX6 星标更新:2025-06-04

项目介绍

GenieACS-MCP

一个小巧的桥梁,将任何GenieACS实例暴露为一个使用Go语言编写的MCP v1(用于大模型的JSON-RPC)服务器。

Go
Docker Image
GitHub license


✨ 你将获得什么

类型用途MCP URI / 工具ID
资源只读方式消费GenieACS数据genieacs://device/{id}<br>genieacs://file/{name}<br>genieacs://tasks/{id}<br>genieacs://devices/list
工具通过GenieACS对CPE执行操作reboot_device<br>download_firmware<br>refresh_parameter

所有内容都通过单一的JSON-RPC端点(/mcp)公开。
大模型/代理可以:initialize → readResource → listTools → callTool …等等。


🚀 快速开始(Docker Compose)

请遵循来自 https://github.com/GeiserX/genieacs-docker 的说明,该文件已包含在docker-compose文件中。

🛠 本地构建

git clone https://github.com/GeiserX/genieacs-mcp
cd genieacs-mcp

# (可选)从示例创建 .env 文件
cp .env.example .env && $EDITOR .env

go run ./cmd/server

🔧 配置

变量默认值描述
ACS_URLhttp://localhost:7557GenieACS NBI端点(不带尾部斜杠)
ACS_USERadminGenieACS用户名
ACS_PASSadminGenieACS密码

将它们放入.env文件(从.env.example复制)或设置环境变量。

测试

已使用Inspector进行测试,并且目前完全可用。在提交PR之前,请确保此MCP服务器通过这种媒介表现良好。

缺少与实际MCP客户端(客户端大模型)的测试,因此请提交您的PR以改进描述,以防它未能充分匹配此MCP服务器提供的服务。

客户端大模型的示例配置:

{
  "schema_version": "v1",
  "name_for_human": "GenieACS-MCP",
  "name_for_model": "genieacs_mcp",
  "description_for_human": "从GenieACS读取数据并在CPE上运行操作(重启、固件更新、参数刷新)。",
  "description_for_model": "与管理路由器的自动配置服务器(ACS)交互。首先调用initialize,然后在每次其他调用的头部“Mcp-Session-Id”中重复使用返回的会话ID。使用readResource获取以genieacs://开头的URI。使用listTools发现可用操作并使用callTool执行它们。",
  "auth": { "type": "none" },
  "api": {
    "type": "jsonrpc-mcp",
    "url":  "http://localhost:8080/mcp",
    "init_method": "initialize",
    "session_header": "Mcp-Session-Id"
  },
  "logo_url": "https://raw.githubusercontent.com/geiserx/genieacs-docker/main/extra/logo.png",
  "contact_email": "acsdesk@protonmail.com",
  "legal_info_url": "https://github.com/GeiserX/genieacs-mcp/blob/main/LICENSE"
}

致谢

GenieACS – 最佳开源ACS

MCP-GO – 现代MCP实现

GoReleaser – 多架构发布无痛

维护者

@GeiserX

贡献

欢迎参与!打开一个问题或提交PR。

GenieACS-Docker遵循贡献者公约行为准则。