AgentOS MCP Server
使用说明(Markdown 格式)
-
项目简介
- 该仓库实现了一个完整的 MCP 服务器,遵循 MCP 的核心理念:向客户端提供资源访问、工具注册与执行、以及 Prompt 模板渲染等能力,并通过 JSON-RPC 协议与 Claude Desktop、GitHub Copilot 及 Cursor 等 MCP 兼容客户端进行通信。服务器端负责会话管理、能力声明和可扩展的框架适配。
-
主要功能点
- MCP 核心协议处理:实现对 MCP 请求的解析、路由和响应,遵循 JSON-RPC 的请求/响应模式。
- 资源管理:暴露并读写 VFS/资源相关接口,支持资源清单和具体资源读取。
- 工具注册与执行:注册一组工具并支持通过 MCP 调用执行,返回结构化结果。
- Prompt 渲染:提供 Prompts 的注册与 Get Prompt 的渲染能力,帮助客户端获取模板化对话内容。
- 的框架结构:包含服务器入口、工具实现、资源管理、Prompts、模板库、日志审计等模块,便于扩展与维护。
- 多组件协作:集成 AuditLogger、TemplateLibrary、PolicyEngine、AgentManager 等服务,以支撑完整的治理能力。
- 命令行与运行方式:提供 CLI/ts-node/编译后运行路径,支持 stdio 传输(Claude Desktop 兼容性)与未来的 HTTP/ SSE 等传输扩展。
-
安装步骤
- 需要在具备 Node.js 环境的机器上运行,建议使用 18.x 及以上版本。
- 安装依赖并构建:
- 安装依赖:安装所需的 npm 包(如 @modelcontextprotocol/sdk 等)并配置类型脚本编译环境。
- 构建:执行项目提供的构建命令,将 TS 源码编译为可执行的 JavaScript 产物(dist)。
- 运行方式:
- 通过命令行启动:使用 Node.js 直接运行编译输出(dist/server.js)或通过 npm 脚本启动。
- 若开启 stdio 模式,请使用 Claude Desktop/MCP 客户端的 stdio 接入方式。
- 验证与测试:
- 启动后,使用 MCP 客户端连接并发送基本的 JSON-RPC 请求(如 initialize、tools/list、tools/call 等)来验证服务器是否按预期返回工具、资源及提示信息。
-
服务器配置(MCP 客户端连接信息) 按照 MCP 客户端接入的通用方式,服务器的连接配置如下(以 JSON 形式描述,便于 MCP 客户端读取并用于启动连接;客户端无需此段代码,仅作参考配置): { "serverName": "agentos", "command": "npx", "args": ["-y", "agentos-mcp-server"] } 注释:
- serverName:在 MCP 客户端中用作服务器标识的名称,建议与实际 MCP 服务注册名保持一致。
- command、args:MCP 客户端通过命令行启动服务器的方式,这里对应快速启动脚本的示例,与 Quick Start 的 npx 调用保持一致(如读取 README 中的 MCP 服务器启动方式)。
- 以上配置仅用于 MCP 客户端启动服务器的引导信息,不需要在客户端代码中重复使用。
- 进一步的环境变量、网络端口等配置可在实际部署时通过环境变量和启动参数控制。
-
基本使用方法
- 启动与连接
- 在支持 MCP 的客户端(如 Claude Desktop、Cursor、Copilot)中,将服务器信息配置为上面的 serverName、command、args,即可通过 MCP 客户端建立连接。
- 客户端功能对接
- 客户端发送 JSON-RPC 请求,例如初始化、查询工具列表、执行工具、读取资源、获取 Prompts 等,服务器返回 JSON-RPC 响应或对应的结果对象。
- 扩展与治理
- 通过工具、资源与 Prompts 的扩展接口,开发者可以继续扩展 MCP 服务器的能力(如新增工具、增加资源类型、扩充 Prompts),并通过模板库和策略引擎实现更丰富的治理逻辑。
- 启动与连接
-
备注
- 该 MCP 服务器实现具有较完整的模块化结构,覆盖核心能力并提供扩展点,便于在实际生产环境中作为 LLM 客户端的上下文服务。