Token导航 LogoToken导航TokenDH.com
Cloudflare MCP Google Auth logo
安全风控stdio官方级别未说明来源级核验

Cloudflare MCP Google Auth

MCP Server

@modelcontextprotocol/inspector@latest

支持Google OAuth的远程MCP协议服务器,可用于构建需要身份验证的AI工具集成服务。

工具数

1

提示词数

0

GitHub Stars

0

资源数

0
身份验证远程服务Cloudflare WorkersClaudeClaude DesktopClaudeCursorWindsurf

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

ross-jill-ws

提供方

ross-jill-ws

最后核验

2026/5/17 20:22

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx @modelcontextprotocol/inspector@latest

详细介绍

模型上下文协议(MCP)服务器 + Google OAuth

这是一个 模型上下文协议(MCP) 支持远程MCP连接的服务器,内置Google OAuth功能。

您可以将其部署到您自己的Cloudflare账户中,创建自己的Google Cloud OAuth客户端应用后,您将拥有一个功能齐全的远程MCP服务器,可以在此基础上进行构建。用户将能够通过使用他们的Google帐户登录来连接到您的MCP服务器。

你可以将此作为参考示例,了解如何使用(以下方法)将其他OAuth提供商与部署在Cloudflare上的MCP服务器进行集成 workers-oauth-provider 图书馆

MCP服务器(由……提供支持) Cloudflare Workers(云防护网工作器)):

  • 作为OAuth(开放授权)服务 _服务器_ 致您的MCP客户
  • 作为OAuth(开放授权) _客户_ 致你的 _真实的_ OAuth服务器(在此情况下,为Google)

功劳/贡献

这个仓库是从……创建的 Cloudflare AI 远程 MCP Google OAuth 示例演示 使用模板:

npm create cloudflare@latest -- cloudflare-mcp-google-auth --template=cloudflare/ai/demos/remote-mcp-google-oauth

所有功劳都归功于Cloudflare的原作者们。

入门指南

克隆仓库并安装依赖项: npm install

用于生产

创建一个新的 Google Cloud OAuth 应用

  • 对于主页URL,请指定 https://mcp-google-oauth..workers.dev
  • 对于授权回调URL,请指定 https://mcp-google-oauth..workers.dev/callback
  • 记下您的客户端ID并生成一个客户端密钥。

设置一个KV命名空间并存储密钥

这个项目使用 KV服务绑定 而不是使用环境变量。这种方法允许你将密钥存储在一个地方(一个键值对命名空间),并通过将其绑定到同一个键值对命名空间,在多个MCP工作节点之间重复使用这些密钥。当你有多个需要共享相同OAuth凭据的MCP服务器时,这种方法尤其有用。

  1. (如果尚未创建)创建一个任意名称的KV命名空间:
wrangler kv namespace create "MY_KV_STORE"
  1. 在您的Cloudflare Worker设置(仪表板)中,将此KV命名空间绑定到绑定名称 OAUTH_KV
  1. 更新 wrangler.jsonc 并替换 `` 使用步骤1中的实际KV命名空间ID
  1. 将您的OAuth凭据存储在KV命名空间中:

用于本地开发 (商店位于 .wrangler/state/v3/kv):

wrangler kv key put --local "GOOGLE_CLIENT_ID" "" --binding="OAUTH_KV"
wrangler kv key put --local "GOOGLE_CLIENT_SECRET" "" --binding="OAUTH_KV"
wrangler kv key put --local "COOKIE_ENCRYPTION_KEY" "" --binding="OAUTH_KV"
# Optional: use this to restrict Google account domain
# wrangler kv key put --local "HOSTED_DOMAIN" "" --binding="OAUTH_KV"

对于远程部署

wrangler kv key put "GOOGLE_CLIENT_ID" "" --binding="OAUTH_KV"
wrangler kv key put "GOOGLE_CLIENT_SECRET" "" --binding="OAUTH_KV"
wrangler kv key put "COOKIE_ENCRYPTION_KEY" "" --binding="OAUTH_KV"
# Optional: use this to restrict Google account domain
# wrangler kv key put "HOSTED_DOMAIN" "" --binding="OAUTH_KV"

部署与测试

部署MCP服务器,使其在workers.dev域上可用:

wrangler deploy

验证KV配置: 您可以通过访问以下链接来验证您的KV密钥是否已正确配置:

https://mcp-google-oauth..workers.dev/test-config

此端点将确认您的Google OAuth凭据和cookie加密密钥是否已正确存储在KV中。

使用以下方法测试远程服务器: 检查员:

npx @modelcontextprotocol/inspector@latest

输入 https://mcp-google-oauth..workers.dev/mcp 然后点击连接。一旦你完成了身份验证流程,就会看到工具开始工作:

您现在已部署了一个远程MCP服务器!

访问控制

这个MCP服务器使用Google Cloud OAuth进行身份验证。所有经过身份验证的Google用户都可以访问“添加”等基本工具。要限制用户只能访问特定托管域,请将该域存储在KV中:

# For remote
wrangler kv key put "HOSTED_DOMAIN" "" --binding="OAUTH_KV"
# For local
wrangler kv key put --local "HOSTED_DOMAIN" "" --binding="OAUTH_KV"

从Claude Desktop访问远程MCP服务器

打开Claude桌面版,导航至“设置”->“开发者”->“编辑配置”。这将打开控制Claude可访问的MCP服务器的配置文件。

将内容替换为以下配置。一旦您重启Claude桌面版,将打开一个浏览器窗口显示您的OAuth登录页面。完成身份验证流程以授予Claude访问您的MCP服务器的权限。授予访问权限后,工具将可供您使用。

{
  "mcpServers": {
    "math": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://mcp-google-oauth..workers.dev/mcp"
      ]
    }
  }
}

一旦工具(位于🔨下方)出现在界面上,你就可以让Claude使用它们。例如:“你能用数学工具来计算23加19吗?”Claude应该调用该工具,并显示由MCP服务器生成的结果。

用于本地开发

如果您想在本地开发环境中迭代并测试您的MCP服务器,您可以这样做。这将需要您在Google Cloud上创建另一个OAuth应用程序:

  • 对于主页URL,请指定 http://localhost:8788
  • 对于授权回调URL,请指定 http://localhost:8788/callback
  • 记下您的客户端ID并生成一个客户端密钥。

使用上述“生产环境”部分第4步中的命令来存储您本地的开发凭据,使用 --local 标志(见“本地开发”小节)。

开发与测试

在本地运行服务器,以便可通过 http://localhost:8788

wrangler dev

验证本地键值(KV)配置: 您可以通过访问以下链接来验证本地KV密钥是否已正确配置:

http://localhost:8788/test-config

要测试本地服务器,请输入 http://localhost:8788/mcp 进入“检查器”并点击连接。按照提示操作后,您将能够“列出工具”。

使用Claude和其他MCP客户端

当使用Claude连接到您的远程MCP服务器时,您可能会看到一些错误信息。这是因为Claude Desktop目前还不支持远程MCP服务器,所以有时会感到困惑。要验证MCP服务器是否已连接,请将鼠标悬停在Claude界面右下角的🔨图标上。您应该在那里看到您的可用工具。

使用Cursor和其他MCP客户端

要将Cursor连接到您的MCP服务器,请选择 Type“命令”以及在 Command 字段,将命令和参数字段合并为一个(例如。 npx mcp-remote https://..workers.dev/mcp)。

请注意,虽然 Cursor 支持 HTTP+SSE 服务器,但它不支持身份验证,因此您仍然需要使用 mcp-remote (并且使用STDIO服务器,而不是HTTP服务器)。

你可以通过打开客户端的配置文件,添加用于Claude设置的相同JSON内容,然后重启MCP客户端,来将你的MCP服务器连接到其他MCP客户端,如Windsurf。

它是怎么工作的?

OAuth 提供者

OAuth 提供者库为 Cloudflare Workers 提供了一个完整的 OAuth 2.1 服务器实现。它处理了 OAuth 流程中的复杂性,包括令牌的颁发、验证和管理。在本项目中,它扮演着双重角色:

  • 验证连接到您服务器的MCP客户端
  • 管理与Google Cloud OAuth服务的连接
  • 在键值(KV)存储中安全地存储令牌和认证状态

耐用的MCP(多路复用通信处理器/模块,具体含义根据上下文确定)

持久化MCP通过Cloudflare的持久化对象(Durable Objects)扩展了基础MCP的功能,提供:

  • 为您的MCP服务器提供持久化的状态管理
  • 在请求之间安全地存储认证上下文
  • 通过……访问经过验证的用户信息 this.props
  • 支持基于用户身份的有条件工具可用性

MCP 远程(控制/访问)

MCP Remote库使您的服务器能够暴露工具,这些工具可以被像Inspector这样的MCP客户端调用。它

  • 定义客户端与您的服务器之间的通信协议
  • 提供一种结构化的方式来定义工具
  • 处理请求和响应的序列化与反序列化
  • 支持客户端通信的两种协议:可流式传输的HTTP(推荐)和服务器发送事件(SSE)

传输协议迁移

此示例已更新以支持新的(功能/特性) 可流式传输的HTTP 传输协议,该协议取代了已弃用的服务器发送事件(SSE)协议。现在,服务器同时提供了两个端点:

  • /mcp - 推荐使用新的Streamable HTTP协议
  • /sse - 已弃用遗留的SSE协议(为保持向后兼容而维护)

所有新的集成都应该使用 /mcp 端点。SSE 端点将在未来的版本中移除。

目录标签

目录标签

身份验证远程服务Cloudflare WorkersClaudeTypeScript本地部署AI工具集成OAuth服务CloudflareWorkers

支持客户端

Claude DesktopClaudeCursorWindsurf

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@modelcontextprotocol/inspector@latest

工具数量(toolCount,工具数)

1

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP