Conector

io.github.Secra-Solutions由 GitHub 帳號 Secra-Solutions 發布v0.1.7更新於 Oct 25, 2026

Self-hosted MCP gateway: connect 1,178 apps once and use them from any AI agent.

概覽

AI 產生的概覽

自託管的 MCP 閘道,一次連接大量第三方應用程式,並將其 API 以工具形式提供給任何 AI 代理。

可以做什麼
透過每個應用程式通用的請求工具呼叫已連接應用程式的完整 API,部分應用程式另提供專用工具,例如郵件搜尋、議題搜尋與聊天訊息傳送(R16、R17)。在網頁面板中以 OAuth 登入、API 金鑰、使用者名稱密碼或免憑證方式連接應用程式(R59、R63、R64)。建立依代理區分的存取權杖,並以指令或設定片段將 Conector 安裝到支援的代理中(R18、R19)。管理使用者、角色、個人與共用連線,以及限定應用程式範圍的權杖(R20、R94、R97)。指令碼可透過 REST API 重複使用同一批權杖(R109)。
適用情境
適合希望以一個自託管位置集中保存應用程式憑證,並讓多個 AI 代理(Claude、Codex、Cursor、Copilot 等)存取 GitHub、Gmail、Slack、Jira、Stripe 等應用程式,而不必逐一設定的情境(R1、R7、R11)。
執行需求
需要 Node.js 22 或更新版本,或使用 Docker;以 stdio 或 Streamable HTTP 在本機執行。stdio 橋接需要 CONECTOR_URL(MCP 端點)與 CONECTOR_TOKEN(在面板中建立的存取權杖);同一台機器上的代理可使用本機指令而無需權杖(R26、R43、R45)。應用程式連線需要各自的 OAuth 註冊、API 金鑰或登入資訊(R59、R63)。
安裝前請注意
保存多個應用程式的加密憑證與主金鑰;需備份資料目錄,缺少 master.key 時已存憑證無法解密(R21、R106)。權杖以其使用者身分行事,且只顯示一次(R97)。工具呼叫與面板變更會記入稽核日誌,但不保存請求內容與憑證(R104、R105)。啟用 CONECTOR_ALLOW_PRIVATE_HTTP 會使應用程式憑證以未加密方式經過網路,並允許建立連線者讓伺服器存取明文 HTTP 服務(R90)。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Conector,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

[Conector: one MCP server for all your apps]

Connect 1,178 apps once and use them from Claude, Codex, Cursor, Gemini CLI, GitHub Copilot and 42 more AI agents.
Self-hosted and open source. Your credentials stay encrypted on your own server.

[Latest release] [npm] [Tests] [License: MIT] [Node.js 22+] [MCP: Streamable HTTP] [1,178 apps] [47 agents] [Powered by Secra Solutions]

Quick start · Agents · Apps · Security · Add an app · About

[Demo: search the app catalog, connect Hacker News, then add Conector to Claude Code with a new token]

Why Conector

AI agents can only use the tools they can reach. Wiring every agent to every app means juggling API keys, OAuth apps and config files on each machine, for each agent. Conector puts all of it in one place:

  1. Connect an app once in the web panel, by signing in or pasting an API key.
  2. Add Conector to your agents with one command or config snippet.
  3. Every agent gets tools for every app you connected, over the Model Context Protocol.

[Agents talk to Conector over MCP with an access token; Conector talks to your apps with OAuth or an API key]

Features

1,178 apps
GitHub, Gmail, Google Drive, Notion, Slack, Linear, HubSpot, Salesforce, Stripe, Microsoft 365, Jira and more. 107 connect with one click. The rest take an API key, a username and password, or nothing at all.
1,416 tools
Every app gets an authenticated <app>_request tool for its whole API. Many add specific tools such as outlook_search_mail, jira_search or slack_send_message.
47 agents
The panel shows the exact command or config file for each agent, with a token already filled in. conector install <agent> writes it for you.
Built for teams
Admins and members, invitation links, personal and shared connections, and per-agent tokens limited to the apps you choose.
Private by design
Credentials are encrypted with AES-256-GCM and only sent to the app they belong to. The panel loads no external scripts, fonts or images.
Easy to run
Node.js and three dependencies, or one docker compose up. Every tool call is recorded in an audit log.

Quick start

With Node.js 22 or later, in one command:

bash
npx conector start

Installed from npm, Conector keeps its data in ~/.conector. For a permanent install, run npm install -g conector and then conector start.

With Docker:

bash
docker run -d --name conector -p 127.0.0.1:8790:8790 -v conector-data:/data ghcr.io/secra-solutions/conectordocker logs conector    # shows the setup link

Or from source:

bash
git clone https://github.com/Secra-Solutions/Conector.gitcd Conectornpm installnpm start

The first start prints a one-time setup link:

Conector 0.1.0 listening on http://127.0.0.1:8790 — public URL http://localhost:8790No users yet. Create the admin account at:  http://localhost:8790/setup?code=…

Open it, create the admin account, and then:

  1. Apps: pick an app and connect it.
  2. Connect agents: pick your agent, click Create a token, and copy the command or snippet.
  3. Ask your agent to use the app, for example: "list my open GitHub pull requests".

With Docker Compose

From a clone of the repository:

bash
docker compose up -ddocker compose logs conector    # shows the setup link

The data (users, tokens, encrypted credentials and the master key) lives in the conector-data volume. The compose file only exposes the panel on 127.0.0.1:8790. Images for amd64 and arm64 are published at ghcr.io/secra-solutions/conector: latest and X.Y.Z for releases, edge for the main branch.

Connect an agent

[Adding Conector to Claude Code]

Each agent authenticates with its own access token (cnr_…) and talks to http://<server>/mcp over Streamable HTTP, with an Authorization: Bearer header. Agents that can only start local (stdio) servers use the bundled bridge, bin/stdio-bridge.js (or conector stdio), configured with CONECTOR_URL and CONECTOR_TOKEN. It has no dependencies, so you can copy it to any machine with Node.js. On the machine where Conector stores its data, an agent can also start conector mcp, which serves the same tools over stdio without the web server or a token.

Everything on one machine? Start the panel with npx conector start, connect your apps, and add Conector to your editor in one click. The button adds npx -y conector mcp, which reads the same data in ~/.conector, so there's no token to create:

[Install in VS Code] [Install in VS Code Insiders] [Add Conector to Cursor]

Agents
CLIsClaude 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
EditorsCursor, GitHub Copilot (VS Code), Cline, Kilo Code, Kiro, Junie, Google Antigravity
Desktop and webClaude Desktop, Hoplite
Not supported yetChatGPT (it requires OAuth for MCP servers), Agoragentic and Dirac (they have no way to add MCP servers)

From the panel, open Connect agents, pick your agent and click Create a token. Or, from a terminal on the server:

bash
npm link                                    # makes the `conector` command availableconector agents                             # list the supported agentsconector install claude-code                # runs `claude mcp add …` with a new tokenconector install cursor --user [email protected]conector install codex --dry-run            # show what it would do

conector install uses the agent's own CLI when it is installed. Otherwise it merges the entry into the agent's JSON or TOML config file and keeps a .conector-backup copy. When a file can't be merged safely (JSONC comments, YAML, an existing table), it prints the snippet for you to paste.

Apps

[The app catalog]

Each app page offers the simplest way to connect it:

  • Continue with …: OAuth sign-in. An admin registers Conector's OAuth app once per provider under OAuth apps. The page shows the redirect URI and scopes to use. One registration covers all of the provider's apps: one Google OAuth app covers Gmail, Drive, Calendar, Sheets and the rest.
  • API key, or username and password: step-by-step instructions to find the key, and a connection test when you save.
  • Enable: public APIs that need no credentials.
  • Microsoft 365: sign-in with a device code, with no app registration needed.

Connections are personal (only you) or shared (everyone in the workspace; only admins can create them). When both exist, your personal connection wins.

Configuration

Set these environment variables, or put them in a .env file next to package.json (see .env.example). When Conector is installed from npm, the .env file is read from the current directory instead.

VariableDefault
CONECTOR_PORT8790Port to listen on.
CONECTOR_HOST127.0.0.1Interface to bind. Use 0.0.0.0 only behind a firewall or reverse proxy.
CONECTOR_PUBLIC_URLhttp://localhost:<port>Address that people and agents use. Some OAuth providers require https://.
CONECTOR_ALLOWED_HOSTSExtra Host headers to accept, comma-separated (for example conector.lan:8790).
CONECTOR_DATA_DIR./dataUsers, tokens, encrypted credentials, the master key and the audit log. ~/.conector when installed from npm, /data in Docker.
CONECTOR_TRUST_PROXY1 behind a reverse proxy on the same machine or private network.
CONECTOR_HSTS1With an https:// public URL, send Strict-Transport-Security. Set 0 if the same host name also serves plain-HTTP services on other ports.
CONECTOR_SESSION_HOURS12Idle time before panel sessions expire. Sessions also end when the server restarts.
CONECTOR_ALLOW_PRIVATE_HTTP1 lets self-hosted apps on your local network use http:// (for example http://homeassistant.local:8123 or http://192.168.1.10:8123). See below.

To reach Conector from other machines or from cloud agents, put an HTTPS reverse proxy or tunnel in front of it (Caddy, nginx, Cloudflare Tunnel…) and set CONECTOR_PUBLIC_URL to its address.

Self-hosted apps must use https://, except on localhost. Many home servers have no certificate, so CONECTOR_ALLOW_PRIVATE_HTTP=1 also accepts http:// for private network addresses: 10.x, 172.16–31.x, 192.168.x, 100.64–127.x (Tailscale), IPv6 unique local addresses, *.local, *.lan, *.home.arpa, host.docker.internal and names without a dot. Two things to know before you turn it on: those apps' credentials then cross your network unencrypted, and anyone who can create connections can make Conector call plain-HTTP services on your network. Cloud metadata addresses stay blocked. In Docker, localhost is the container itself: use the host's LAN address or host.docker.internal.

Users and security

  • Roles: admins manage users, OAuth apps and shared connections. Members connect their own apps and use the shared ones. Invitation and password reset links work once, and Conector never sends e-mail.
  • Tokens act as their user, can be limited to some apps and are shown only once. Conector stores only their SHA-256 hash.
  • Passwords are hashed with scrypt and must be at least 12 characters long. Repeated failed sign-ins are throttled.
  • The panel sets a strict Content Security Policy and checks a CSRF token and the origin on every form. It accepts only known Host headers, which blocks DNS rebinding, and binds to 127.0.0.1 by default.
  • App URLs built from user input (subdomains, self-hosted instances) are validated, so credentials can't be sent to another server.
  • The audit log records every tool call and every change made in the panel. It never stores request payloads or credentials.

Back up CONECTOR_DATA_DIR: without master.key, the stored credentials can't be decrypted. To report a vulnerability, see SECURITY.md.

REST API

The same tokens work for scripts and automations:

bash
curl -H "Authorization: Bearer $CONECTOR_TOKEN" http://localhost:8790/api/v1/appscurl -H "Authorization: Bearer $CONECTOR_TOKEN" -H "Content-Type: application/json" \     -d '{"method":"GET","path":"/user"}' http://localhost:8790/api/v1/apps/github/request

Command line

conector start                    Start the serverconector setup-link               Print a link to create the first admin accountconector users | tokens           List users or access tokensconector invite <email> [--admin] Print an invitation linkconector reset-link <email>       Print a password reset linkconector token <email> [--apps a,b] [--name N]conector revoke <token id>conector agents | install <agent> Add Conector to an agentconector stdio                    stdio bridge for agents that only start local serversconector mcp [--user <email>]     MCP over stdio on this machine, without the web server or a tokenconector apps [--connected]       List the catalog

Adding an app

Apps are plain data: a base URL, how to authenticate, a connection test and help text. A complete example:

js
{  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 documents every option (OAuth, client credentials, AWS signatures, custom tools…). After editing, run npm run validate.

Development

bash
npm run dev               # restart on changesnpm test                  # unit and end-to-end testsnpm run validate          # check every app definition (offline)npm run validate:network  # also call each app's API with fake credentialsnpm run logos             # regenerate app logos (npm run logos -- --agents for agents)

The code is plain JavaScript (ES modules), with three runtime dependencies: Express, the MCP SDK and Zod. Pages are rendered on the server with an escaping template tag. The browser script is small, plain JavaScript.

bin/        conector CLI and the stdio bridgesrc/        server, MCP, auth, encrypted store, OAuthsrc/catalog app definitions (apps/*.js) and the engine that turns them into toolssrc/ui      pages, layout and iconspublic/     CSS, JavaScript, fonts, brand and logosscripts/    catalog validator and logo generatortest/       node:test suites

Contributing

New apps, agent install guides, fixes and ideas are welcome. See CONTRIBUTING.md to get started, pick one of the good first issues (many are popular self-hosted apps that aren't in the catalog yet), or ask in Discussions. Everyone taking part follows the code of conduct.

Powered by Secra Solutions

[Powered by Secra Solutions]

Secra Solutions builds and maintains Conector, and releases it as open source so anyone can give their AI agents safe access to the tools they use.

Conector is our first open-source initiative for the community. If you find it useful, we'll launch more: star the repo, open an issue or send a pull request, and tell us what you'd like us to build next.

Credits

  • Inspired by Composio.
  • Geist fonts (SIL Open Font License 1.1), Phosphor icons (MIT) and brand glyphs from Simple Icons (CC0).
  • App and agent names and logos are trademarks of their owners. They are shown only to identify each service and don't imply endorsement.

License

MIT

來源:README.md,提交 98204bd

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:伺服器未完成 MCP 握手。

版本歷史

4
  1. v0.1.7最新Oct 25, 2026
  2. v0.1.6Oct 18, 2026
  3. v0.1.5Oct 17, 2026
  4. v0.1.3Oct 17, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分