使用说明
项目简介
SPARC2 是一个集成了代码智能分析、安全执行环境和 Model Context Protocol (MCP) 服务器的开发框架。其 MCP 服务器组件旨在为大型语言模型(LLM)客户端提供结构化的上下文服务,使得 AI 智能体能够安全、高效地与代码库进行交互,完成代码分析、修改、测试等任务。SPARC2 MCP 服务器支持 HTTP API 和 Stdio 两种传输协议,可以方便地与各种 LLM 客户端集成。
主要功能点
- 资源管理: 托管和管理代码仓库、向量数据库、安全沙箱等资源,为 LLM 提供统一的数据访问入口。
- 工具注册与执行: 内置代码分析、代码修改、代码执行、版本控制等工具,并支持自定义工具扩展,允许 LLM 通过标准化的 MCP 协议调用这些工具,执行代码相关的操作。
- Prompt 模板: 虽然仓库描述中没有明确提及 Prompt 模板,但作为 MCP 服务器,理论上支持 Prompt 模板的定义和渲染,以支持定制化的 LLM 交互模式。
- 会话管理: 服务器端负责管理客户端会话,维护上下文状态。
- 能力声明: 通过 '/discover' 和 '/capabilities' 接口声明服务器提供的工具和资源,供 MCP 客户端动态发现和使用。
- 多种传输协议支持: 同时支持 HTTP API (通过 'api' 命令启动) 和 Stdio (通过 'mcp' 命令启动) 两种传输协议,满足不同客户端的需求。
- 安全的代码执行环境: 集成 E2B Code Interpreter 提供安全的沙箱环境执行代码,支持多种编程语言。
- 版本控制集成: 深度集成 Git 和 GitHub,支持代码版本控制、checkpoint 创建和回滚等操作。
安装步骤
- 环境准备: 确保已安装 Node.js 和 Deno 运行时环境。推荐使用 NPM 进行安装。
- NPM 安装 (推荐):
npm install -g @agentics.org/sparc2 - 手动安装:
git clone https://github.com/agenticsorg/sparc2.git cd sparc2 deno cache --reload src/cli/cli.ts
服务器配置
MCP 客户端需要配置 MCP 服务器的启动命令 (command) 及其参数 (args) 才能建立连接。以下是 SPARC2 MCP 服务器的典型配置信息,以 JSON 格式提供,请根据客户端的具体配置要求进行调整:
{ "serverName": "sparc2-mcp", "command": "sparc2", "args": ["mcp"], "env": { "OPENAI_API_KEY": "YOUR_OPENAI_API_KEY", "E2B_API_KEY": "YOUR_E2B_API_KEY", "MCP_SECRET_KEY": "YOUR_MCP_SECRET_KEY" }, "autoApproveTools": [ "analyze_code", "modify_code", "execute_code", "search_code", "create_checkpoint", "rollback", "config" ] }
参数注释:
- 'serverName': 服务器名称,客户端用于标识连接的 MCP 服务器。
- 'command': 启动 MCP 服务器的命令。全局 NPM 安装时使用 'sparc2',手动安装或在项目中使用时可能需要使用 './sparc' 或 'deno run ...' 等命令。
- 'args': 传递给启动命令的参数,'["mcp"]' 表示启动 Stdio MCP 服务器。如需 HTTP API 服务器,可替换为 '["api", "--port", "3001"]'。
- 'env': 环境变量配置,包含:
- 'OPENAI_API_KEY': OpenAI API 密钥,用于代码分析和生成等 AI 功能。
- 'E2B_API_KEY': E2B Code Interpreter API 密钥,用于安全代码执行。
- 'MCP_SECRET_KEY': MCP 服务器认证密钥,用于增强安全性(可选,如果需要认证)。
- 'autoApproveTools': 自动批准执行的工具列表。客户端可以配置自动批准某些工具,无需用户每次手动确认。
基本使用方法
- 启动 MCP 服务器:
- HTTP API 服务器: 运行命令 'sparc2 api --port 3001' 启动 HTTP API 服务器,默认端口为 3001。
- Stdio 服务器: 运行命令 'sparc2 mcp' 启动 Stdio 服务器。
- 配置 MCP 客户端: 在支持 MCP 协议的 LLM 客户端(如 VS Code 插件)中,配置上述 JSON 格式的服务器连接信息,指定 'command' 和 'args' 以连接到 SPARC2 MCP 服务器。
- 与 LLM 交互: 在客户端中,即可通过自然语言指令,利用 SPARC2 MCP 服务器提供的工具和资源,进行代码分析、修改、执行等操作。例如,可以要求 AI 智能体分析代码质量、修复 Bug、执行代码片段、搜索代码模式、创建代码 checkpoint 等。
- 测试 MCP 端点: 可以使用 'curl' 命令测试 MCP 服务器的端点,例如:'curl -X GET http://localhost:3001/discover' 获取服务器能力信息。
注意: 请务必配置 'OPENAI_API_KEY' 和 'E2B_API_KEY' 环境变量,以便 SPARC2 MCP 服务器能够正常使用 AI 功能和代码执行环境。对于生产环境,建议配置 'MCP_SECRET_KEY' 以增强 MCP 服务器的安全性。
信息
分类
开发者工具