内容
# OpenConnector
[English](README.md) | [简体中文](README.zh-CN.md)
[](LICENSE.txt)




[](https://oomol.com/apps)
[](https://oomol.com/apps)
OpenConnector 是一个开源的身份验证网关,目前在该仓库中提供了 680 多个服务提供商和 7,000 多个预构建的 Actions。它支持与 Cloudflare 兼容的部署,并允许 AI 代理通过 Connector SDK、MCP 和 HTTP 安全地调用真正的 SaaS 产品。
OpenConnector 不仅仅存储提供商的凭证。网关、提供商目录和 Action 执行器都是开源的,因此开发人员可以自行托管运行时、检查每个 Action 合同,并为代理提供一种受控的方式,以便在无需从头开始构建每个集成的情况下与真正的 SaaS 产品合作。
该仓库包含已迁移到开源的 oomol 连接器目录的一部分。商业版 oomol 涵盖了 1,000 多个提供商;开源目录将继续增长,因为更多集成被转换为可维护的提供商定义和执行器。商业版和开源版使用兼容的连接器接口和 Action 合同,因此团队可以从商业版开始以加快速度,然后在需要更多部署控制时移动到私有或自行托管的运行时基础设施。
[oo CLI](https://github.com/oomol-lab/oo-cli) 对开源运行时的支持正在添加,预计于 2026 年 7 月中旬发布。在此之前,请使用 SDK、MCP、HTTP API、OpenAPI 和下面的本地 Web 控制台路径。
## 为什么选择 OpenConnector
- [680 多个服务提供商和 7,000 多个预构建的 Actions](docs/providers.md) 跨越 GitHub、Gmail、Notion、BigQuery、Google Analytics、Supabase、Airtable、Slack 等 SaaS 产品。
- 用于 API 密钥、OAuth2、自定义凭证和无身份验证提供商的开源身份验证网关。
- 具有预构建请求/响应模式和延迟加载执行器的开源 Action 层。
- 用于 Workers、D1、R2 和静态资产的 Cloudflare 兼容运行时,以实现快速的自行托管部署。
- 通过 Connector SDK、MCP、HTTP API、OpenAPI 和本地 Web 控制台,为代理提供就绪访问,并支持 [oo CLI](https://github.com/oomol-lab/oo-cli)。
- 用于连接身份、范围、运行时令牌、操作允许/阻止策略、临时文件传输和编辑后的运行日志的运行时控制。
## 适用场景
OpenConnector 设计用于需要代理在客户已经使用的 SaaS 工具中执行操作的场景,同时将凭证、范围、模式和执行日志保留在受控的运行时环境中。商业版和开源版保持接口兼容:团队可以从 oomol 的托管服务开始,以避免 OAuth 批准延迟并更快地交付,然后在需要更多部署控制时将相同的连接器层移动到私有或自行托管的基础设施。
- 需要跨工作应用程序、开发工具、数据系统、通信平台和 AI 服务的重用连接器层的代理产品。
- 希望在不将每个外部 API 转换为自定义集成项目的情況下添加代理工作流的 SaaS 产品。
- 希望从托管服务开始以加快速度,然后干净地移动到私有或自行托管的基础设施的团队。
## 开发者工具
| 工具 | 用途 |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| [Connector SDK](https://github.com/oomol-lab/connector-sdk) | 从 TypeScript 应用程序和代理运行时调用连接器操作,代理上游 API,并检查目录。 |
| [oo CLI](https://github.com/oomol-lab/oo-cli) | 开源运行时支持正在添加,预计于 2026 年 7 月中旬发布。 |
| MCP | 通过 `http://localhost:3000/mcp` 将应用程序操作暴露给支持 MCP 的代理主机。 |
| HTTP / OpenAPI | 直接调用 `/v1/actions/*` 或检查生成的 `/openapi.json` 文档。 |
## 连接的 SaaS Logo 墙
OpenConnector 目前支持 680 多个服务提供商和 7,000 多个预构建的 Actions。此 Logo 墙仅部分预览,不完整的目录。它突出了可识别的 SaaS、开发工具、生产力应用程序、分析产品和 AI 服务,以显示目录的广度。

提供商名称和商标归各自所有者所有,仅用于识别和互操作性。
## 工作原理
```mermaid
flowchart LR
Agent["AI 代理 / 应用程序"] -->|"SDK / MCP / HTTP"| Gateway["OpenConnector 网关"]
Gateway --> Auth["凭证和 OAuth 边界"]
Gateway --> Catalog["提供商目录"]
Gateway --> Actions["开源操作执行器"]
Gateway --> Policy["令牌、范围、允许/阻止策略"]
Gateway --> Logs["运行日志"]
Actions --> SaaS["680 多个提供商"]
Console["Web 控制台"] --> Gateway
Cloudflare["Cloudflare Workers, D1, R2"] -. 部署 .-> Gateway
```
代理发现操作,检查模式和范围,选择连接别名,并通过网关执行。提供商秘密保留在运行时边界后面;代理仅接收他们需要的元数据、安全帐户标签和执行结果。
## 使用路径
| 路径 | 最适合 | 您获得的内容 |
| ---------------------------- | --------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| 开源自行托管 | 需要完全控制的开发人员和团队 | 本地 Docker 或 Node 运行时、SQLite 存储、MCP、HTTP、OpenAPI 和 Web 控制台 |
| Cloudflare 兼容部署 | 需要轻量级托管运行时的团队 | Workers 运行时、D1 状态、R2 传输文件和静态资产用于控制台 |
| [oomol](https://oomol.com/) | 被 OAuth 批准或发布截止日期阻止的团队 | 托管身份验证、运行时和 1,000 多个提供商目录;与开源接口兼容,以便稍后进行私有或自行托管部署 |
## Cloudflare 快速入门视频
[](https://www.youtube.com/watch?v=R0V1ZdCuTgc)
观看 [Cloudflare Workers 部署演练](https://www.youtube.com/watch?v=R0V1ZdCuTgc),以使用 Workers、D1、R2 和 Web 控制台在 Cloudflare 上启动 OpenConnector。该视频遵循与 [docs/cloudflare.md](docs/cloudflare.md) 相同的流程:创建 Cloudflare 资源、复制 `wrangler.example.jsonc` 到 `wrangler.local.jsonc`、应用 D1 迁移、设置必需的机密并运行 `npm run deploy:cloudflare`。
## 快速入门
使用 Docker Compose 启动运行时:
```bash
docker compose up --build
```
打开本地控制台和生成的 API 参考:
```text
http://localhost:3000
http://localhost:3000/docs
```
运行一个无身份验证的操作以验证运行时:
```bash
curl -s -X POST http://localhost:3000/v1/actions/hackernews.get_top_stories \
-H 'content-type: application/json' \
-d '{"input":{}}'
```
参见 [docs/quickstart.md](docs/quickstart.md) 以获取完整的本地设置、第一个提供商连接、OAuth 流和运行时设置。
## 连接提供商
GitHub 是最简单的凭证示例,因为它可以使用个人访问令牌:
```bash
curl -s -X PUT http://localhost:3000/api/connections/github \
-H 'content-type: application/json' \
-d '{"authType":"api_key","values":{"apiKey":"github_pat_..."}}'
curl -s -X POST http://localhost:3000/v1/actions/github.get_current_user \
-H 'content-type: application/json' \
-d '{"input":{}}'
```
有关 OAuth2 应用程序、命名连接、凭证加密、令牌刷新和操作策略,请参见 [docs/credentials.md](docs/credentials.md) 和 [docs/configuration.md](docs/configuration.md)。
## 为代理提供工具
OpenConnector 通过多个代理友好界面公开相同的操作目录:
- MCP:`http://localhost:3000/mcp`
- HTTP 运行时 API:`/v1/actions`
- OpenAPI 文档:`/openapi.json`
- 操作指南:`/api/actions/:actionId/agent.md`
- Web 控制台示例:每个操作的 cURL、TypeScript 和代理提示片段
参见 [docs/runtime-api.md](docs/runtime-api.md) 以获取端点详细信息、响应信封、身份验证标头、MCP 工具和操作指南示例。
## Web 控制台
在运行时启动后,打开 `http://localhost:3000`。控制台帮助您浏览提供商、保存 API 密钥或 OAuth 客户端配置、创建运行时令牌、检查操作模式、运行操作进行调试、查看最近的运行并打开生成的 OpenAPI 和 MCP 元数据。
## Cloudflare 部署
OpenConnector 支持 Cloudflare Workers 作为元数据和运行时状态部署目标,使用 Workers、D1、R2 和静态资产。
参见 [docs/cloudflare.md](docs/cloudflare.md) 以获取资源创建、迁移、机密、本地 Worker 预览和远程部署。
## oomol 和 Wanta
OpenConnector 是开源网关,适用于希望自行托管和控制运行时的团队。[oomol](https://oomol.com/) 是兼容的商业 SaaS 版本,具有托管身份验证、运行时基础设施和更广泛的 1,000 多个提供商目录。需要立即上线的小团队或个人可以使用 [Wanta](https://wanta.ai/) 通过桌面产品体验连接应用程序,并添加团队应用程序共享、权限控制、多个连接帐户和工作区特定的连接。
## 文档
- [快速入门](docs/quickstart.md)
- [开发者工具](docs/sdk-cli.md)
- [提供商覆盖](docs/providers.md)
- [运行时 API 和 MCP](docs/runtime-api.md)
- [Cloudflare 部署](docs/cloudflare.md)
- [配置](docs/configuration.md)
- [凭证和 OAuth](docs/credentials.md)
- [目录格式](docs/catalog-format.md)
- [验证语言](docs/verification.md)
- [贡献](CONTRIBUTING.md)
- [行为准则](CODE_OF_CONDUCT.md)
- [安全](SECURITY.md)
## 开发
使用 Node.js 22 或更新版本:
```bash
npm install
npm run build:web
npm run dev
```
在打开拉取请求之前:
```bash
npm run fix-check
npm test
```
提供商代码位于 `src/providers/<service>` 下。有关提供商贡献规则,请参见 [CONTRIBUTING.md](CONTRIBUTING.md#adding-providers)。
## 许可证范围
除非另有说明,否则此仓库中编写的源代码、脚本、生成的项目脚手架、测试和文档均受 Apache License, Version 2.0 许可。参见 [LICENSE.txt](LICENSE.txt)。
Apache-2.0 许可证不授予第三方产品、提供商、应用程序、API、商标、服务标记、商标名称、徽标、图标、品牌资产、文档、截图或其他版权材料的权利,这些权利归其各自所有者所有。
提供商和应用程序的名称、元数据、链接、范围、权限和可选徽标/图标仅用于识别服务并实现互操作性。所有第三方品牌和产品权利仍归其各自所有者所有。包含在此目录中并不意味着这些所有者对该目录的认可、赞助、合作伙伴关系、认证或验证。
如果您贡献提供商元数据或资产,请仅提交您有权提交的材料。优先链接到官方公共资产,而不是将品牌文件复制到此仓库中。
## 社区
请保持问题和拉取请求集中、尊重和可行。此项目的参与受 [CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md) 管辖。