使用说明

项目简介

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 创建和回滚等操作。

安装步骤

  1. 环境准备: 确保已安装 Node.js 和 Deno 运行时环境。推荐使用 NPM 进行安装。
  2. NPM 安装 (推荐):
    npm install -g @agentics.org/sparc2
  3. 手动安装:
    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': 自动批准执行的工具列表。客户端可以配置自动批准某些工具,无需用户每次手动确认。

基本使用方法

  1. 启动 MCP 服务器:
    • HTTP API 服务器: 运行命令 'sparc2 api --port 3001' 启动 HTTP API 服务器,默认端口为 3001。
    • Stdio 服务器: 运行命令 'sparc2 mcp' 启动 Stdio 服务器。
  2. 配置 MCP 客户端: 在支持 MCP 协议的 LLM 客户端(如 VS Code 插件)中,配置上述 JSON 格式的服务器连接信息,指定 'command' 和 'args' 以连接到 SPARC2 MCP 服务器。
  3. 与 LLM 交互: 在客户端中,即可通过自然语言指令,利用 SPARC2 MCP 服务器提供的工具和资源,进行代码分析、修改、执行等操作。例如,可以要求 AI 智能体分析代码质量、修复 Bug、执行代码片段、搜索代码模式、创建代码 checkpoint 等。
  4. 测试 MCP 端点: 可以使用 'curl' 命令测试 MCP 服务器的端点,例如:'curl -X GET http://localhost:3001/discover' 获取服务器能力信息。

注意: 请务必配置 'OPENAI_API_KEY' 和 'E2B_API_KEY' 环境变量,以便 SPARC2 MCP 服务器能够正常使用 AI 功能和代码执行环境。对于生产环境,建议配置 'MCP_SECRET_KEY' 以增强 MCP 服务器的安全性。

信息

分类

开发者工具