bots.st/kaicalls
KaiCalls
Business call routing and agent phone handling
790 ms
answered our call
- State
- Answered
- Protocol
- MCP 2025-06-18
- Tools listed
- 37
- Answered
- 4 of the last 4 calls
How to reach it
- MCP, HTTP
https://www.kaicalls.com/api/mcp - MCP, HTTP
https://www.kaicalls.com/api/mcp/acquisition
What it can do
| Tool | What it says it does |
|---|---|
add_team_phone | Add a teammate's (or the owner's) cell to the phones that ring before Kai answers. Idempotent — a cell already listed is reported as already included. Owners and admins are also registered on the admin roster, so calling the business line from that cell reaches the admin secretary; a member only… |
attach_number | Assign a phone number already in the KaiCalls registry pool to a business (and optionally route it directly to an agent). Does NOT purchase a new number; search_available_numbers and buy_number handle purchases. Mirrors POST /api/v1/phone-numbers. |
buy_number | Request a real phone-number purchase. This is APPROVAL-GATED: the carrier bills immediately on execution, so the tool only prepares a request for authenticated owner review. Caller-supplied human_confirmed, dashboard_session, or system_policy fields never authorize execution. Returns the stored… |
choose_customer_route | APPROVAL-GATED. After private-test proof is complete, save forwarding, published_number, both, or testing. This unlocks the command center but does not claim customer coverage; selected customer routes remain pending until independently verified. Forwarding is optional; testing keeps the existing… |
configure_agent_business_rules | Safely add or replace a named operational rules section inside an agent inbound prompt, then route the prompt patch through the governed agent.patch broker. It covers cross-business handoffs, callback language, alert promises, and client-specific operating rules, and leaves the rest of the prompt… |
configure_staff_alerts | Save business-owned staff alert recipients and post-call escalation rules. Saving settings does not prove provider delivery or owner receipt; activation notification proof is tracked separately. |
configure_textable_links | Create or repair the business_links entries used by the send_link/send_sms tools. These entries let callers receive booking, directions, cancellation, sister-location, or service-specific links by text without raw URLs in the voice prompt. |
confirm_notification_destination | APPROVAL-GATED. Save the owner-approved phone number (SMS) or email address where KaiCalls sends the owner the result of their first test call, for the exact active activation session. Once that test call's record is ready, KaiCalls sends a real text or email to that destination through its… |
create_agent | Create a new KaiCalls agent — the secretary that answers this business’s calls (the live voice agent plus KaiCalls records) — with a system prompt, greeting, voice, and model. Mirrors POST /api/v1/agents. Every subsequent mutation to this agent is versioned (assistant_config_versions) and… |
create_checkout | Create, or reuse, a secure payment page hosted by Stripe where the business owner pays for a KaiCalls plan from list_plans with their own card. Needs business_id, plan_id and an idempotency_key: retrying with the same key returns the same page, and choosing a different plan needs a new key. This… |
get_activation_status | Read current call readiness and persisted private-test proof for one accessible business. Only a currently entitled owner with a coherent assigned number gets the existing private-test setup link. Missing entitlement, incomplete setup or stale sessions do not authorize a call. It cannot assert or… |
get_business_info | Read back what a business already has: profile details, how many agents are configured, and recent call volume. This shows whether a business number that answers missed calls already exists. When the business has no working phone line yet, `next_step` names the tool that sets one up. |
get_change_history | List an agent's recent config-change audit trail (change_type, change_source, old/new value, timestamp) from admin_change_history — the same record the admin_get_change_history voice tool reads over the phone. Every mutation KaiCalls makes to an agent (via update_agent_config… |
get_checkout_status | Read a Stripe-verified subscription checkout receipt for a business you own. Requires business_id and session_id from checkout. Confirmed billing does not prove agent, number, or call activation; get_activation_status reports setup proof. This tool never creates checkout or retries provisioning. |
get_extra_number_status | Read an owner-authorized extra-number request. Billing, assignment and live activation are distinct. Unknown checkout or provider outcomes retain the original request and number, so no replacement purchase is needed or started. |
get_operational_settings | Read the business-level operational setup of a live account: staff alert recipients, SMS/email alert flags, escalation rules, textable send-link entries, and assigned agent voice/model/greeting metadata. |
get_phone_flow | Read how calls ring on the business's hosted phone system: which cells and desk phones ring, for how many seconds, and whether after-hours callers go straight to Kai. Reconciled from the phone system on every call. Mirrors POST /api/v1/phone-system action=get_flow. Returns 409 when the hosted… |
get_phone_system_status | Read saved phone-system configuration: extension, resource IDs (never secrets), assigned line, and agreement. phone_system_configuration.configuration_allows_calls means provisioned resources plus a permitting agreement only; it does not verify calls can connect. ready_for_calls is null because… |
get_setup_recovery_status | Read an owner-authorized setup recovery request by its business and idempotency key. Running requests are never automatically stolen, including stale requests. A ready receipt does not prove live activation. |
get_usage | List recent API usage events (endpoint, method, status code, cost) for the caller's account. Mirrors GET /api/v1/usage. |
list_agents | List the KaiCalls agents on the authenticated account. Shows whether this business already has a secretary answering its calls. |
list_config_versions | List an agent's hashed, redacted assistant config version history (rollback lineage included). Pass `version` to fetch one version's full redacted config_snapshot instead of the list. Mirrors GET /api/v1/agents/versions. |
list_knowledge | List agent knowledge base entries for a business. Mirrors GET /api/v1/knowledge. |
list_numbers | List phone numbers assigned to the accessible business(es), with capability and compliance flags. Assignment does not prove a successful inbound test or customer coverage. get_activation_status reports current readiness and private-test proof. Forwarding is an optional customer route. Mirrors GET… |
list_plans | Read the canonical public KaiCalls plan catalog, monthly USD prices and allowances. Does not select a plan, create checkout, or change billing. |
list_voices | List the curated, credential-free voice catalog (id, display name, accent, language, gender, sample URL) used to configure agent voices. Mirrors GET /api/v1/voices. |
make_call | Place an outbound call through a KaiCalls AI agent: call back a customer who previously called this business, give the owner a voice preview, or call on the owner's behalf (a landlord, clinic, pharmacy, school or utility) with the task in context. For a customer callback, pass the existing lead_id… |
request_extra_number | Reserve an exact pool number and request an owner-only browser review of its recurring extra-line price. Requires numbers:write and billing:write. It never charges included or prepaid capacity; included allocation goes through attach_number. This tool does not approve payment or prove activation. |
retry_activation_notification | APPROVAL-GATED. Send the owner's activation notification again, as a real text or email through KaiCalls' messaging provider, for the exact active activation session. Only retries a channel whose last attempt failed or has waited long enough; an attempt whose outcome is unknown is never blindly… |
retry_setup | Reconcile database pointers for an existing imported signup phone reservation. Owner-only, entitlement-checked, single-flight and idempotent. Never creates agents, buys numbers, changes provider routing or sends messages. PBX, missing imports, and stale claims return review blockers. Reusing the… |
rollback_config | Request a rollback to a prior assistant_config_versions snapshot. This changes live greeting, voice, prompt and model settings. When the business owner or an admin is signed in through this connector, the rollback applies immediately; otherwise authenticated owner review of the exact stored… |
search_available_numbers | Search the carrier for phone numbers available to purchase (live number inventory). Mirrors GET /api/v1/phone-numbers/search. In the acquisition flow this follows set_owner_phone, which saves a reachable owner number or records a decline. |
set_owner_phone | Saves the owner's own mobile number on the business record (the number Kai texts whenever it takes a call for the owner) so Kai can ring it first and so activation/forwarding follow-ups can reach a human — connecting a number alone does not prove the owner can be reached. In the acquisition flow… |
set_up_phone_system | Turn the business's number into a hosted phone system: Kai is installed as extension 700, the owner's mobile joins the list of phones to ring first, and calls reach Kai when nobody picks up. Idempotent and resumable — a re-run reuses everything already created and reports it under `reused`. Needs… |
update_agent_config | Edit an agent's live runtime configuration — greeting/first message, inbound or SMS prompt, voice, language model, max call duration, and call-transfer settings — routed through the governed update broker so every change keeps the consent + audit trail (a versioned config snapshot and change… |
update_phone_flow | Replace how calls ring on the business's hosted phone system with a full phone flow: { version: 1, hours: { mode: 'always' | 'business_hours', afterHours: 'kai' }, ring: { members: [{ kind: 'cell', phone: E.164, label, requirePressOne } | { kind: 'desk_phone' | 'user', userId, label }]… |
upsert_knowledge | Create a new agent knowledge base entry, or update one when `id` is provided. Mirrors POST /api/v1/knowledge. Creating requires title, content, and content_type. |
In its maker's words
A phone number for your business or your AI agent. Kai answers it and calls businesses for you.
- Website
- www.kaicalls.com?utm_source=mcp_registry&utm_medium=directory
- Source
- github.com/KaiCalls/kaicalls-mcp
- Publisher
- kaicalls.com
- Listed from
- the official MCP Registry as
com.kaicalls/kaicalls - Version
- 1.1.0, updated 29 Oct 2026
- Kinds of work
- Messaging and support, Shops and payments, Law, tax and government
The domain it lives on
- kaicalls.com
- registered 14 Apr 2025 (1 year ago), at Unstoppable Domains Inc., its home page is a working site
From our own crawl of domain names: registry records and the home page as our crawler last saw it.
Every call we made
| When | What happened | Time |
|---|---|---|
| Answered | 790 ms | |
| Answered | 1319 ms | |
| Asked for a key | ||
| Asked for a key |
Next door
- Inbin: email for AI agentsDisposable inboxes for agent email verification
- AgentLairEmail delegation via inbox and vault
- Mailrith Email MarketingManage email subscribers, broadcasts, and automations with r
- faxforagents-mcpSend and receive faxes with approval
- AnyHookManage webhook inboxes for agent events
Is this your bot? Claim its address to add a verified badge and keep the listing current.