mcpField
D
DataToRAG

DataToRAG

远程服务
datatorag.com其他4今天更新

关于 DataToRAG

DataToRAG 是一个开源托管网关,用于将 MCP 客户端连接到 Google Workspace、Atlassian 和 Notion。用户授权自己的账户,网关仅提供已连接服务的工具;也可依据 MIT 许可证自行托管。

主要功能

  1. 01一个端点连接三类服务
  2. 02按用户授权 OAuth 账户
  3. 03每项服务支持多个账户
  4. 04适配上下文窗口的工具响应
  5. 05在已连接服务间传输文件
  6. 06预制技能与工作流

适用场景

  1. 01搜索或更新 Workspace 内容
  2. 02通过 MCP 客户端使用 Jira、Confluence 或 Notion
  3. 03在已连接服务间移动文件
  4. 04运行定时或由客户端调用的技能

MCP 相关

该网关通过 Streamable HTTP 提供托管或自托管的 MCP 端点,为用户已授权的 Google Workspace、Atlassian 和 Notion 账户提供连接器工具,并提供账户、技能和文件链接等内置工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://datatorag.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

DataToRAG:通过一个 MCP 端点连接你的工作工具。Gmail、Drive、Docs、Sheets、Calendar、Jira、Confluence 和 Notion 连接到 datatorag.com/mcp,可通过任何 MCP 客户端使用。

通过一个端点,为 Claude 和其他 MCP 客户端连接 Google Workspace、Jira、Confluence 和 Notion。

许可证:MIT main 分支上的 CI 状态 main 分支上的最近一次提交 截至 2026 年 10 月共有 143 个工具 适用于 Claude、Cursor 和 ChatGPT

DataToRAG 是一个开源的 Model Context Protocol 网关。你只需将 AI 客户端指向一个 URL。每个人都可以连接自己的 Google、Atlassian 和 Notion 账号,网关会向客户端提供这些账号对应的工具,并使用用户自己的 OAuth 授权调用服务。它托管于 datatorag.com,也可以根据 MIT 许可证部署在你自己的基础设施上。

网站 · 文档 · 状态 · 更新日志 · 技能

60 秒快速试用

设置需要连接两个地方,两者缺一不可:

  1. 连接你的账号。 登录 datatorag.com/dashboard,然后连接 Google、Atlassian 或 Notion。Google 的授权同意页面默认不会勾选任何选项:勾选“全选”,或勾选你需要的服务。
  2. 连接你的 AI 客户端到 https://datatorag.com/mcp,然后在客户端提示时使用相同的电子邮件地址登录。

Claude(网页和桌面版)。 依次点击 Customize、Connectors、Add,再点击“Add custom connector”。粘贴 URL,高级 OAuth 字段留空。

Claude Code。

claude mcp add --transport http datatorag https://datatorag.com/mcp

Cursor 和其他需要 JSON 配置的客户端。

{
  "mcpServers": {
    "datatorag": {
      "url": "https://datatorag.com/mcp"
    }
  }
}

ChatGPT。 依次点击 Settings、Connectors,启用 Developer mode,然后点击 Create 并粘贴 URL。

入门指南提供了每个步骤的截图。所有客户端都通过 OAuth 连接。

该服务已在官方 MCP 注册表中列出,名称为 com.datatorag/mcp-gateway;server.json 是该条目。

截图

仪表板中的 Agent 使用 notion_search 搜索 Notion,通过 notion_get_page 读取页面,并总结页面内容。

仪表板中的 Agent 使用相同的工具操作你已连接的账号,无需配置客户端。

上传文件后显示的页面:文件名、大小和 SHA-256,以及可粘贴回对话中的简短引用。

上传链接可从你的电脑上传一个文件,大小上限为 25 MB,并显示其大小和 SHA-256。

公开状态页面:生产环境最近一次完整检查,显示正常和失败的检查、正常运行的工具,以及 Gmail 各项检查的结果。

状态页面按服务显示针对生产环境最近一次端到端运行的结果。

## 连接器

工具数量根据截至 2026 年 10 月的代码统计:三个连接器共 133 个工具,网关内置 10 个。

连接器工具服务文档
Google Workspace (plugins/gws-mcp)87Gmail、Calendar、Drive、Docs、Sheets、Slides、Contacts、Tasks文档
Atlassian (plugins/atlassian-mcp)28Jira、Confluence文档
Notion (plugins/notion-mcp)18页面、数据库、评论文档
网关内置工具10已连接的账户、技能、文件上传和下载链接、连通性检查文档

三个连接器位于此仓库的 plugins/ 目录下,并随网关镜像一同发布。客户端只能看到其用户已连接服务对应的工具。

它的与众不同之处

每项服务可连接多个账户。 在同一个登录账号下连接工作和个人 Google 账户,或两个 Notion 工作区,并选择默认账户。每个连接器工具都接受 account 参数,用于选择账户(实现方式)。

响应大小适合上下文窗口。 工具返回模型需要的内容,而非原始 API 响应。两页的 Google 文档返回的是 2 到 3 KB 的文本,而不是 50 KB 或更多的 JSON(详细说明)。

每位用户单独进行 OAuth 授权。 每个人都授权访问自己的账户,网关负责刷新授权。连接器只会收到发起调用的用户的访问令牌,而不会收到共享凭据。

文件可在服务之间流转,无需经过聊天。 文件引用用于标识邮件、附件或 Drive 文件,网关可通过一次调用将其传送到 Jira、Drive 或邮件,并返回文件大小和 SHA-256 值。你电脑上的文件可通过一次性上传链接上传(文件引用)。

技能。 现成的工作流,例如晨间简报或收件箱整理,可在仪表板中运行、按计划运行,或从任意客户端作为 MCP 提示词调用(技能、公告)。

公开状态页面。 测试会以用户的方式调用生产环境中的工具,并按服务发布运行结果(状态)。

架构

工具调用的传递过程:MCP 客户端携带 bearer token 向 /mcp 发送请求;DataToRAG 网关对其进行身份验证,从注册表中提供 tools/list,并将 tools/call 路由到拥有该工具的插件;每个插件都使用用户的 OAuth 授权调用其服务的 API;Postgres 保存用户、账户、提供商令牌和工具注册表。

具体来说:

  1. 客户端。 任何 MCP 客户端都会携带 bearer token,通过 Streamable HTTP 向 POST /mcp 发送请求:该 token 是网关自身授权服务器签发的 OAuth 访问令牌,也是网关唯一接受的凭据。
  2. 网关(apps/gateway,单个 Node.js 进程:Express 加 Next.js)。网关会验证 bearer token,创建或复用会话,并从 Postgres 的 tools 表中返回 tools/list,仅包含用户已连接服务的工具。tools/call 会根据 __ 拆分为插件和工具,解析用户在该服务上的令牌(如果已过期则刷新),并将调用转发给插件。每次调用都会计量。同一进程还会提供仪表板及其 Agent、文档、更新日志和状态页。
  3. 内置工具。 list_connected_accounts、skills_*、file_upload_link 和 file_download_link 由网关直接响应,无需插件或注册表条目。
  4. 插件。 每个连接器都是 plugins/ 下的一个 MCP 服务。网关会以自己的非 root 账户将每个插件作为子进程启动,环境变量仅包含 PATH、NODE_ENV 和 PORT,并在每次调用时通过 X-User-Token 标头传递用户令牌。插件崩溃后,每分钟最多重启三次;/health 会报告每个插件的运行或停机状态。
  5. 注册表。 Postgres 保存用户、已连接账户、提供商令牌和工具注册表(每个插件工具的名称、描述和输入架构)。生产环境中的注册表变更以 registry/ 下的 SQL 文件形式保存,并由 registry 工作流在审批后应用。

自托管

前置条件
  • Node.js 20 或更高版本,以及 pnpm 9。
  • Postgres 数据库,以及作为 DATABASE_URL 的连接字符串。任何 Postgres 均可;此处不会为你启动数据库。
  • 为你需要的每个提供商创建一个 OAuth 客户端:Google(一个用于登录,另一个用于 Workspace 权限范围)、Atlassian、Notion。
运行网关
pnpm install
pnpm -r --filter "./packages/*" run build    # the gateway reads these packages' built output

cp .env.example .env                          # then fill in DATABASE_URL, CONNECTION_TOKEN_KEYS and the OAuth clients
pnpm --filter @datatorag-mcp/db db:migrate    # schema changes are never applied on start

pnpm dev:gateway

网关会在 http://localhost:8285 上监听(由 GATEWAY_PORT 设置):

路径说明
/mcpMCP 端点
/dashboard登录、连接账户、Agent
/docs/getting-started文档
/health存活状态及每个插件的状态
/.well-known/oauth-authorization-serverMCP 客户端的 OAuth 元数据

在笔记本电脑上,网关会从 ~/.datatorag/plugins 加载插件;如果设置了 DATATORAG_PLUGINS_DIR,则从该目录加载。使用 pnpm --filter @datatorag-mcp/gws-mcp run build 构建插件(atlassian-mcp 和 notion-mcp 也同样如此)。

环境变量

完整列表及注释见 .env.example,用于验证环境变量的架构见 packages/config/src/index.ts。自托管所需的变量如下:

变量用途
DATABASE_URLPostgres 连接字符串。必填
CONNECTION_TOKEN_KEYS用于加密提供方令牌的密钥:<id>:<base64 of 32 bytes>,以逗号分隔;第一个密钥用于加密,所有密钥都可用于解密。必填;使用 openssl rand -base64 32 生成
GATEWAY_PORT, GATEWAY_BASE_URL端口,以及用于构建 OAuth 重定向地址的公开 URL
GOOGLE_CLIENT_ID, GOOGLE_CLIENT_SECRET用于控制面板登录的 Google 登录信息
GOOGLE_GWS_CLIENT_ID, GOOGLE_GWS_CLIENT_SECRETGoogle Workspace 连接信息
ATLASSIAN_CLIENT_ID, ATLASSIAN_CLIENT_SECRETJira 和 Confluence 连接信息
NOTION_OAUTH_CLIENT_ID, NOTION_OAUTH_CLIENT_SECRETNotion 连接信息
ANTHROPIC_API_KEY, PLAYGROUND_MODEL控制面板 Agent;留空则会关闭
STRIPE_*计费;可选
POSTHOG_API_KEY, SLACK_BOT_TOKEN, BREVO_API_KEY分析、通知和电子邮件;留空时各自关闭
生产环境

生产环境运行由 apps/gateway/Dockerfile 构建的镜像,其中包含三个插件。合并到 main 后会构建并发布镜像(build.yml),部署则需手动触发并经批准(release.yml),启动时使用 docker/docker-compose.prod.yml。

项目结构

apps/gateway/          The product: MCP gateway, OAuth server, dashboard, site
  server.ts            Express entry: /mcp, /oauth, /auth, /files, /health
  src/gateway/         Tool routing, auth, plugin manager, file references, metering
  src/app/             Next.js app: dashboard, docs, blog, changelog, status, skills
  src/mastra/          The dashboard agent
  content/             Markdown for the blog, changelog, docs and skills
packages/
  config/              Environment schema (zod)
  db/                  Drizzle schema and migrations
  auth/                Token hashing and constant-time compares
  types/               Shared types, including the plugin manifest
plugins/
  gws-mcp/             Google Workspace connector
  atlassian-mcp/       Jira and Confluence connector
  notion-mcp/          Notion connector
registry/              Reviewed SQL for changes to the tool registry
docker/                Compose files
scripts/               The pre-merge gate, leak scan, deploy and registry helpers
docs/                  Architecture notes and implementation plans
tools/capture/         Product screenshots and recordings (Remotion)

参与贡献

欢迎提交问题和拉取请求。如需进行重大更改,请先提出问题,以便我们就方向达成一致;每个拉取请求都会运行检查流程(类型检查和测试)并扫描泄漏。

安全

请将漏洞私下报告至 [email protected],而不要在公开问题中披露。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。