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

Admin Support Assistant MCP Cloudflare

MCP Server

drizzle-kit

一个基于Cloudflare Workers的AI虚拟助理服务,通过MCP服务器集成Gmail、Google日历、Google Drive、Notion和Slack,自动处理日常管理任务。

工具数

30

提示词数

0

GitHub Stars

0

资源数

0
TypeScriptClaude任务自动化ClaudeCursor

安装说明

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

作者 / 组织

Oseni03

提供方

Oseni03

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

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

命令预览

npx drizzle-kit generate

详细介绍

行政支持助理(AI VA)-MCP服务器

这是一个由人工智能驱动的虚拟助手,通过 模型上下文协议(MCP) 部署在Cloudflare Workers上的服务器。它与Gmail、谷歌日历、谷歌云端硬盘、Notion和Slack集成,处理日常管理工作,让您专注于构建和销售。

它做什么

  • 管理收件箱和日历,保持文档的有序性,并处理日常管理工作,使您专注于构建和销售。
  • 典型的工作流程:分类电子邮件、起草回复、安排会议、创建和维护SOP、更新任务跟踪器、总结会议并保持文件整洁。

关键集成(推荐堆栈)

  • 电子邮件:Gmail
  • 日历:谷歌日历
  • 文档和存储:谷歌云端硬盘
  • 知识库/笔记:Notion,谷歌云端硬盘
  • 团队沟通:松弛
  • 任务和项目:概念(任务)

您可以将其部署到自己的Cloudflare帐户,在创建OAuth客户端应用程序后,您将拥有一个功能齐全的远程MCP服务器,可以访问Gmail、Google Calendar、Google Drive、Notion和Slack。用户使用其Google帐户进行身份验证,并可以逐步添加其他服务集成。

您可以将此作为参考示例,了解如何使用以下方法将多个OAuth提供程序与部署到Cloudflare的MCP服务器集成 workers-oauth-provider 图书馆.

MCP服务器(由 Cloudflare Workers):

  • 充当OAuth _服务器_ 您的MCP客户
  • 充当OAuth _客户_ 多个OAuth提供商(谷歌、Notion、Slack)
  • 使用Cloudflare D1进行持久用户数据和集成管理
  • 支持增量OAuth流,用于按需添加服务
\[!警告\] 这是一个演示模板,旨在帮助您快速入门。虽然我们已经实施了几种安全控制, 在部署到生产环境之前,您必须实施所有预防性和深度防御安全措施。请查看我们的综合安全指南: 保护MCP服务器

特性

  • 🔐 Google OAuth身份验证 -使用Google帐户进行主身份验证
  • 📧 Gmail集成 -发送、阅读、搜索和管理电子邮件
  • 📅 Google 日历 -创建、更新和管理日历事件
  • 📁 Google 云端硬盘 -访问和管理Google Drive中的文件
  • 📝 概念整合 -访问和管理Notion页面和数据库
  • 💬 Slack集成 -发送消息和管理Slack工作区
  • 🗄️ D1数据库 -用户数据和集成的持久存储
  • 🔄 增量授权 -根据需要添加集成,而不是一次全部添加
  • 💳 计费就绪 -数据库架构支持订阅和使用情况跟踪

入门指南

克隆仓库并安装依赖项:

git clone 
cd 
npm install

安装说明

1.创建OAuth应用程序

谷歌OAuth应用程序

  1. 首选 谷歌云控制台
  2. 创建新项目或选择现有项目
  3. 启用以下API:

- Google+API(用于用户配置文件) - Gmail API - 谷歌日历API - Google Drive API

  1. 创建OAuth 2.0凭据:

- 应用程序类型:Web应用程序 - 授权重定向URI: - 发展: http://localhost:8787/callback/google, http://localhost:8787/callback/gmail, http://localhost:8787/callback/calendar, http://localhost:8787/callback/drive - 生产: https://.workers.dev/callback/google, https://.workers.dev/callback/gmail等等。

  1. 注意你的 客户端ID客户端密钥

Notion OAuth应用程序

  1. 首选 概念开发者
  2. 创建新的集成
  3. 设置 重定向URI 致:

- 发展: http://localhost:8787/callback/notion - 生产: https://.workers.dev/callback/notion

  1. 注意你的 OAuth客户端IDOAuth客户端密码

Slack OAuth应用程序

  1. 首选 松弛API
  2. 创建新应用程序
  3. 在...之下 OAuth和权限,添加重定向URL:

- 发展: http://localhost:8787/callback/slack - 生产: https://.workers.dev/callback/slack

  1. 添加以下内容 Bot令牌范围:

- channels:read, channels:write, channels:history - chat:write, files:write - groups:read, groups:write, groups:history - im:read, im:write, im:history - mpim:read, mpim:write, mpim:history - reactions:write, search:read, users:read

  1. 注意你的 客户端ID客户端密钥

2.设置Cloudflare资源

创建KV命名空间

# OAuth state storage
wrangler kv namespace create "OAUTH_KV"

# Provider token storage (optional - can use D1 instead)
wrangler kv namespace create "PROVIDERS_KV"

更新 wrangler.toml 使用返回的ID。

创建D1数据库

# Create the database
wrangler d1 create my-mcp-database

这将输出:

[[d1_databases]]
binding = "DB"
database_name = "my-mcp-database"
database_id = "xxxx-xxxx-xxxx-xxxx"

将此添加到您的 wrangler.toml.

运行数据库迁移

# Generate migration files
npx drizzle-kit generate

# Apply migrations locally
wrangler d1 migrations apply my-mcp-database --local

# Apply migrations to production (when ready)
wrangler d1 migrations apply my-mcp-database --remote

验证表是否已创建:

wrangler d1 execute my-mcp-database --local --command "SELECT name FROM sqlite_master WHERE type='table'"

您应该看到: user, session, account, verification, integration, subscription, usage

3.配置环境变量

促进地方发展

创建一个 .dev.vars 文件:

# Google OAuth
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret

# Notion OAuth
NOTION_CLIENT_ID=your_notion_client_id
NOTION_CLIENT_SECRET=your_notion_client_secret

# Slack OAuth
SLACK_CLIENT_ID=your_slack_client_id
SLACK_CLIENT_SECRET=your_slack_client_secret

# Auth & Encryption
AUTH_SECRET=your_random_secret_minimum_32_chars
COOKIE_ENCRYPTION_KEY=your_cookie_encryption_key

# Server URL
SERVER_URL=http://localhost:8787

生成安全机密:

# Generate AUTH_SECRET
openssl rand -hex 32

# Generate COOKIE_ENCRYPTION_KEY
openssl rand -hex 32

用于生产

通过牧马人设置秘密:

wrangler secret put GOOGLE_CLIENT_ID
wrangler secret put GOOGLE_CLIENT_SECRET
wrangler secret put NOTION_CLIENT_ID
wrangler secret put NOTION_CLIENT_SECRET
wrangler secret put SLACK_CLIENT_ID
wrangler secret put SLACK_CLIENT_SECRET
wrangler secret put AUTH_SECRET
wrangler secret put COOKIE_ENCRYPTION_KEY

更新 SERVER_URLwrangler.toml:

[vars]
SERVER_URL = "https://.workers.dev"

4.更新wrangler.toml

您的完整 wrangler.toml 应该看起来像:

name = "my-mcp-server"
main = "src/index.ts"
compatibility_date = "2024-01-01"

# D1 Database
[[d1_databases]]
binding = "DB"
database_name = "my-mcp-database"
database_id = "xxxx-xxxx-xxxx-xxxx"

# KV Namespaces
[[kv_namespaces]]
binding = "OAUTH_KV"
id = "your-oauth-kv-id"

[[kv_namespaces]]
binding = "PROVIDERS_KV"
id = "your-providers-kv-id"

# Environment Variables
[vars]
SERVER_URL = "http://localhost:8787"

发展

在本地运行

wrangler dev --local

服务器将在以下时间可用 http://localhost:8787

使用MCP检查员进行测试

npx @modelcontextprotocol/inspector@latest

进入 http://localhost:8787/sse 然后点击连接。您将被重定向到Google进行身份验证。

测试数据库连接

访问 http://localhost:8787/test-db 以验证数据库连接。

部署

部署到生产

# Apply database migrations to production
wrangler d1 migrations apply my-mcp-database --remote

# Deploy the worker
wrangler deploy

您的MCP服务器将在 https://.workers.dev

更新OAuth重定向URI

部署后,更新所有OAuth应用重定向URI以使用您的生产URL:

  • 谷歌 https://.workers.dev/callback/google等等。
  • 概念: https://.workers.dev/callback/notion
  • 松弛: https://.workers.dev/callback/slack

使用MCP服务器

使用克劳德桌面

打开克劳德桌面设置:设置→ 开发者→ 编辑配置

添加您的MCP服务器:

{
  "mcpServers": {
    "admin-assistant": {
      "command": "npx",
      "args": ["mcp-remote", "https://.workers.dev/sse"]
    }
  }
}

重新启动克劳德桌面。系统将提示您使用Google进行身份验证。

带光标

在光标设置中:

  • 类型:命令
  • 命令: npx mcp-remote https://.workers.dev/sse

注意:Cursor不支持身份验证流,因此您需要使用 mcp-remote.

可用工具

身份验证后,以下工具可用:

谷歌集成

  • userInfoGoogle -获取经过身份验证的用户信息

Gmail工具

  • send_email -发送电子邮件
  • read_email -阅读电子邮件内容
  • search_emails -使用Gmail查询语法搜索电子邮件
  • modify_email -移动到文件夹、存档、应用标签
  • delete_email -永久删除电子邮件
  • list_email_labels -列出所有Gmail标签
  • create_label, update_label, delete_label -标签管理
  • batch_modify_emails, batch_delete_emails -批量操作

谷歌日历工具

  • create_event -创建日历事件
  • list_events -列出即将举行的活动
  • update_event -更新现有事件
  • delete_event -删除事件
  • list_calendars -列出所有日历

谷歌云端硬盘工具

  • search_files -搜索文件
  • get_file -获取文件元数据
  • download_file -下载文件内容
  • upload_file -上传新文件
  • create_folder -创建文件夹
  • delete_file -删除文件

概念工具

  • search_notion -搜索页面和数据库
  • get_page -获取页面内容
  • create_page -创建新页面
  • update_page -更新现有页面

Slack工具

  • send_slack_message -向频道发送消息
  • list_channels -列出工作区频道
  • search_messages -搜索邮件历史记录

增量集成流程

  1. 初始设置:用户通过Google进行身份验证
  2. 查看集成:使用 listIntegrations 查看可用服务的工具
  3. 添加服务:单击“连接”链接以授权其他服务
  4. 使用工具:一旦连接,特定于服务的工具就可用

与克劳德的对话示例:

You: "List my available integrations"
Claude: [Shows integration dashboard]

You: "I need to send an email"
Claude: "You'll need to connect Gmail first. Please visit [auth link]"

[After connecting Gmail]
You: "Send an email to john@example.com"
Claude: [Uses send_email tool successfully]

数据库模式

服务器使用Cloudflare D1和下表:

  • 用户 -来自Google OAuth的用户配置文件
  • 会话 -活跃用户会话
  • 账户 -OAuth帐户连接
  • 整合 -服务集成(Gmail、日历等)
  • 订阅 -用户订阅计划(已准备好计费)
  • 用法 -每个用户/月的使用情况跟踪

安全特性

  • ✅ 一次性令牌的CSRF保护
  • ✅ 状态约束以防止会话固定
  • ✅ 使用HttpOnly和Secure标志进行安全cookie处理
  • ✅ OAuth状态验证
  • ✅ 数据库中的令牌加密
  • ✅ 通过Google OAuth进行电子邮件验证

故障排除

“未找到D1数据库绑定‘DB’”

  • 验证 wrangler.toml[[d1_databases]] 部分
  • 重启 wrangler dev 变更后 wrangler.toml
  • 检查绑定名称是否准确 "DB" (区分大小写)

“无法读取undefined的属性(读取'prepare')”

  • 运行迁移: wrangler d1 migrations apply my-mcp-database --local
  • 验证表是否存在: wrangler d1 execute my-mcp-database --local --command "SELECT name FROM sqlite_master WHERE type='table'"

“找不到用户”

  • 在添加其他集成之前,请先与Google进行身份验证
  • 检查用户的数据库: wrangler d1 execute my-mcp-database --local --command "SELECT * FROM user"

“数据库已锁定”

pkill wrangler
rm -rf .wrangler/state/v3/d1
wrangler dev --local

项目结构

.
├── src/
│   ├── index.ts                 # MCP server and tool registration
│   ├── oauth-handler.ts         # OAuth flow handling
│   ├── workers-oauth-utils.ts   # OAuth utilities
│   ├── db/
│   │   ├── schema.ts           # Database schema
│   │   └── client.ts           # D1 client wrapper
│   ├── services/
│   │   ├── integrations.ts     # Integration management
│   │   └── billing.ts          # Subscription & usage tracking
│   └── tools/
│       ├── gmail/              # Gmail tools
│       ├── google-calendar/    # Calendar tools
│       ├── google-drive/       # Drive tools
│       ├── notion/             # Notion tools
│       └── slack/              # Slack tools
├── drizzle/
│   └── migrations/             # Database migrations
├── wrangler.toml               # Cloudflare configuration
├── drizzle.config.ts           # Drizzle ORM configuration
└── package.json

它是如何工作的?

OAuth提供者

OAuth Provider库是Cloudflare Workers的完整OAuth 2.1服务器实现。它处理:

  • 对MCP客户端进行身份验证
  • 管理与多个OAuth提供商(Google、Notion、Slack)的连接
  • 代币发行、验证和刷新
  • D1数据库中的安全令牌存储

数据库存储

用户数据和OAuth令牌保存在Cloudflare D1中:

  • 用户记录 基于Google身份验证创建
  • 集成令牌 按用户和服务存储
  • 订阅 用于计费管理
  • 使用指标 用于速率限制和分析

增量OAuth

用户从谷歌身份验证开始,然后按需添加服务:

  1. 初始Google身份验证创建用户记录
  2. 通过“连接”链接添加的其他服务
  3. 每个集成都单独保存在数据库中
  4. 随着集成的添加,工具变得可用

耐用MCP

使用Cloudflare的持久对象扩展MCP:

  • 持续状态管理
  • 通过以下方式验证用户上下文 this.props
  • 基于集成的有条件工具可用性
  • 客户端和服务器之间的安全通信

贡献

欢迎投稿!请在提交PR之前阅读我们的投稿指南。

许可证

MIT许可证-有关详细信息,请参阅许可证文件。

支持

对于问题和疑问:

  • 在GitHub上打开一个问题
  • 检查现有问题的解决方案
  • 查看上面的故障排除部分

路线图

  • \[\]添加Polar集成以进行计费
  • \[\]根据订阅级别实施速率限制
  • \[\]添加前端
  • \[\]实现令牌刷新自动化

目录标签

目录标签

TypeScriptClaude任务自动化AI虚拟助理本地部署自动化管理多服务集成OAuth认证

支持客户端

ClaudeCursor

接入字段

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

stdio

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

oauth

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

drizzle-kit

工具数量(toolCount,工具数)

30

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdiooauth部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP