使用说明

  • 项目简介
    • Agent Deck 提供一个 MCP 管理层:能够注册、启动、分组管理多个 MCP 服务器进程,并通过本地 UNIX socket 将 MCP 客户端的 JSON-RPC 请求转发给对应的 MCP 服务器,同时将 MCP 服务器的响应返回给客户端。
    • 核心组件包括 MCP 进程池(Pool)、MCP Socket 代理(SocketProxy)以及对 MCP 列表的配置、启动和动态代理。
  • 主要功能点
    • MCP 服务器托管与注册:能够从配置中读取 MCP 服务器的名称、启动命令、参数和环境变量,启动独立进程并通过套接字对外提供服务。
    • JSON-RPC 桥接:客户端通过 JSON-RPC 将请求发送到本地 UNIX Socket,代理将请求转发到对应的 MCP 进程,读取返回的 JSON-RPC 响应并返回给客户端。
    • 代理与进程池:通过 SocketProxy 将多台 MCP 服务器打包为一个共享的套接字池,降低多进程并发带来的内存占用,支持按名称路由。
    • 本地与全局范围:支持 LOCAL/PROJECT/GLOBAL 三种作用域,便于对不同会话/项目的 MCP 配置进行管理与切换。
    • 简易 API 与 CLI 整合:提供命令行界面(agent-deck mcp …)对 MCP 服务器列表进行查看、附加/分离等操作(由后端 CLI 调用实现,客户端可通过 MCP 指令与服务器协作)。
  • 安装步骤
    • 需要的环境:Go 1.24+,以及运行环境具备执行 MCP 服务器的依赖工具(如 npx 或指定的 MCP 服务二进制)。
    • 构建与安装:
      • go build ./...
      • 或使用仓库提供的安装方式(如 README 中的安装脚本/Go 安装方式)安装可执行文件。
    • 配置 MCP 服务器(后续章节提供示例配置)后启动 Agent Deck,进入 MCP 管理界面(MCP Manager)。
  • 服务器配置(给 MCP 客户端的配置信息,JSON 格式)
    • 说明:以下 JSON 配置用于 MCP 客户端在启动时了解可用 MCP 服务器的名称、启动命令及参数。实际 MCP 客户端无需包含该服务器侧代码,只需要知道如何连接即可。本仓库内示例 MCP 配置可对应配置文件中的各 MCP 条目。
    • 示例配置(JSON,包含服务器名称、启动命令、参数与简要描述): { "servers": [ { "name": "exa", "command": "npx", "args": ["-y", "exa-mcp-server"], "env": {}, "description": "Web 搜索 via Exa AI MCP 服务" }, { "name": "github", "command": "npx", "args": ["-y", "@modelcontextprotocol/server-github"], "env": {}, "description": "GitHub 端点 MCP 服务(仓库、Issues、PR 等)" }, { "name": "playwright", "command": "npx", "args": ["-y", "@playwright/mcp@latest"], "env": {}, "description": "浏览器自动化 MCP 服务" }, { "name": "memory", "command": "npx", "args": ["-y", "@modelcontextprotocol/server-memory"], "env": {}, "description": "跨会话持久记忆/知识图谱 MCP 服务" } ] } 注释说明
    • name: MCP 的唯一标识符,客户机通过名称连接对应的 Proxy/服务器
    • command/args: MCP 服务器启动所需的命令及参数
    • env: 启动时注入的环境变量(如 API_KEY、Token等,按需配置)
    • description: 对 MCP 服务的简要描述,方便维护与切换
  • 基本使用方法
    • 启动与管理
      • 在 Agent Deck 的 MCP Manager 中查看可用 MCP 列表,启动或停止需要的 MCP 服务
      • 对于需要长期运行的 MCP,建议使用全局或全局范围进行配置管理
    • 运行时交互
      • 客户端通过 JSON-RPC 调用 MCP 服务提供的资源读取、工具调用、Prompts 渲染等能力,Server 将请求通过 Unix Socket 转发到对应的 MCP 进程
    • 资源与工具对齐
      • MCP 服务器暴露的数据资源、工具及 Prompt 模板,通过本代理池进行统一管理,确保 LLM 客户端能够统一调用

信息

分类

AI与计算