Skip to content

Cursor 远程 MCP 服务器 localhost 连接失败

问题

在 Cursor 设置中配置了 Remote MCP Server,URL 填写的是 http://localhost:3000/sse(或类似本地地址),但 Cursor Agent 始终无法连接,报错提示无法访问 MCP 服务器,或工具列表为空。

实际上 MCP 服务进程已经在本机正常运行,用浏览器或 curl 访问同一 URL 都没问题,唯独 Cursor 连接失败。

解决方案

这是 Cursor 远程 MCP 的设计限制:Remote MCP 类型走的是 Cursor 云端代理转发,而不是直接从本机发起请求。localhost 对 Cursor 云端来说指的是 Cursor 服务器自己,而不是你的电脑,因此本地地址天然无法访问。

正确做法:使用 stdio 类型的本地 MCP,而不是 remote 类型:

~/.cursor/mcp.json(或项目级 .cursor/mcp.json)中配置:

json
{
  "mcpServers": {
    "my-local-mcp": {
      "command": "node",
      "args": ["/path/to/your/mcp-server/index.js"]
    }
  }
}

stdio 类型由 Cursor 直接在本机以子进程方式启动 MCP Server,完全走本地通信,不经过任何云端中转,localhost 相关问题不复存在。

如果你的 MCP Server 确实需要以独立进程运行(比如已经有其他程序在消费它),可以改用 http://host.docker.internal:3000/sse(Docker 环境)或在公网部署后使用真实域名。