关于 Conector
Conector 是面向团队的可自托管网关,通过统一的 MCP 接口让 AI Agent 访问各类应用。它集中管理凭据,并提供应用工具、Agent 配置、访问控制和审计日志。
主要功能
- 01一次连接应用,供 Agent 使用
- 02支持 1,178 个应用和 1,416 个工具
- 03通过命令行或配置接入 Agent
- 04个人与共享连接
- 05凭据加密与审计日志
适用场景
- 01让多个 Agent 访问已连接的工作应用
- 02从一个面板配置 Agent 接入
- 03将令牌权限限制到指定应用
- 04通过审计日志查看工具调用
MCP 相关
Conector 通过 MCP 将已连接应用的 API 暴露为工具,支持 Streamable HTTP 或 stdio。Agent 可使用独立令牌验证,也可连接本地 stdio 服务。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
一次连接 1,178 个应用,即可在 Claude、Codex、Cursor、Gemini CLI、GitHub Copilot 和另外 42 个 AI Agent 中使用它们。
可自托管且开源。你的凭据会加密保存在自己的服务器上。
快速开始 · Agent · 应用 · 安全 · 添加应用 · 关于
为什么选择 Conector
AI Agent 只能使用能够访问到的工具。要让每个 Agent 都连接所有应用,就得在每台机器上为每个 Agent 管理 API 密钥、OAuth 应用和配置文件。Conector 将这一切集中在一处:
- 只需连接一次应用,在 Web 面板中登录或粘贴 API 密钥即可。
- 通过一条命令或一段配置,将 Conector 添加到你的 Agent。
- 每个 Agent 都能使用你连接的所有应用对应的工具,并通过 Model Context Protocol 进行交互。
|
1,178 个应用 GitHub、Gmail、Google Drive、Notion、Slack、Linear、HubSpot、Salesforce、Stripe、Microsoft 365、Jira 等。 其中 107 个可一键连接。其余应用需要 API 密钥、用户名和密码,或无需任何凭据。 |
1,416 个工具 每个应用都配有一个经过身份验证的 <app>_request 工具,可用于其完整 API。许多应用还提供专用工具,例如
outlook_search_mail、jira_search 或 slack_send_message。
|
47 个 Agent 面板会显示每个 Agent 的确切命令或配置文件,并预先填好令牌。 conector install <agent> 会为你写入配置。
|
|
专为团队打造 管理员和成员、邀请链接、个人和共享连接,以及仅限访问所选应用的各 Agent 专用令牌。 |
以隐私为设计核心 凭据使用 AES-256-GCM 加密,且只会发送到对应的应用。面板不会加载外部脚本、字体或图片。 |
易于运行 只需 Node.js 和三个依赖项,或运行一次 docker compose up。每次工具调用都会记录在审计日志中。
|
快速开始
使用 Node.js 22 或更高版本,只需运行一条命令:
npx conector start
通过 npm 安装后,Conector 会将数据保存在 ~/.conector 中。如需永久安装,请运行 npm install -g conector,然后运行
conector start。
使用 Docker:
docker run -d --name conector -p 127.0.0.1:8790:8790 -v conector-data:/data ghcr.io/secra-solutions/conector
docker logs conector # shows the setup link
或从源代码安装:
git clone https://github.com/Secra-Solutions/Conector.git
cd Conector
npm install
npm start
首次启动时会显示一个一次性设置链接:
Conector 0.1.0 listening on http://127.0.0.1:8790 — public URL http://localhost:8790
No users yet. Create the admin account at:
http://localhost:8790/setup?code=…
打开链接,创建管理员账户,然后:
- 应用: 选择一个应用并连接。
- 连接 Agent: 选择你的 Agent,点击 创建令牌,然后复制命令或代码片段。
- 让你的 Agent 使用该应用,例如:“列出我尚未关闭的 GitHub 拉取请求”。
使用 Docker Compose
在克隆的仓库目录中:
docker compose up -d
docker compose logs conector # shows the setup link
数据(用户、令牌、加密凭据和主密钥)保存在 conector-data 卷中。compose 文件仅在 127.0.0.1:8790 上开放面板。amd64 和 arm64 镜像发布在
ghcr.io/secra-solutions/conector:发布版本使用 latest 和 X.Y.Z,主分支使用 edge。
连接 Agent
每个 Agent 都使用自己的访问令牌(cnr_…)进行身份验证,并通过 Streamable HTTP 和 Authorization: Bearer 标头与 http://<server>/mcp 通信。只能启动本地(stdio)服务的 Agent 可使用捆绑的桥接程序 bin/stdio-bridge.js(或 conector stdio),并通过 CONECTOR_URL 和 CONECTOR_TOKEN 进行配置。它没有依赖项,因此可以复制到任何安装了 Node.js 的机器上。在 Conector 存储数据的机器上,Agent 也可以启动 conector mcp,通过 stdio 提供相同的工具,无需 Web 服务或令牌。
所有内容都在同一台机器上? 使用 npx conector start 启动面板,连接应用,然后一键将 Conector 添加到编辑器。该按钮会添加 npx -y conector mcp,它会读取 ~/.conector 中的相同数据,因此无需创建令牌:
| Agent | |
|---|---|
| 命令行工具 | Claude Code、Codex、Gemini CLI、OpenCode、Amp、goose、Qwen Code、Factory Droid、Devin CLI、TRAE CLI、Mistral Vibe、Kimi Code CLI、Grok Build、Hermes Agent、Auggie CLI、CodeBuddy Code、Qoder CLI、MiniMax Code、Cortex Code、Deep Agents、fast-agent、Stakpak、ZCode、Pi、Oh My Pi、Muse Code、Autohand Code、CodeWhale、crow-cli、DimCode、Gajae Code、Minion Code、Nova、Poolside、siGit Code、VT Code、GLM Agent、Corust Agent |
| 编辑器 | Cursor、GitHub Copilot(VS Code)、Cline、Kilo Code、Kiro、Junie、Google Antigravity |
| 桌面和 Web | Claude Desktop、Hoplite |
| 暂不支持 | ChatGPT(它要求 MCP 服务使用 OAuth)、Agoragentic 和 Dirac(它们没有添加 MCP 服务的方式) |
在面板中打开 连接 Agent,选择 Agent,然后点击 创建令牌。或者,在服务所在机器的终端中运行:
npm link # makes the `conector` command available
conector agents # list the supported agents
conector install claude-code # runs `claude mcp add …` with a new token
conector install cursor --user [email protected]
conector install codex --dry-run # show what it would do
如果已安装 Agent 自带的 CLI,conector install 会使用它。否则,它会将配置项合并到 Agent 的 JSON 或 TOML 配置文件中,并保留一份 .conector-backup 副本。如果无法安全合并文件(例如包含 JSONC 注释、使用 YAML 或已有表格),它会打印配置片段,供你粘贴。
应用
每个应用页面都会提供最简单的连接方式:
- **使用……继续:**通过 OAuth 登录。管理员需要在 OAuth 应用中为每个提供方注册一次 Conector 的 OAuth 应用。页面会显示要使用的重定向 URI 和作用域。一次注册即可用于该提供方的所有应用:一个 Google OAuth 应用可用于 Gmail、Drive、Calendar、Sheets 等。
- **API 密钥或用户名和密码:**提供查找密钥的分步说明,并在保存时测试连接。
- **启用:**无需凭据的公共 API。
- **Microsoft 365:**使用设备代码登录,无需注册应用。
连接可以是个人连接(仅你可用),也可以是共享连接(工作区内所有人都可用;仅管理员可以创建)。如果两种连接都存在,则优先使用你的个人连接。
配置
设置这些环境变量,或将它们放入 package.json 旁边的 .env 文件中(参见 .env.example)。通过 npm 安装 Conector 时,.env 文件则从当前目录读取。
| 变量 | 默认值 | |
|---|---|---|
CONECTOR_PORT | 8790 | 监听端口。 |
CONECTOR_HOST | 127.0.0.1 | 绑定的接口。仅在防火墙或反向代理后使用 0.0.0.0。 |
CONECTOR_PUBLIC_URL | http://localhost:<port> | 用户和 Agent 使用的地址。某些 OAuth 提供商要求使用 https://。 |
CONECTOR_ALLOWED_HOSTS | 要接受的额外 Host 标头,以逗号分隔(例如 conector.lan:8790)。 | |
CONECTOR_DATA_DIR | ./data | 用户、令牌、加密凭据、主密钥和审计日志。通过 npm 安装时为 ~/.conector,在 Docker 中为 /data。 |
CONECTOR_TRUST_PROXY | 在同一台机器或私有网络上的反向代理后设置为 1。 | |
CONECTOR_HSTS | 1 | 设置了 https:// 公共 URL 时,发送 Strict-Transport-Security。若同一主机名还在其他端口提供纯 HTTP 服务,则设为 0。 |
CONECTOR_SESSION_HOURS | 12 | 面板会话过期前的空闲时长。服务器重启时,会话也会结束。 |
CONECTOR_ALLOW_PRIVATE_HTTP | 设为 1 后,允许本地网络上的可自托管应用使用 http://(例如 http://homeassistant.local:8123 或 http://192.168.1.10:8123)。详见下文。 |
要从其他机器或云端 Agent 访问 Conector,请在其前面部署 HTTPS 反向代理或隧道(Caddy、nginx、Cloudflare Tunnel……),并将 CONECTOR_PUBLIC_URL 设为对应地址。
除 localhost 外,可自托管应用必须使用 https://。许多家庭服务器没有证书,因此 CONECTOR_ALLOW_PRIVATE_HTTP=1 也会接受用于私有网络地址的 http://:10.x、172.16–31.x、192.168.x、100.64–127.x(Tailscale)、IPv6 唯一本地地址、*.local、*.lan、*.home.arpa、host.docker.internal,以及不含点的名称。启用前请注意两点:这些应用的凭据会以未加密的形式通过你的网络传输;任何能创建连接的人都可以让 Conector 调用你网络上的纯 HTTP 服务。云元数据地址仍会被屏蔽。在 Docker 中,localhost 指容器本身:请使用主机的局域网地址或 host.docker.internal。
用户与安全
- **角色:**管理员可管理用户、OAuth 应用和共享连接。成员可连接自己的应用并使用共享应用。邀请和密码重置链接只能使用一次,Conector 不会发送电子邮件。
- 令牌以对应用户的身份运行,可限制为访问部分应用,且只会显示一次。Conector 只存储其 SHA-256 哈希值。
- 密码使用 scrypt 哈希处理,长度必须至少为 12 个字符。重复的登录失败会受到限流。
- 面板设置严格的内容安全策略,并在每次表单提交时检查 CSRF 令牌和来源。面板只接受已知的
Host标头,以阻止 DNS 重绑定;默认绑定到127.0.0.1。 - 应用 URL(根据用户输入构建,例如子域名和自托管实例)会经过验证,因此凭据不会被发送到其他服务器。
- 审计日志会记录每次工具调用以及在面板中进行的每项更改。它不会存储请求载荷或凭据。
请备份 CONECTOR_DATA_DIR:没有 master.key,就无法解密已存储的凭据。若要报告漏洞,请参阅 SECURITY.md。
REST API
相同的令牌也可用于脚本和自动化:
curl -H "Authorization: Bearer $CONECTOR_TOKEN" http://localhost:8790/api/v1/apps
curl -H "Authorization: Bearer $CONECTOR_TOKEN" -H "Content-Type: application/json" \
-d '{"method":"GET","path":"/user"}' http://localhost:8790/api/v1/apps/github/request
命令行
conector start Start the server
conector setup-link Print a link to create the first admin account
conector users | tokens List users or access tokens
conector invite <email> [--admin] Print an invitation link
conector reset-link <email> Print a password reset link
conector token <email> [--apps a,b] [--name N]
conector revoke <token id>
conector agents | install <agent> Add Conector to an agent
conector stdio stdio bridge for agents that only start local servers
conector mcp [--user <email>] MCP over stdio on this machine, without the web server or a token
conector apps [--connected] List the catalog
添加应用
应用是纯数据:基础 URL、身份验证方式、连接测试和帮助文本。完整示例:
{
id: "acme", name: "Acme", category: "productivity", description: "Projects and tasks in Acme",
website: "https://acme.example", docs: "https://developers.acme.example", logo: { favicon: "https://acme.example" },
baseUrl: "https://api.acme.example/v1",
fields: [{ id: "token", label: "API key", secret: true }],
auth: { type: "bearer" },
help: "1) In Acme open “Settings” → “API”. 2) Click “New key” and paste it here.",
test: { path: "/me", account: (d) => d.email },
}
docs/ADDING_APPS.md 介绍了所有选项(OAuth、客户端凭据、AWS 签名、自定义工具……)。编辑后,运行 npm run validate。
开发
npm run dev # restart on changes
npm test # unit and end-to-end tests
npm run validate # check every app definition (offline)
npm run validate:network # also call each app's API with fake credentials
npm run logos # regenerate app logos (npm run logos -- --agents for agents)
代码使用纯 JavaScript(ES 模块),运行时依赖只有三个:Express、MCP SDK 和 Zod。页面通过带转义功能的模板标签在服务器端渲染。浏览器脚本使用精简的纯 JavaScript 编写。
bin/ conector CLI and the stdio bridge
src/ server, MCP, auth, encrypted store, OAuth
src/catalog app definitions (apps/*.js) and the engine that turns them into tools
src/ui pages, layout and icons
public/ CSS, JavaScript, fonts, brand and logos
scripts/ catalog validator and logo generator
test/ node:test suites
贡献
欢迎提交新应用、Agent 安装指南、修复和想法。请参阅 CONTRIBUTING.md 了解如何开始, 挑选一个适合新手的议题 (其中许多是尚未加入目录的热门可自托管应用),或在 讨论区提问。所有参与者都须遵守 行为准则。
由 Secra Solutions 提供支持
Secra Solutions 构建并维护 Conector,并以开源形式发布,让每个人都能安全地让自己的 AI Agent 使用所需工具。
Conector 是我们为社区发起的首个开源项目。如果你觉得它有用,我们还会推出更多项目:为仓库点星、提交议题或拉取请求,并告诉我们你希望我们接下来构建什么。
致谢
- 灵感来自 Composio。
- Geist 字体(SIL Open Font License 1.1)、Phosphor 图标 (MIT)以及来自 Simple Icons 的品牌字形(CC0)。
- 应用和 Agent 的名称与徽标均为其所有者的商标。它们仅用于标识各项服务, 不代表相关方的认可。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
