Query your CDR from an AI client (MCP)
The appliance exposes a read-only MCP server. Claude Desktop, Cursor or Claude Code query your call data in natural language. The AI model runs on the client side, never in the appliance.
Six read-only tools
| Tool | Example question |
|---|---|
| Call search | "Calls to extension 1104 yesterday afternoon" |
| Aggregates | "Calls per day over the last month" |
| Top callers | "The 10 extensions that call out the most" |
| Inbound / outbound ratio | "Share of inbound calls this week" |
| Duration buckets | "How many calls last under 30 seconds?" |
| Cost per extension | "Telephony cost per extension in September" |
No tool writes, deletes or reveals a full phone number.
Step 1/3
Generate a token
In the appliance interface: Admin → Configuration → Security → MCP. Generate a token.
| Display | Shown once. The appliance keeps only a hash: a lost token cannot be recovered, generate a new one. |
|---|---|
| Validity | 365 days |
| Rotation | "Rotate the token" issues a new token and revokes the previous one immediately, with no overlap. Update the client configuration right after. |
Step 2/3
Configure the AI client
The MCP screen provides a ready-to-copy configuration. It looks like this, with the server URL shown on the screen:
{
"mcpServers": {
"natalia": {
"url": "<URL shown in the MCP screen>",
"transport": "streamable_http",
"headers": { "Authorization": "Bearer <token>" }
}
}
}
json
| Client | Where to paste |
|---|---|
| Claude Desktop | claude_desktop_config.json (Settings → Developer → Edit Config) |
| Cursor | .cursor/mcp.json |
| Claude Code | .mcp.json at the project root |
The client workstation must reach the appliance over HTTPS on your LAN. Restart the client after editing.
Step 3/3
Ask a question
In the client, ask a question about your calls. The client picks the tool, the appliance answers with aggregated or pseudonymised data.
Error 401: token revoked, expired or mistyped. Generate a new one and update the configuration.