Cursor
扩展与集成
MCP 外部数据源、Skills 技能、Hooks 钩子与 Subagents 子代理。
通过 MCP、Skills、Hooks、Subagents 等扩展机制,Cursor 可以连接外部数据源、封装团队知识、自动化重复流程。
MCP:连接外部工具
MCP(Model Context Protocol)让 AI 连接外部工具和数据源。在项目根目录创建 .cursor/mcp.json:
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}" }
}
}
}常用集成:
| 集成 | 用途 |
|---|---|
| GitHub | PR 管理、Issues 操作、代码搜索 |
| Supabase | 数据库查询、表结构管理 |
| Postgres | 直接查询 PostgreSQL |
| Context7 | 实时文档查询 |
注意
不要在 mcp.json 中硬编码密钥,使用 ${VAR_NAME} 引用环境变量。MCP 工具不宜太多(3–5 个),每个 Tool 定义都会占用上下文窗口。
Skills:可复用知识
Skills 定义在 .cursor/skills/*/SKILL.md 中,与始终生效的 Rules 不同,Skills 只在相关时被 AI 触发。
<!-- .cursor/skills/create-api-route/SKILL.md -->
# 创建 API 路由
1. 在 `src/app/api/` 下创建 `route.ts`
2. 使用标准响应格式 `{ code, message, data }`
3. 添加 Zod 输入验证
4. 添加错误处理| 对比 | Rules | Skills |
|---|---|---|
| 触发 | 自动/条件注入 | AI 按需触发 |
| 内容 | 约束和规范 | 工作流和操作指南 |
| 上下文 | 始终/条件占用 | 仅触发时占用 |
Hooks:自动化钩子
Hooks 在特定事件时确定性执行,不依赖 AI "记住"要做某事。
{
"hooks": {
"post_generation": [
{ "command": "npx prettier --write", "description": "格式化生成的代码" }
]
}
}支持的事件:file_saved、file_created、pre_commit、post_generation。适合格式化、Lint、安全扫描等不能遗漏的操作。
Subagents:并行子代理
子代理在独立上下文中运行,不污染主对话。内置三种:
| 子代理 | 用途 |
|---|---|
| Explore | 代码库研究和分析 |
| Shell | 终端命令执行 |
| GeneralPurpose | 通用多步骤任务 |
典型用法:
使用子代理分析项目中所有 API 路由,列出方法、路径和中间件。同时执行:子代理 A 重构 UserService,子代理 B 为 OrderService 写测试。