---
title: 'Your AI can run your voice stack now: the Sautikit MCP server is live'
description: >-
  Sautikit's hosted MCP server connects Claude Code, Cursor, and VS Code to your
  workspace — 42 tools for calls, numbers, agents, and campaigns.
summary: >-
  The hosted MCP server at mcp.sautikit.com gives AI clients 42 tools over your
  Sautikit workspace. One command to connect; you confirm anything that spends
  money. Here's the launch demo.
date: 2026-07-13T00:00:00.000Z
type: blog
---


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](https://modelcontextprotocol.io) server at
`https://mcp.sautikit.com/mcp`, and it turns your AI coding assistant into
a voice operator for your workspace.

One command to connect from Claude Code:

```bash
claude mcp add --transport http sautikit https://mcp.sautikit.com/mcp \
  --header "Authorization: Bearer $SAUTIKIT_API_KEY"
```

Cursor, VS Code, and Windsurf configs are in the
[setup guide](/developers/guides/connect-mcp). Your existing API key is the
whole handshake — no new accounts, no local processes.

## The demo: a campaign from a one-line brief

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:

1. **`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.
2. **`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.
3. **`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.
4. **`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.
5. **`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.
6. **`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.

## Why this works: the tools ARE the API

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.

## The part we're most excited about

`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.

## Get started

1. Mint an API key at [app.sautikit.com](https://app.sautikit.com).
2. Connect your client — [setup guide](/developers/guides/connect-mcp),
   or the one-liner above for Claude Code.
3. Ask your AI to list your numbers. Then ask it to do something real.

The full tool reference lives on the [MCP page](/mcp). OAuth-based connect
for hosted AI surfaces is next on the roadmap; the tool layer you build
against today won't change.
