使用说明(Markdown格式)

  • 项目简介

    • 该仓库实现了一个 MCP 服务端组件,负责托管和管理资源、注册并执行 Tools,以及定义和渲染 Prompt 模板,供 LLM 客户端(如 AI 代理、前端应用等)以统一的 MCP 协议进行交互。
    • 核心架构包含一个 MCP 服务器、一个提供对外 RPC 的后端服务,以及一个与前端 Web 界面协同工作的广播/通知系统。
  • 主要功能点

    • MCP 服务器核心:注册 Tools、处理工具调用、管理会话与能力声明。
    • 工具与交互:实现 ask_question、work_report 等 MCP Tool,并通过 MCP-Go 框架暴露接口。
    • 与外部服务的集成:通过 Connect RPC 调用 agentassistproto 提供的问答和工作报告能力,完成对后端的请求处理。
    • Web 前端通信:通过广播系统将前端请求/结果分发给连接的 MCP 客户端,以及对前端事件进行通知。
    • 配置与启动化:提供命令行参数和配置文件来启用 MCP 服务、设定服务器地址、令牌等安全信息。
  • 安装步骤

    • 构建 MCP 服务端组件
      • go build -o agentassistant-mcp ./cmd/agentassistant-mcp
    • 构建后端服务器组件
      • go build -o agentassistant-srv ./cmd/agentassistant-srv
    • (可选) 构建前端 Web 界面及静态资源依赖(如需本地打包运行)
  • 服务器配置(MCP 客户端需要的配置,JSON 格式示例)

    • server_name: Agent-Assistant MCP Server
    • command: ./agentassistant-mcp
    • args: ["-host","127.0.0.1","-port","8080","-token","your-token","-web"]
    • 说明:MCP 客户端通过这个配置启动并连接到 MCP 服务器。具体参数含义如下:
      • server_name: MCP 服务端的名称,便于识别与日志追踪。
      • command: 启动 MCP 服务器的可执行文件路径。
      • args: 启动参数,例如主机、端口、访问令牌,以及是否打开网页界面等选项。
    • 备注:实际客户端连接需要的详细参数可能随实现版本略有不同,请参考仓库中 cmd/agentassistant-mcp/main.go 的命令行选项和默认值(host、port、token、web 等),以及 agentassistproto 的工具定义。
  • 基本使用方法

    1. 启动 MCP 服务器进程
      • 运行 agentassistant-mcp 程序,确保服务端口对 MCP 客户端可访问,并使用合适的 token。
    2. 启动主服务端
      • 运行 agentassistant-srv,提供 Web 界面与后端能力的前端对接入口。
    3. 使用 MCP 客户端连接
      • 将 MCP 客户端配置为上述 JSON 配置,启动客户端以建立与 MCP 服务器的连接。
    4. 交互流程
      • MCP 客户端通过 ask_question、work_report 等工具向 MCP 服务器发起任务,服务器通过后端 RPC 调用进行处理并将结果返回给客户端,同时可通过广播系统将结果和通知推送给有关的前端用户。
  • 运行与验证

    • 运行 go test ./... 进行相关单元测试(如存在的测试用例覆盖广泛逻辑)。
    • 使用前端界面或其他 MCP 客户端发送示例请求,观察服务器对接收请求的处理流程和返回结果。
  • 备注

    • MCP 服务端实现依赖于 agentassistproto 提供的 RPC 接口,以及 internal/service、internal/broadcaster 等组件的协作。
    • 该实现包含一个 WebSocket 广播层,负责将 MCP 请求分发给前端网页客户端,并在前端返回后处理结果。

信息

分类

AI与计算