PPactDocs
Voice MCP

Voice MCP

Call your Pact CRM on a phone number and get spoken answers — a signature-validated Twilio webhook routes each utterance through a turn-based voice agent into curated CRM intents.

Voice MCP lets a caller phone your workspace and talk to your CRM out loud. Ask about a deal, log a note, book a meeting, or get a pipeline read — and hear the answer back in a synthesized voice.

How a call works

A caller dials the tenant's provisioned Twilio number. Twilio posts to Pact's /v1/voice-mcp/incoming webhook, and Pact validates the Twilio request signature before processing anything. Pact then answers with turn-based speech gathering: it plays a prompt, listens for the caller's next utterance, and routes that utterance through an in-process voice agent. Each turn repeats the cycle.

code
Caller dials number
  → Twilio posts to /v1/voice-mcp/incoming  (signature validated)
  → Pact answers, gathers speech for one turn
  → Voice agent routes the utterance to a CRM intent
  → Pact speaks the reply, gathers the next turn

Turn-based, not live audio

Voice MCP is built on Twilio's turn-based speech gathering (<Gather input="speech">), which uses Twilio's native speech-to-text. It is not a live media stream — Pact does not process a continuous audio feed of the call. Every feature here is framed around that turn-by-turn model.

What the agent understands

The phone agent recognizes a curated set of about a dozen CRM intents plus introspection — not Pact's full MCP tool catalog. Covered intents include:

  • Querying deals, accounts, and contacts
  • Pipeline health
  • Logging a note on the call or on a specific record
  • Sending a follow-up SMS or email
  • Booking a meeting
  • Transferring the call

When an utterance doesn't match a specific intent, the agent falls back to ask_workspace, a catch-all that answers open questions against your workspace. It also answers meta questions about itself — what it can do, recent history, who handles what, and knowledge-base lookups.

Explore Voice MCP