Most AI app teams I talk to spend their first month wiring tool integrations. Linear takes a week (auth + tool list + per-user credential storage). GitHub takes another. By the time you have five connectors working, you have a small connector platform, and you wanted to ship a chatbot. qlaud ships every account with 47 tools live on day one — 35 vetted vendor MCP servers and 12 first-party builtins, all auto-discoverable by your model without a single line of registration code.
The 35 vendor MCP connectors
Each one points at a vendor-hosted MCP server we've probed end-to-end. Browse the live grid at qlaud.ai/connectors. By category:
Productivity & ticketing
Linear (issues, projects, cycles), Asana (tasks, projects), ClickUp (spaces, tasks, docs, time tracking), monday.com (boards, items), Airtable (bases, records), Trello (boards, cards), HubSpot (contacts, deals, tickets), Intercom (conversations, contacts), Salesforce (leads, accounts, opportunities), Pipedrive (deals, persons), Zendesk (tickets, users), Atlassian (Jira issues + Confluence pages), Notion (databases, pages, blocks).
Dev / infra
GitHub (issues, PRs, files, code search), GitLab (projects, MRs, pipelines), Bitbucket (repositories, PRs), Vercel (projects, deployments, env vars), Netlify (sites, deploys), Neon (Postgres branches), Supabase (projects, auth users, storage), Cloudflare (Workers, KV, R2, D1), Sentry (issues, releases, alerts).
Comms / scheduling
Slack (channels, messages, files, search), Cal.com (bookings, event types), Zoom (meetings, recordings), Twilio (SMS, voice).
Analytics / observability
Datadog (metrics, logs, monitors), PagerDuty (incidents, schedules), Mixpanel (events, funnels).
Payments
Stripe (payments, customers, subscriptions), PayPal (orders, refunds), Square (payments, catalog), Plaid (accounts, transactions).
E-commerce / marketing
Shopify (products, orders, customers), Mailchimp (audiences, campaigns).
The 12 first-party builtins
Builtins are tools qlaud implements directly inside the gateway — usually because the upstream doesn't ship an MCP server but has a clean REST API. qlaud holds the upstream key (or your per-user one), bills the cost transparently, and your model just sees a tool.
- web_search — Brave Search backend. Fresh web results with snippets and URLs.
- generate_image — OpenAI gpt-image-1. Creates PNGs from text prompts.
- send_email — Resend backend. Transactional email delivery with a verified sender.
- code_execution — E2B sandboxed runtime. Run arbitrary Python / JavaScript and stream stdout / files back.
- slack_post_message — Post into a channel with your bot token.
- linear_create_issue — Single-purpose Linear ticket creator (lighter than the full MCP).
- zendesk_create_ticket — Same idea for Zendesk support.
- notion_append_page — Add blocks to a Notion page.
- github_create_issue, github_add_comment, github_search_code, github_get_file — Common GitHub primitives without spinning up the full MCP.
How the model finds them — without you writing tool defs
When you call POST /v1/threads/:id/messages without an explicit tools array, qlaud injects 4 meta-tools instead of forcing you to enumerate every tool:
- qlaud_search_tools(intent) — model searches your registered tools AND the auto-enabled catalog by natural language intent.
- qlaud_get_tool_schemas(names) — model fetches full input schemas for the tools it picked, on demand.
- qlaud_multi_execute(calls) — model dispatches the picked tools (in parallel where independent).
- qlaud_manage_connections(action, tool) — model mints a hosted connect URL when the end-user hasn't authorized a per-user vendor yet.
Constant token cost regardless of whether you have 5 tools or 500. Composio-style dynamic discovery, but built into the gateway and free with your inference call.
End-to-end: an end-user's first "Linear ticket please"
# Your app's chat route — no tool registration code, no Linear setup.
# tools_mode defaults to 'dynamic' when no explicit tools array is passed.
POST https://api.qlaud.ai/v1/threads/{thread_id}/messages
Authorization: Bearer qlk_live_<the_end_user's_key>
{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"content": "Create a Linear ticket: 'Login button broken on Safari iOS'."
}What the model does, autonomously:
- Calls
qlaud_search_tools({intent: "create linear ticket"}) - qlaud returns: no customer-registered linear tool, but Linear is in available_connectors as catalog_slug "qlaud-mcp/linear"
- Model calls
qlaud_manage_connections({action:"connect", tool:"qlaud-mcp/linear"}) - qlaud lazy-creates the mcp_servers row, mints a one-time hosted URL like
https://qlaud.ai/connect/9f8e… - Model relays the URL to the end-user: "To create that ticket I need to connect to your Linear account. Open this secure link, paste your API key: …"
- User clicks, pastes their Linear API key into a Linear-branded form, qlaud encrypts it (AES-GCM), probes Linear's MCP server, materializes ~30 tools (linear/get_issue, linear/create_issue, etc.)
- User says "done", model calls
qlaud_multi_executewithlinear/create_issue, ticket lands in Linear.
Your code: zero changes per vendor. End-user's code: zero. New vendors land in the catalog over time and become available to every account automatically.
Tenant-mode vs per-user — when each fits
Each connector has an auth_mode:
- Per-user (Linear, GitHub, Asana, Notion, ClickUp, etc.) — each end-user authorizes their OWN vendor account. Right for productivity tools where the user's identity matters.
- Tenant-shared (Stripe, Sentry, Datadog, Mixpanel, Plaid) — the developer registers ONCE with company credentials. Every end-user's actions go through the shared key. Right for ops/billing systems.
- Either (Linear, GitHub, Atlassian, Notion, HubSpot, Asana, ClickUp, monday, Trello, …) — supports both, you pick at registration.
Per-user-capable connectors are auto-on for every account. Tenant-only ones require a one-time registration (you supply company creds).
Opt out per-vendor if you don't want it
Don't want your end-users connecting Linear via your app? Hit the toggle on /tools → Catalog tab → click "Disable for end-users" on Linear's card. The slug goes into a disabled_catalog_entries table for your account and stops appearing in qlaud_search_tools results.
Bring your own MCP or webhook
Long-tail vendor we don't carry yet? Internal MCP server? Plain webhook? All supported via the same dispatch surface:
# Custom MCP server (any HTTPS endpoint speaking the MCP protocol)
POST https://api.qlaud.ai/v1/mcp-servers
{
"name": "internal-crm",
"server_url": "https://mcp.our-internal-crm.com/sse",
"auth_headers": { "Authorization": "Bearer …" },
"auth_mode": "tenant"
}
# Custom webhook tool (your own HTTPS endpoint, qlaud HMAC-signs the dispatch)
POST https://api.qlaud.ai/v1/tools
{
"name": "compute_shipping",
"description": "Compute shipping cost for an order id.",
"input_schema": { ... },
"webhook_url": "https://api.yourapp.com/tools/compute_shipping"
}Get started
Sign up for qlaud, top up $5, mint a master key. Default-enabled catalog is on from request #1 — your end-users can ask for Linear / GitHub / ClickUp tickets immediately. See the full /connectors grid for the live list, or docs.qlaud.ai/api-reference/mcp-catalog for the API.