agnix MCP 服务器

  • 项目简介
    • agnix 的 MCP 服务器实现旨在把 agnix 的“配置校验与上下文服务”能力对接给 LLM 客户端,通过 MCP 标准向客户端暴露资源、工具、以及 Prompt 模板等能力,使 AI 助手在对话中能查询资源、执行工具、渲染和获取提示模板,并以 JSON-RPC 的形式进行通信。
  • 主要功能点
    • 暴露资源管理能力(读取和访问资源/数据)
    • 注册与执行工具(外部功能调用,例如文件读取/验证等)
    • 定义与渲染 Prompt 模板,支持可定制的交互模式
    • 支持 MCP 的标准请求/响应格式,按 JSON-RPC 进行通信
    • 服务器端会话管理、能力声明与版本控制
    • 支持多种传输协议:stdio、SSE、WebSocket,便于集成到不同运行环境
    • 与客户端协作的安全性与可扩展性设计(如权限、会话、版本锁定等)
  • 安装与运行
    • 依赖与构建:使用 cargo 安装 agnix-mcp 二进制,在仓库中有相应的 MCP 服务实现 crate
    • 运行示例(命令级描述,非代码块):
      • cargo install agnix-mcp
      • 运行二进制 agnix-mcp,监听指定端口,使用自选传输协议(stdio/SSE/WebSocket)进行 MCP 通信
  • 服务器配置(MCP 客户端需要配置启动参数与连接信息,以下为示例配置,实际请以仓库提供的默认参数为准)
    • JSON 配置示例(MCP 客户端需要的连接信息,用于建立与 MCP 服务器的通信): { "serverName": "agnix", "command": "agnix-mcp", "args": [ "--listen=0.0.0.0:5000", "--transport=websocket" ] }
    • 注释说明
      • serverName: MCP 服务器在客户端配置中的标识名称,通常与服务器二进制/服务绑定的名字一致
      • command: 启动 MCP 服务器的系统命令(二进制名),此处为 agnix-mcp
      • args: 启动参数数组,包含监听地址和传输方式等,传输模式可选为 stdio、SSE 或 WebSocket
      • 客户端将依据此配置与 MCP 服务器建立连接,发送诸如读取资源、调用工具、获取 Prompt 的请求,接收相应的 JSON-RPC 响应
  • 使用方法
    • 启动后,客户端通过配置的端口/传输方式与 MCP 服务器建立连接
    • 客户端可以发起 MCP 请求来:
      • 读取/访问资源
      • 调用已注册的工具
      • 获取并渲染 Prompt 模板
    • 服务器返回标准的 JSON-RPC 响应,或发送通知
  • 运行与验证要点
    • 确保 agnix-mcp 二进制已编译并可执行
    • MCP 服务应能在指定端口对外提供 JSON-RPC 接口
    • 通过客户端发送的请求应符合 MCP 规范,服务器应返回合法的响应结构
  • 参考与可扩展性
    • MCP 服务器的实现结合了 agnix-core 的资源、工具、规则与验证能力,便于扩展更多资源类型与工具集成,并通过 JSON-RPC 与 LLM 客户端交互

服务器信息