- A documentation surface that your agent can read directly (no HTML scraping).
- An MCP server that it can call as a tool.
- A CLI (
telequick) that scaffolds projects with agent-readyAGENTS.mdfiles included.
MCP server
The docs MCP server is available at:Wiring into Claude Code, Cursor, etc.
list_pages, search_docs, and
get_page as callable tools next to its built-in toolbox.
Smoke test
Platform MCP server (control plane)
The docs server above is a read-only reference. A second MCP server runs on the control plane. It lets an agent operate your workspace: list calls, originate, manage agents, and pull analytics. The agent can do anything that your role in the organization allows. See Platform MCP Server for the full usage guide:mcp:<domain>:<action>, such as mcp:cdr:read. One scope permits one
action class in one operation group. There is no scope that permits
everything. Select the smallest set that does the job.
Instead of one tool per API operation (~540), the server exposes five
meta-tools in two sets. The tool listing labels each set, so a client can
separate them before it calls anything.
Public tools. Read-only, server metadata only, no scope needed:
Privileged tools. These reach tenant data, and each call needs the one
scope of the operation:
read_operation refuses a mutation, and call_operation refuses a
query. An agent follows this workflow: whoami → list_operations →
describe_operation → read_operation or call_operation. For
org-scoped operations, the server pins the organization id to the key’s
org. An agent cannot be steered into another tenant.
Smoke test
Bill of materials
Before you point an agent at the control plane, you can audit what the server itself is built from. It publishes a CycloneDX 1.6 bill of materials — every production dependency with its version, licence and registry integrity hash, plus the AI models the server can invoke:https://portal.telequick.dev/mcp/sbom.cdx.json.
Neither path needs authentication: a bill of materials exists to inform
the decision to trust the server, so it cannot sit behind that trust.
The BOM is regenerated whenever the server binary is built, and
metadata.component.version carries the build sha the running server
reports at /health. That is how you tell whether the document
describes the deployment you are actually talking to.
Plain-text documentation
Some agents do not speak MCP. For them, and for use as a static prompt-context drop-in, every page is also published as plain Markdown:
The format follows the llms.txt convention. Put
the URL into an LLM’s context window, and the LLM knows how to use it.
CLI: clutch
The clutch CLI does what the MCP server does. After clutch auth login, it also runs telephony operations against the live control-plane
API.
Docs (no auth):
ExecuteDialplan server-side):
CLUTCH_BASE_URL (portal), CLUTCH_DOCS_BASE (docs site).
Scaffolding agent-ready projects
telequick init <lang> <name> creates a working starter in your
working directory:
- A working dial / event-handling sample (
main.telequick/main.py/src/index.ts) that compiles against the TeleQuick SDK. - An
AGENTS.mdfile tuned for that language. Agents read this file first when they enter the project. It captures the language-specific traps that an agent will otherwise re-discover the hard way (e.g. “Emscripten corrupts byte arrays passed asstd::string; usetyped_memory_viewinstead”). - A
.telequick.jsonproject manifest with a pinned schema version fortelequick migrate.
Best practices for AI-assisted development
These practices apply to any SDK that changes quickly. We list them because the TeleQuick wire format and method-ID table change between minor releases.- Browse before you search. Tell your agent to fetch
/llms.txtfirst, so that it knows what exists. Search excerpts are noisier than full pages. - Fetch full pages, not excerpts. Use
get_page(MCP) orget-page(CLI) when you need authoritative answers. The grouped index is for navigation. The page itself is for code. - Never hand-edit serde structs. The Python, TypeScript, Go, Rust, Java, and .NET bindings are auto-generated from the schema. To add an RPC field, your agent should update the upstream schema and regenerate. It should not patch the binding by hand.
- Run
telequick migrateafter you bump the SDK. This shows schema drift before runtime does.
Agent Skills
The TeleQuick Agent Skills repository ships end-to-end recipes. A recipe loads into your coding agent’s context when your intent matches. The agent then builds the feature the correct way the first time. Put the repo into.claude/skills/ (Claude Code) or .cursor/skills/ (Cursor). Your
agent then gains task-specific knowledge for these workflows:
Generic recipes
telequick-pstn-dial— outbound PSTN dialing (auth, originate, audio frames, hangup).telequick-ai-bridge— wire a live call to OpenAI Realtime / Anthropic / Gemini Live with barge-in.telequick-call-events—CallEventstream consumption, reconnection, Q.850 cause handling.telequick-inbound-routing—SetInboundRouting→AnswerIncomingCall, IVR menus, queueing.telequick-sip-trunk— register a carrier (Twilio, Telnyx, Bandwidth, Plivo), caller-ID rules, codecs.telequick-bulk-campaign—OriginateBulkwith CSV input, pacing, abort + resume.telequick-recording— per-call recording, stereo, retrieval, transcription.telequick-tool-calling— LLM tool / function calling: the built-in implicit telephony toolset (transfer / hold / DTMF / disconnect / supervisor), custom server-side tools, and client-side tool calls via OpenAI Realtime.telequick-rag-integration— pgvector / Pinecone / Weaviate retrieval as a tool call with latency budgets and barge-in safety.telequick-crm-enrichment— pre-call enrichment (Salesforce / HubSpot lookup → system prompt overrides) vs. in-call tool lookup.
telequick-vendor-browser-webrtc— capture mic in the browser, send PCMU over WebTransport.telequick-vendor-livekit— bridge PSTN into a LiveKit room.telequick-vendor-daily— bridge PSTN into a Daily room (Pipecat-friendly).telequick-vendor-chime— Amazon Chime SDK Meetings or Voice Connector.telequick-vendor-twilio— bridge from existing Twilio Media Streams (TwiML<Stream>) into TeleQuick.telequick-vendor-vapi— bridge a Vapi.ai voice agent over Vapi’s WebSocket transport.