Connectors¶
Gaby talks to your systems via MCP — every external integration is
a subprocess spawned over stdio with the standard initialize +
tools/list handshake. First-party connectors ship with Gaby and pass
a shared 8-test contract suite (connectors/_contract/).
Available in v0.3¶
| Connector | Scope | Source |
|---|---|---|
| Postgres | read | connectors/postgres/ |
| Keycloak | read | connectors/keycloak/ |
| Redis | read | connectors/redis/ |
| Sentry | read | connectors/sentry/ |
| Stripe | read + simulate-only refund | connectors/stripe/ |
| Slack (MCP ticket source) | inbound | mcp-servers/gaby-mcp-slack/ |
Coming in v0.4¶
Intercom, Freshdesk, Zendesk, Help Scout, HubSpot, Linear, GitHub Issues, Discord, Microsoft Teams — see the registry grid on the Connectors page in the app for the full curated list with status.
Contract¶
Every connector — first-party or community — must pass the 8-test
suite in connectors/_contract/test_contract.py:
initializereturns within 2 s.tools/listreturns at least one tool.- Tool descriptions declare a
scope=read|write|adminmarker. healthcheckis implemented and returns{ok: bool}.- Re-init within the same process is idempotent.
- Stdio frames are clean JSON-RPC (no stray prints to stdout).
- Healthcheck never echoes secrets from env vars.
- Disconnect closes cleanly within 1 s.
The Python tests parametrise across every entry in the CONNECTORS
list; adding a connector is two lines.