Every API eventually meets the same user: an AI agent with a keyboard.
Today we're making that user a first-class citizen. Sautikit now runs a
hosted Model Context Protocol server at
https://mcp.sautikit.com/mcp, and it turns your AI coding assistant into
a voice operator for your workspace.
Here's the conversation we've been running internally all week. One
instruction:
"Create a warm, brief voice agent that reminds patients about
appointments, then call everyone on this list and tell me how it went."
Watch what the AI does with 42 tools at its disposal:
create_agent — drafts the agent: base prompt, voice, model. If the
model id isn't in the catalog, the API rejects the create with a clear
error, so the agent can correct itself.
publish_agent — freezes the draft as revision 1. Published
revisions are immutable, so the campaign can't drift if someone edits
the draft mid-flight.
create_broadcast — sets up the campaign with a prompt template
(Remind {{name}} their appointment is on {{date}}), a weekday calling
window, and a retry policy for no-answers.
add_broadcast_contacts — loads the list. Row-level validation
means one malformed phone number doesn't sink the batch; the AI gets
back exactly which rows were rejected and why.
start_broadcast — and here the AI stops. This tool is annotated
as money-spending, so your client asks you to confirm before a single
call is placed. You say yes; dialing begins.
get_broadcast_report — when the campaign completes, the AI pulls
the funnel: how many reached, how many hit voicemail, what it cost.
Six tool calls, one human confirmation, zero dashboard tabs.
The MCP server doesn't get a private backdoor. Every tool wraps the public
REST API — the same endpoints, auth, scopes, rate limits, and billing your
own code uses. If a tool works, the API works; if a tool breaks, we broke
the API and we'll hear about it twice.
That design buys three guarantees:
Scoped by your key. The server advertises only the tools that match
your key's scopes, and agent + broadcast endpoints enforce those scopes
server-side — a key without broadcasts.manage cannot start a campaign,
through MCP or the REST API.
Confirmations where money moves.place_call, claim_number,
start_broadcast, send_agent_call and friends carry MCP annotations
that make clients prompt the human first.
Secrets can't round-trip. Agent tool headers are write-only. Key
minting, payments, and secret rotation aren't tools at all — identity
and money-in stay in the dashboard.
validate_voice_actions is a local tool that checks voice-action JSON
against the real platform schema — the exact schema the runtime enforces.
LLMs love inventing plausible fields; this tool kills them at authoring
time instead of on a live call. Pair it with update_number_routing and
"AI wires up your IVR in one conversation" stops being a demo and becomes
a workflow.
Connect your client — setup guide,
or the one-liner above for Claude Code.
Ask your AI to list your numbers. Then ask it to do something real.
The full tool reference lives on the MCP page. OAuth-based connect
for hosted AI surfaces is next on the roadmap; the tool layer you build
against today won't change.