ANT MCP 服务器实现(a-nice-terminal)
使用说明
- 项目简介
- 该仓库实现了一个完整的 MCP 服务器,基于 Model Context Protocol 标准,能够暴露 ANT 的会话、消息、终端等资源,并注册若干工具供 MCP 客户端使用。服务器通过 JSON-RPC/StdIO/网络传输等方式与 AI 客户端通信,支持会话管理、工具执行、以及对 Prompt 的渲染与使用。
- 主要功能点
- MCP 核心能力:注册并暴露多种工具(如列出会话、创建会话、读取/发送消息、终端输入等),客户端通过调用这些工具与 ANT 服务交互。
- 资源托管与访问:对会话、消息、终端输出等资源提供标准化访问入口。
- 会话与终端管理:支持创建、删除、重命名会话, terminal 会话可附带 PTY/tmux 环境并暴露终端输出。
- 安全与接入控制:通过环境变量配置 API Key、允许的主机等,确保仅在授权网络中对 MCP 客户端开放。
- 兼容多传输方式:后端实现支持通过 Socket.IO/REST API 等与 MCP 客户端进行数据交互,便于扩展传输通道(如 Stdio、SSE、WebSocket)。
- 安装步骤
- 先确保 Node.js 环境就绪,并在仓库根目录执行依赖安装(推荐使用 pnpm,但 npm/yarn 也可)。
- 安装完成后,启动 MCP 服务器(示例:使用 tsx 直接运行 TypeScript 入口)。
- 服务器默认监听的端口为 3000,若需自定义,请通过 ANT_PORT/ANT_HOST 环境变量设置。
- 服务器配置(MCP 客户端需要)
说明:MCP 客户端需要提供启动配置,以告知服务器名称、启动命令及参数等。以下是基于本仓库 MCP 服务器的示例配置,包含服务器名称、启动命令与参数,以及环境变量注释,便于直接填写到 MCP 客户端的配置中。真实客户端不需要包含代码,仅作配置参照。
{
"mcpServers": {
"ant": {
"name": "a-nice-terminal",
"command": "npx",
"args": ["tsx", "packages/mcp/src/index.ts"],
"env": {
"ANT_PORT": "3000",
"ANT_HOST": "127.0.0.1"
}
}
}
}
说明:
- name: MCP 服务器在客户端中的标识名,与服务器端实际名称一致(来自本仓库的 MCP 服务器名称为 a-nice-terminal)。
- command/args: 启动 MCP 服务器的命令与参数,客户端会通过该方式启动并连接服务器。
- env: 启动时的环境变量,常用包括 ANT_PORT、ANT_HOST,用于指定后端服务器实例的位置。
- 基本使用方法
- 以 MCP 客户端(如 Claude Code/Cursor 等)连接到上述服务器配置的 MCP 服务。
- 通过 MCP 提供的工具(如 ant_list_sessions、ant_read_messages、ant_terminal_input 等)对 ANT 进行会话管理、读取/写入消息、控制终端等操作。
- 服务器将返回 JSON-RPC 风格的结果,供 MCP 客户端处理展示或进一步处理。