MCP server
Manage your Cysora agent from the AI tool you already use. Connect Claude, Cursor, or any MCP client and pull back leads, read conversations, and update your sales process — with scoped access you approve and can revoke at any time.
Get started in two steps
- Add
https://www.cysora.com/api/mcpto your MCP client as a remote server. No key or header is needed. - Your client opens Cysora in the browser. An account admin reviews the access (Full access is preselected; a narrower level can be chosen) and clicks Allow.
Connected apps, and the tools each one can use, are listed on the dashboard's API Keys & MCPpage, where an admin can change an app's access level or disconnect it at any time. Changes apply immediately, with no reconnect.
What it is
The Cysora MCP server exposes a curated subset of the public /api/v1 surface to MCP-capable clients (Claude Desktop, Cursor, Cline, and any other JSON-RPC over HTTP MCP client). It does not mirror the entire API — tools are selected for safe reads and bounded writes, and each connected app only sees the tools its approved access level allows.
Endpoint
| Method | Path | Auth | Transport |
|---|---|---|---|
POST | /api/mcp | OAuth 2.1 access token (Authorization: Bearer cys_oat_...), obtained through the sign-in flow | JSON-RPC 2.0 Streamable HTTP JSON |
GET /api/mcp returns 405. Query-string credentials are rejected. API keys do not work with MCP; they are for the REST API. An unauthenticated request gets a 401 whose WWW-Authenticate header points at the OAuth metadata (/.well-known/oauth-protected-resource), so clients start the sign-in flow automatically. Batch JSON-RPC arrays are intentionally not supported.
Supported JSON-RPC methods
| Method | Behavior |
|---|---|
initialize | Returns protocol version, server info, and tool capability. |
ping | Empty result. |
tools/list | Returns only the tools the connection's access level allows. |
tools/call | Dispatches one curated tool to the backing /api/v1route with the caller's access token. |
notifications/initialized | Acknowledged with an empty 202. |
What you can do
Curated MCP tools cover lean reads plus bounded management of existing leads, conversation handling, agent settings, sales-process modules, catalog integrations, and team access. Conversation tools can read the full user/assistant transcript, switch AI ↔ manual handling mode, and send a WhatsApp reply only while the thread is manual and Meta's 24-hour inbound window is open. Team tools invite or update members and grant agent access.
MCP intentionally does not create net-new leads, run destructive operations, trigger outbound connector tests or provider syncs, read secrets, regenerate or publish agent prompts, or issue invoice URLs.
Access levels
Each access level is a set of per-domain grants (read or read_write). MCP filters the tool catalog by those grants — a connection with leads: read only sees read-only lead tools; one with no entry for a domain sees no tools for it.
| Access level | Grants |
|---|---|
| Full access (default) | Agents (read/write), Sales Process (read/write), Branding & Settings (read/write), Lead Inbox (read/write), Lead Classification (read/write), Analytics (read/write), Integrations (read/write), Team & Access (read/write), Operations (read/write), Advertising (read/write), Payments (read/write), Agent testing (billed per conversation) (read/write) |
| Builder / DS engineer | Agents (read/write), Sales Process (read/write), Branding & Settings (read/write), Integrations (read/write), Operations (read), Agent testing (billed per conversation) (read/write) |
| Sales rep | Lead Inbox (read/write), Team & Access (read) |
| Analyst | Analytics (read), Lead Inbox (read), Lead Classification (read) |
Change an app's access level, or disconnect it, on the dashboard's API Keys & MCPpage. Both take effect on the app's next request.
Client config
In Claude, go to Settings → Connectors → Add custom connector and paste the URL. In Claude Code, run claude mcp add --transport http cysora https://www.cysora.com/api/mcp and then /mcp to sign in. JSON-configured clients such as Cursor need only the URL:
{
"mcpServers": {
"cysora": {
"url": "https://www.cysora.com/api/mcp"
}
}
}Scripts, CI jobs, and other headless integrations should call the REST API with a secret API key instead; MCP needs a person to approve access in the browser.
See also
Full API reference →
Integration recipes — combine MCP with the public API to solve common SMB needs →