【技术文档摘要】
目前(2024年3月4日),MCP 正在处理身份验证和授权问题。他们计划在2025年上半年完成这些工作。问题是,我现在就想与我的团队分享我的 MCP 服务器。因此,我们在这里。目前唯一可以立即使用 Cursor 等 SSE MCP 服务器的方法是基于网络层的解决方案(例如,代理)。基本认证、API 密钥等都不适用。
利用 GCP Cloud Run 和基于用户的 IAM 身份验证,我创建了一种简单且安全的方式,允许客户端通过互联网访问自定义的 MCP 服务器。

MCP 服务器托管在 Google Cloud Run 上。利用 Cloud Run IAM 身份验证,我们可以使用 Google Cloud SDK 创建一个代理连接,从而安全地从互联网连接到服务器。
如果你已经本地安装了 Docker 和 gcloud CLI,这个 应该开箱即用,只需进行少量配置即可。
步骤 1: 更新 deploy.sh 文件中的项目 ID、服务账户电子邮件地址等信息。
步骤 2: 部署成功后,获取提供的 Cloud Run URL,并将其添加到 mcp_proxy.ts 中,同时添加你的项目 ID。
步骤 3: 运行代理 npx ts-node mcp_proxy.ts

步骤 3: 使用 http://localhost:3030 访问你的 MCP 服务器 - 在 Cursor 的设置 > 功能 > MCP 服务器中添加它(确保选择 SSE 而不是命令)
npm install 安装依赖项npm run dev 启动本地服务器要将你的 MCP 服务器部署到 Google Cloud Run:
deploy.sh 脚本中的项目详细信息:
PROJECT_ID: 你的 Google Cloud 项目 IDREGION: 你首选的 GCP 区域SERVICE_ACCOUNT_EMAIL: 具有适当权限的服务账户电子邮件地址chmod +x deploy.sh
./deploy.sh
部署脚本将:
要连接到已部署的 MCP 服务器:
在本地运行 MCP 代理:
npx ts-node mcp_proxy.ts
代理将:
配置你的 MCP 客户端以连接到本地代理 URL
npx ts-node mcp_proxy.ts



此设置提供了多个安全优势:
mcp_proxy.ts 中的 Cloud Run URL 是否与你的部署服务匹配欢迎贡献!请随意提交问题或拉取请求。