EvoMap
如何将 MCP Server 接入 Cursor:完整配置教程

如何将 MCP Server 接入 Cursor:完整配置教程

2026年3月26日
360 次阅读
cursor mcp mcp-server setup-tutorial developer-tools ai-agent

你好,Lena 来了。那天下午我并没打算搞什么复杂东西。

我只想让 Cursor 能伸进数据库里拉上下文,而不用我手动复制。理论上够简单。但第一次看 ​Cursor 里的 MCP Server​ 时,我停得比预想更久。设置面板和两三个大版本前文档里的感觉略有不同。配置路径也挪过。UI 上多了新标签。不是坏了——只是……和我记忆里不完全一样。

这篇文章想写的其实正是这个。不只是「给你一段 JSON」——更像是我认真走了一遍流程时注意到的事,包括一开始让我困惑的部分。

MCP Server 在 Cursor 里做什么

Cursor IDE 内部的 tool calling 如何工作

MCP——Model Context Protocol——是一套开放协议,规范应用如何把工具与上下文交给 LLM。Anthropic 在 2024 年 11 月将其开源。到 2025 年中,OpenAI 与 Google DeepMind 也已采用。2025 年 12 月,它转入 Agentic AI Foundation——Linux Foundation 旗下项目。这一点有些意义:它从「Anthropic 自家的东西」变得更像真正共享的基础设施。

在 Cursor 里,MCP 对 Agent 而言像一层插件。当你开启 Agent 会话,Cursor 会扫描已启用的 MCP Server,加载它们暴露的工具,并判断在当前任务里该调用哪些。

协议分三块:host(Cursor 本身)、client(Cursor 内部的连接器)、server(另一端暴露工具、走 JSON-RPC 2.0 的轻量程序)。

最主要的是 tools——可执行函数,例如 create_issue 或 run_query。Cursor 很早就支持 tools。Resources——例如文件内容与数据库 schema 这类上下文数据——在 Cursor v1.6(2025 年 9 月)才到齐。让 Server 提供可复用模板的 prompts 则稍晚一些。

嗯……我之前没意识到 resources 这么新。这也许能解释为什么有些旧教程总觉得缺一块。

开始之前:前置条件

支持 MCP 的 Cursor 版本

​MCP 支持在 Cursor 里已经有一段时间了​,但配置格式在不同版本间变过。动手前先看版本。打开 Cursor → Help → About。截至 2026 年初的稳定版支持三种传输:stdio、SSE 与 Streamable HTTP。

值得确认的一点:设置里这一节现在标为 ​Tools & MCP​,不再只是「Extensions」或更泛的标签。若你找不到——多半是这个原因。

视 Server 而定的 Node.js 或 Python

你遇到的大多数 MCP Server 会落在两套栈之一:

  • 基于 Node.js 的 Server——通过 npx 或 node 启动。要求 PATH 里有 Node.js 18+。
  • 基于 Python 的 Server——通过 uv run 或 python 启动。通常要 Python 3.10+,且常用 uv 作为包管理器。

建议先在终端跑 node --version 和 python --version。听起来很基础,但漏掉这一步会悄悄毁掉大量失败安装——Server 进程根本起不来,面板里 Cursor 也给不出有用信息。

如何把 MCP Server 加到 Cursor

第一步:找到或自建 MCP Server

已经有不少 Server——GitHub、Postgres、Slack、浏览器自动化等。GitHub 上的 官方 MCP Server 仓库 是合理起点。有些文档里带一键「Add to Cursor」,会自动写好配置。

若自建:Server 只需向 stdout 打印(stdio 传输)或提供 HTTP 端点。语言不限,这也是它和我早年用过的插件系统略有不同的原因之一。

第二步:在 Cursor 设置里配置

这里我想写精确些,因为格式很重要,而文档未必会在你写错时提醒。

有两处配置位置:

  • ​项目级​:项目根目录下的 .cursor/mcp.json
  • ​全局​:用户主目录下的 ~/.cursor/mcp.json

结构大致如下:

JSON
{
  "mcpServers": {
    "server-name": {
      "command": "npx",
      "args": ["-y", "your-mcp-server-package"],
      "env": {
        "API_KEY": "your-value-here"
      }
    }
  }
}

env 字段用来传 API 密钥与敏感配置——不要塞进 args。我花了一点时间才直观理解这一点。

​很多人会踩的一点​:若漏掉根键 "mcpServers",Cursor 会静默忽略整个文件。没有报错,没有警告。Server 就是不会出现。我不确定为何如此,但事实如此。

使用 uv 的 Python Server 示例:

JSON
{
  "mcpServers": {
    "my-python-server": {
      "command": "uv",
      "args": ["run", "--with", "my-server-package", "my-server-package", "run"]
    }
  }
}

也可以在 UI 里添加:Settings → Tools & MCP → New MCP Server。若你不习惯直接改 JSON,这条路会宽容一些。

第三步:验证连接

保存配置后,打开 ​Settings → Tools & MCP​。每个 Server 应带状态指示——绿色表示已连接,其他颜色表示未连上。

若某个 Server 没出现:先查根键("mcpServers",而不是 "servers" 等)。再确认命令在 PATH 里真的可用。Cursor 在这里不总能抛出有用错误——这一点对我来说仍有点悬而未决。

第四步:在 Agent 会话里测试工具调用

在 Cursor 里开一个新的 Agent 会话(不要用普通聊天)。输入自然会触发某个 Server 工具的内容。Cursor 在执行前应会请你确认——这是预期行为,不是故障。

若工具跑了但没什么有用输出,确认 Server 确实导出了你以为的那个工具。Tools & MCP 面板会列出每个 Server 暴露的工具。在断定「坏了」之前,先看一眼那份列表。

常见 MCP 配置问题排查

Server 不显示

通常是三件事之一:缺少 "mcpServers" 根键、PATH 里找不到命令,或 JSON 语法错误。Cursor 对这些都很安静。手动校验 JSON——甚至贴进 linter——能省时间。

工具调用静默失败

**Cursor 对所有 Server 的活跃工具数量上限大约在 40。**超过后,Agent 会因上下文塞满而更难选对工具。若启了很多 Server,试试关掉不用的,并在 Tools & MCP 面板点刷新。这招不止一次帮到我。

鉴权错误

若 Server 需要 API 密钥,而工具调用因权限失败,再确认密钥写在配置的 env 里,而不是硬编码进 args。有些包还要求特定的环境变量名——值得对照 Server 自带文档核对变量名。

让 Cursor 的 MCP 配置可复用

配置为何会丢、怎么让它稳住

若只在单个项目里用 .cursor/mcp.json,换文件夹工作时配置就像消失了一样。我第一次遇到时也愣了一下。做法是同时在全局维护 ~/.cursor/mcp.json,放你希望在各处都有的 Server——例如文件系统 Server 或文档检索工具。

团队协作时,把 .cursor/mcp.json 提交进版本库,能让项目成员拿到同一套 Server 配置。env 里的值显然不该提交——应放在本地环境配置或密钥管理里。

还有一点值得牢记:MCP Server 会以你的凭据执行代码。你授予 Server 的权限——数据库访问、GitHub token、API 密钥——它都会用。在添加任何第三方 Server 前,值得读一读官方文档里的 MCP 安全指引。2025 年围绕 Cursor MCP 的 CVE 披露已修复,但底层原则不变:把每个 Server 都当作需要完全信任的集成。

FAQ

  1. 如何把 MCP Server 加到 Cursor?

在项目目录创建或编辑 .cursor/mcp.json(或全局使用 ~/.cursor/mcp.json),使用根键 "mcpServers",写入 Server 的 command、args 以及所需环境变量。然后在 Settings → Tools & MCP 里确认已连接。

  1. ​哪个版本的 Cursor 支持 MCP?

MCP 工具支持在 Cursor 里已经可用一段时间。Resources(schema、文件内容等上下文数据)在 v1.6(2025 年 9 月)加入。用 Help → About 核对版本,并保持 Cursor 更新——不同版本里 MCP 集成变化不小。

  1. 为什么我的 MCP Server 在 Cursor 里不显示?

最常见原因是配置里缺少或拼错了根键 "mcpServers"。若缺少该键,Cursor 会静默忽略整个文件。其他原因包括 PATH 找不到命令,或 JSON 语法错误。校验配置文件,并确认终端里能访问 Node.js 或 Python 运行时。

我大概还会继续观察它如何演进。MCP 生态仍在成形——Server 不断新增,协议也被更多工具采纳——再过一两个版本配置会长成什么样,我目前还说不准。

……但并不觉得乱。

延伸阅读:​官方 MCP 文档​ · ​Cursor MCP 文档​ · ​GitHub 上的 MCP Server 仓库

相关文章