Nestr MCP 服务端
使用说明(Markdown 格式)
-
项目简介
- 该仓库实现一个基于 MCP 的服务端,用于向 AI 助手(如 Claude 等)暴露 Nestr 工作区内的资源、工具和提示模板,并通过 JSON-RPC 与客户端通信。服务端支持多种传输模式(标准输入输出、SSE、WebSocket 等)以及会话管理、能力声明、以及对外部 API 的访问。
-
主要功能点
- 提供 Tools、Resources、Prompts 等 MCP 资源的注册、读取和执行能力
- 支持通过 JSON-RPC 处理工具列表、调用工具、列出资源、读取资源等请求
- 内置 OAuth、API Key 等认证机制,支持会话化的 HTTP 传输和 STDIO 传输
- 集成 MCP Apps(交互式 UI 组件)来渲染和操作工作项
- 与 Nestr REST API 对接,读取工作区、圆圈、角色、项目等数据
- 提供可扩展的分析与日志(包括 GA4/MCPCat 集成的分析钩子,默认可关闭)
- 具备完整的代码结构,涵盖服务端核心、传输实现、OAuth 授权、工具实现、应用 UI、以及对 MCP 的全栈支持
-
安装步骤
- 克隆仓库并进入项目目录
- 安装依赖:npm install
- 设置 API Key 或 OAuth:导出 NESTR_API_KEY 或 NESTR_OAUTH_TOKEN(本地开发)或通过环境变量配置
- 运行方式:
- 直接在 stdio 模式下运行(开发时常用):npm run dev
- 以 HTTP 传输进行本地测试:npm run dev:http
- 生产构建与运行:npm run build,然后部署构建产物
- 使用 MCP Inspector 进行测试:npm run inspect
- 参考 README 提供的示例环境变量和连接信息,确保 MCP 客户端能正确连接
-
服务器配置(MCP 客户端的连接配置示例) 说明:以下 JSON 配置用于 MCP 客户端对接该服务器的基础信息。实际连接时客户端会需要该服务器的启动命令和参数来建立连接;此处仅展示服务器端名称、启动命令与参数以及必要的认证信息占位,帮助理解如何在客户端配置连接。 { "serverName": "nestr-mcp", "command": "npx", "args": ["-y", "@nestr/mcp"], "env": { "NESTR_API_KEY": "<your-api-key>" } // 说明:NESTR_API_KEY 或 NESTR_OAUTH_TOKEN 两者需其一有效,示例中使用 API Key 进行全工作区访问。 }
-
基本使用方法
- 启动并接入 MCP 客户端后,AI 助手可以请求工作区数据、执行工具、获取资源以及使用 MCP Apps 进行交互
- 通过 JSON-RPC 与 MCP 客户端进行通信,支持的请求包括列出工具、调用工具、列出资源、读取资源等
- 在需要时,开发者可通过开启/关闭分析跟踪、调整传输方式、以及 OAuth 流程来实现安全与扩展性