Cursor MCP 使用说明
项目简介
Cursor MCP 是一个桥接工具,旨在连接 Cursor 编辑器和 Claude 桌面应用,实现基于 Model Context Protocol (MCP) 的 AI 功能集成。它允许 Cursor 编辑器通过标准化的 MCP 协议与包括 Claude 在内的多种 AI 模型和服务进行交互,从而实现代码自动生成、编辑器自动化和上下文感知的功能增强。
主要功能点
- AI 模型集成: 无缝集成 Claude 桌面应用,并支持其他兼容 MCP 协议的 AI 服务。
- MCP 协议支持: 基于标准 MCP 协议与 AI 模型通信,支持可扩展的插件系统以集成更多 MCP 服务。
- 跨平台窗口管理: 允许程序化地管理 Cursor 编辑器在不同操作系统上的窗口,包括窗口聚焦、最小化、恢复和排列等。
- 输入自动化: 提供 AI 驱动的键盘和鼠标输入自动化能力,用于代码生成、重构、上下文感知补全和多光标编辑等。
- 进程管理: 支持 AI 编排的 Cursor 实例管理,实现智能工作区组织和会话恢复。
安装步骤
请根据您的操作系统选择相应的安装步骤:
Windows:
- 下载最新版本的 'cursor-mcp-windows.zip' 压缩包。
- 解压压缩包到本地目录。
- 以管理员身份运行 'windows.ps1' 脚本完成安装。
macOS:
- 下载最新版本的 'cursor-mcp-macos.zip' 压缩包。
- 解压压缩包到本地目录。
- 运行 'macos.sh' 脚本,可能需要 'sudo' 权限。
Linux:
- 下载最新版本的 'cursor-mcp-linux.zip' 压缩包。
- 解压压缩包到本地目录。
- 运行 'linux.sh' 脚本,可能需要 'sudo' 权限。
详细安装和配置信息请参考仓库 README 文件。
服务器配置
MCP 客户端需要配置以下 JSON 信息以连接 Cursor MCP 服务器。请注意 'command' 字段需要配置为 Cursor MCP 服务器的启动命令,通常是安装目录下 'cursor-mcp' 可执行文件的路径。
{ "serverName": "CursorMCP", "command": "/path/to/cursor-mcp/cursor-mcp", // 请替换为 Cursor MCP 服务器的启动命令路径 "args": [], "protocol": "stdio" }
配置参数说明:
- 'serverName': MCP 服务器的名称,可以自定义,用于在客户端标识不同的 MCP 服务器连接。
- 'command': 重要,Cursor MCP 服务器的启动命令。需要指向 Cursor MCP 的可执行文件。请根据您的安装位置进行调整。
- 'args': 启动命令的参数,本服务器默认无需额外参数,保持为空数组即可。
- 'protocol': 指定 MCP 通信协议,Cursor MCP 服务器使用 'stdio' 标准输入输出协议。
基本使用方法
以下 TypeScript 代码展示了如何使用 Cursor MCP 提供的 'CursorInstanceManager' 和 'WindowManager' 服务来管理和自动化 Cursor 编辑器:
启动和管理 Cursor 实例:
import { CursorInstanceManager } from 'cursor-mcp' // 获取 Cursor 实例管理器 const manager = CursorInstanceManager.getInstance() // 启动一个新的 Cursor 实例 await manager.startNewInstance() // 获取所有正在运行的 Cursor 实例 const instances = await manager.getRunningInstances() // 聚焦到指定的 Cursor 实例 await manager.focusInstance(instances[0]) // 关闭所有 Cursor 实例 await manager.closeAllInstances()
窗口管理:
import { WindowManager } from 'cursor-mcp' const windowManager = WindowManager.getInstance() // 查找所有 Cursor 编辑器窗口 const windows = await windowManager.findCursorWindows() // 聚焦到某个窗口 await windowManager.focusWindow(windows[0]) // 并排排列窗口 await windowManager.arrangeWindows(windows, 'sideBySide') // 最小化所有窗口 for (const window of windows) { await windowManager.minimizeWindow(window) }
输入自动化:
import { InputAutomationService } from 'cursor-mcp' const inputService = InputAutomationService.getInstance() // 输入文本 await inputService.typeText('Hello, World!') // 发送键盘快捷键 (例如复制) if (process.platform === 'darwin') { await inputService.sendKeys(['command', 'c']) } else { await inputService.sendKeys(['control', 'c']) } // 鼠标操作 await inputService.moveMouse(100, 100) await inputService.mouseClick('left') await inputService.mouseDrag(100, 100, 200, 200)
请参考仓库中的 'README.md' 和示例代码以获取更详细的使用方法和 API 文档。
信息
分类
开发者工具