Mesnada MCP 服务端

使用说明(中文,简明易懂):

  • 项目简介

    • Mesnada 是一个以 MCP(Model Context Protocol)为核心的后端服务框架,设计目标是向大型语言模型客户端提供可扩展的上下文服务。它具备资源管理、工具注册与执行、以及 Prompt 模板渲染等能力,并通过 JSON-RPC 与客户端通信,支持多种传输方式。
  • 主要功能点

    • MCP 服务器端:实现核心 MCP 请求/响应的处理逻辑(初始化、查询工具、调用工具、获取提示/模板等)。
    • HTTP 与 stdio 双传输:提供 HTTP 流式接口和 stdio 传输供不同客户端接入。
    • 工具注册与执行:内置多种工具,例如 spawn_agent、get_task、list_tasks、wait_task 等,支持任务管理的远程调用。
    • 任务编排与管理:支持任务的创建、启动、等待、取消、暂停、重试、清理、以及依赖关系。
    • 配置与扩展性:提供 MCP 配置转换、支持多引擎模型配置、ACP(Agent Client Protocol)等扩展能力。
    • 日志与观测:将服务器端日志输出通过 UI/CLI 可观测,提供健康端点和状态监控。
  • 安装步骤

    • 获取源码后在项目根目录执行构建。
    • 运行前需要 Go 环境,执行 go mod tidy,随后构建并执行 mesnada 二进制。
    • 启动时可通过命令行参数指定主机、端口、配置文件等。
  • 服务器配置(示例,供 MCP 客户端参考;客户端本身不需要读取以下内容,但用于理解服务器提供的 MCP 服务信息)

    • MCP 服务端名称:mesnada-http
    • 传输类型:HTTP
    • 访问地址:127.0.0.1:8765/mcp
    • 功能描述:通过 HTTP 的 JSON-RPC 形式提供 MCP 的初始化、工具查询与调用等能力。
    • 备注:若客户端通过 Copilot 等工具的 MCP 配置引入 Mesnada,通常将上述地址配置到 MCP 服务器列表中,让 Copilot 客户端与之对接。

    具体信息(JSON 结构说明,供理解之用,不作为代码块直接执行):

    • mcpServers 根对象包含一个名为 mesnada-http 的服务器条目。
    • mesnada-http 的类型为 http,连接 URL 为 http://127.0.0.1:8765/mcp。
    • 该条目可额外携带需要的请求头信息、鉴权参数等(若有)。
    • 说明:MCP 客户端需要的仅是服务器地址与传输方式,并不强制要求给出实际命令行参数;Mesnada 会在服务端通过内部逻辑处理 MCP 请求并返回结果。
  • 基本使用方法

    • 启动 Mesnada 服务端,选择 HTTP 或 stdio 传输模式。
    • 如果使用 HTTP:客户端通过 MCP JSON-RPC 调用初始化、列出工具、调用工具等接口。
    • 若客户端使用 stdio:通过标准输入输出与 Mesnada 进行 JSON-RPC 交互。
    • 使用 ACP/多引擎场景时,Mesnada 提供相应的扩展入口,允许 ACP 客户端注册并通过工具调用进行任务调度。
    • 监控与健康:通过 /health(健康端点)和日志查看运行状态,必要时可通过 UI 进行图形化观测。

服务器信息