Claude Code 和 Cursor 连接 MCP 之后能做什么

MCP 让 AI 代理从"对话工具"变成"有手的工具"。本文整理 Claude Code 和 Cursor 连接 MCP 服务器的实际能力边界,以及常用场景的配置方式。

Claude Code 和 Cursor 连接 MCP 之后能做什么

MCP(Model Context Protocol)是 Anthropic 制定的开放协议,让 AI 工具能调用外部服务和工具——不只是读代码,而是真的"做事"。Claude Code 和 Cursor 都原生支持 MCP,连接之后 AI 代理能访问数据库、调用 API、操作文件系统、创建 GitHub PR 甚至注册公司实体。本文整理常用场景和配置方式。

MCP 做了什么改变

没有 MCP 时,Claude Code 或 Cursor 只能看你粘贴进来的代码或文件内容,输出也只是文字和代码建议,由你来执行。

有了 MCP 之后:

  • 代理可以主动读取数据库、API、文件系统的实时内容
  • 代理可以执行操作:提 PR、发 Slack 消息、创建 Jira ticket、运行测试
  • 代理可以跨服务组合:读取数据库状态 → 生成代码 → 推送到 GitHub → 通知团队

这个差距类似于"提建议的顾问"和"有执行权的员工"之间的区别。

常用 MCP 服务器类型

代码托管类:GitHub MCP 是最常用的,支持读取仓库内容、创建 issue 和 PR、搜索代码。Claude Code 在任务里引用 issue 号时可以直接拉取 issue 内容而不需要你复制粘贴。

数据库类:PostgreSQL、SQLite、MongoDB 都有对应的 MCP 服务器。连接后代理可以查询表结构、执行只读查询,生成代码时基于真实数据模型而不是你描述的数据模型。

Web 搜索类:Brave Search、Tavily 等提供实时搜索能力,代理可以在写代码过程中主动查找最新的 API 文档或 StackOverflow 答案。

SaaS 工具类:Linear、Jira、Notion、Slack、Google Drive 都有 MCP 服务器。常见用法是:代理完成一个任务后自动更新 Linear ticket 状态,或把结果发到对应的 Slack 频道。

本地文件系统:最基础的 MCP,让代理可以直接读写本地文件,不需要你把内容复制进去。

在 Claude Code 里配置 MCP

Claude Code 的 MCP 配置在 .claude/mcp.json 或全局配置文件里:

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
      }
    },
    "postgres": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-postgres", "${DATABASE_URL}"]
    }
  }
}

配置完成后,在 Claude Code 会话里直接说"看一下 PR #123 的改动"或"查一下 users 表有哪些字段",代理会通过 MCP 自动获取这些信息。

在 Cursor 里配置 MCP

Cursor 的 MCP 配置在 .cursor/mcp.json

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/project"]
    },
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_TOKEN}"
      }
    }
  }
}

Cursor 的 Agent 模式会自动发现可用的 MCP 服务器,在需要时调用对应工具。

权限范围要认真对待

MCP 连接越多,代理能做的事越多,风险也越高。几个值得注意的点:

最小权限原则:GitHub token 只给 issues:read + pull_requests:write 就够了,不需要给整个组织的 admin 权限。数据库连接建议用只读账号,除非任务明确需要写入。

不要连接生产数据库做开发:即使只是"看看表结构",也建议连接开发或测试数据库的副本,而不是生产库。

MCP 服务器本身也是攻击面:你的代理从 MCP 读取的内容(issue 正文、数据库记录)里可能包含提示词注入攻击。这和 GitLost 漏洞的机制完全相同——AI 代理无法可靠区分来自你的指令和藏在数据里的指令。

用 MCP 做什么最划算

从投入产出比来看,最值得配置的 MCP:

  1. GitHub MCP:日常 PR review、issue 处理频率高,代理能直接拉取上下文省去大量复制粘贴
  2. 数据库 MCP(只读):生成数据访问层代码时,代理能基于真实表结构,减少"生成出来的列名和实际不一致"的问题
  3. 本地文件系统 MCP:如果你的项目跨多个目录,让代理直接读文件比你手动提供路径更高效

常见问题

问:MCP 配置会不会影响 Cursor 的 Tab 自动补全速度? 答:不会。MCP 服务器只在代理主动调用时才被激活,Tab 补全走的是不同的路径,互不影响。

问:我能自己写 MCP 服务器吗? 答:可以。MCP 是开放协议,官方提供了 TypeScript 和 Python SDK,按规范实现就能接入 Claude Code 和 Cursor。Anthropic 的文档有完整的服务器开发指南。

问:Cursor 里配置了 MCP,在 Claude Code 里需要重新配置吗? 答:需要。两者的配置文件格式类似但分开管理,共享 token 即可,配置本身要在各自的配置文件里分别写。

参考资料