项目简介

Cursor AI代理MCP服务器是一个基于Model Context Protocol (MCP) 构建的后端服务,它使得大型语言模型(LLMs)能够以标准化的方式,通过JSON-RPC协议与Cursor的后台AI代理API进行通信。这意味着LLMs可以编程化地创建、管理和操作Cursor的强大后台代理,从而实现自主的代码开发和项目管理。

主要功能点

  • AI代理管理: 提供了创建新的后台AI代理、列出所有现有代理、获取特定代理的详细状态和结果、删除代理以及向运行中的代理添加后续指令等全面功能。
  • 代码仓库与模型访问: LLM可以查询用户可访问的GitHub仓库列表,并获取用于后台代理的可用AI模型清单。
  • 会话与历史记录: 能够访问AI代理的完整对话历史,并接收实时的状态更新,确保LLM对代理工作进程有充分的了解。
  • 安全与质量: 项目内置了持续集成/部署(CI/CD)流程、代码质量检查(ESLint)、安全漏洞扫描和分支保护规则,保障了服务器代码的质量和运行的安全性。

安装步骤

  1. 获取Cursor API Key:
    • 打开Cursor IDE。
    • 进入“设置” → “功能” → “后台代理”部分。
    • 在此生成或复制您的API密钥。请务必妥善保管此密钥,因为它提供对您Cursor账户的完全访问权限。
  2. 安装服务器:
    • 在您的系统上需要安装 Node.js 18 或更高版本。
    • 打开终端或命令行工具,根据您的需求选择安装方式:
      • 全局安装 (推荐):
        npm install -g cursor-agent-mcp
      • 使用npx (无需安装,直接运行):
        npx cursor-agent-mcp

服务器配置

MCP服务器旨在与各种MCP客户端(如Claude Desktop, ChatGPT, Codex CLI等)配合使用。为了使您的MCP客户端能够连接到这个MCP服务器,您需要在客户端的配置文件中添加相应的配置信息。

以下是MCP客户端配置的关键参数和示例:

  • 服务器名称 ('server name'): 您可以为这个MCP服务器实例自定义一个唯一的名称,例如 'cursor-background-agents'。
  • 启动命令 ('command'): MCP客户端将执行的命令,用于启动这个MCP服务器进程。通常是 'npx' 或者 'cursor-agent-mcp' (如果您已全局安装)。
  • 命令参数 ('args'): 传递给启动命令的参数。例如,如果使用 'npx',参数可以是 '["cursor-agent-mcp@latest"]'。如果已全局安装 'cursor-agent-mcp' 并希望通过标准输入/输出 (Stdio) 模式运行,参数可以是 '["stdio"]'。
  • 环境变量 ('env'): 用于向MCP服务器进程传递敏感信息或配置。
    • 'CURSOR_API_KEY' (必填): 您的Cursor API密钥。
    • 'CURSOR_API_URL' (可选): Cursor API的基准URL,默认值为 'https://api.cursor.com'。

MCP客户端配置示例 (JSON格式): 您可以直接将以下JSON片段添加到您的MCP客户端配置文件(例如Claude Desktop的'claude_desktop_config.json')中,请务必将 'your_cursor_api_key_here' 替换为您的实际Cursor API密钥。

{
  "mcpServers": {
    "cursor-background-agents": {
      "command": "npx",
      "args": ["cursor-agent-mcp@latest"],
      "env": {
        "CURSOR_API_KEY": "your_cursor_api_key_here",
        "CURSOR_API_URL": "https://api.cursor.com"
      }
    }
  }
}

对于ChatGPT或OpenAI平台自托管: 如果您需要将此MCP服务器暴露给外部服务(如ChatGPT或OpenAI平台),您可以自托管HTTP服务器并使用工具(如ngrok)将其暴露到公网。详细的自托管和ChatGPT连接配置步骤,请参考项目README文件中的'🌐 Self-Hosting for OpenAI Platform & ChatGPT'部分。

基本使用方法

一旦MCP服务器在您的LLM客户端中配置并启动,LLM便能够通过调用服务器提供的工具来与Cursor后台AI代理进行交互。LLM将使用自然语言或结构化请求来触发这些工具的功能。

以下是一些LLM可能使用的示例场景:

  • 列出AI代理: LLM可能会发出请求,例如:“列出我所有正在运行的Cursor AI代理。” 这会调用 'listAgents' 工具。
  • 创建AI代理: LLM可以指示:“创建一个AI代理,让它在 'https://github.com/myuser/my-project' 仓库中修复所有TypeScript错误并添加单元测试。” 这会调用 'createAgent' 工具。
  • 获取代理详情: LLM可以询问:“查看ID为 'agent-xyz-123' 的AI代理的当前状态和进度。” 这会调用 'getAgent' 工具。
  • 添加后续指令: 如果一个代理正在运行,LLM可以发出指令:“告诉ID为 'agent-abc-456' 的AI代理,除了现有任务外,它还需要为新功能更新文档。” 这会调用 'addFollowup' 工具。
  • 获取对话历史: LLM可以请求:“获取ID为 'agent-def-789' 的AI代理的完整对话历史记录。” 这会调用 'getAgentConversation' 工具。

信息

分类

开发者工具