Categories › Communication › Team chat (Slack, Discord, Teams)
A phone number for your business or your AI agent. Kai answers it and calls businesses for you.
Remote server: your requests and data go to www.kaicalls.com. Claude Code: claude mcp add --transport http kaicalls https://www.kaicalls.com/api/mcp · Claude app: Settings → Connectors → Add custom connector.
The tools this server listed when we connected to it, in its own words.
request_human_approval — Ask a named principal for a specific decision using the provisioned voice approval channel. Requires restricted approvals:write, a configureconnect_agent — Connect an external agent to a business and its signed event outbox. Requires current business admin membership, an assigned Kai agent, and get_agent_connection — Discover the external agent connection, signed webhook configuration, scoped API operation catalog, channel readiness and remaining runtime disconnect_agent — Disconnect the external agent and disable its webhook atomically. Requires current business admin membership and agents:write, sms:write, weget_lsa_account_report — Read the authorized advertiser's live Google Local Services aggregate account report, including actual spend, currency and charged lead totaget_lsa_setup — Inspect Google LSA account selection and sync freshness, with setup steps. Saved configuration never proves a live workflow. Cloud-project psync_lsa — Sync an explicitly selected connected LSA advertiser. Requires current business admin role. Syncing runs lead ingestion, and existing businelist_lsa_leads — List synced Google LSA leads, charge and credit states, source IDs and rating details. The returned LSA lead id identifies the lead in LSA cget_lsa_conversations — Read the latest 200 synced Google LSA conversation events for an LSA lead, including customer and advertiser messages. History is as currentget_lsa_report — Report LSA lead counts, types, observed statuses, ratings and credit counts for an explicit UTC window (start inclusive, end exclusive). Incsend_lsa_reply — Send an authorized text reply inside an existing Google LSA message lead through the Ads API. This contacts the customer. Requires current brate_lsa_lead — Submit an authorized, truthful Google LSA quality survey and return Google's actual bonus-credit decision. This is not a guaranteed refund oget_callrail — Read a business's CallRail call-tracking setup. action=status returns the connected CallRail account, which CallRail companies feed which bumanage_callrail — Connect CallRail call tracking to a business's line. Order: (1) connect {api_key, account_id?}; (2) get_callrail status lists the companies get_nimbata — Read a business's Nimbata call-tracking setup: the connected Nimbata account, which Nimbata projects feed which business (with when each lasmanage_nimbata — Connect Nimbata call tracking to a business's line. connect {api_token} checks and saves a Nimbata personal API token (Agency plan; one tokeagency_profile_bootstrap — Registers a new agency for the signed-in user and makes them its owner, using the given brand and support details. Requires a signed-in useragency_profile_update — Replaces the agency brand, support details and requested commercial mode. Requires an agency owner or admin and the current profile revisionagency_profile_invite — Creates a staff invitation for an email address with the admin, operator or reader role and returns a one-time invite link that expires in 7agency_profile_accept_invite — Joins the agency using the token from an invite link. The signed-in user must have a verified email that matches the invited address, and thagency_profile_revoke_invite — Cancels a pending staff invitation so its link can no longer be used. Requires an agency owner or admin. It does not remove anyone who alreaagency_profile_assign — Gives an active agency staff member access to one client business with the admin or member business role. Requires an agency owner or admin agency_profile_unassign — Removes a staff member's agency assignment to one client business, and removes the business membership if this assignment created it. Requiragency_profile_revoke_member — Removes a staff member from the agency: revokes their membership, all their client assignments, their accepted invites and every API key issagency_profile_issue_key — Creates a new API key for yourself in this agency, limited to the requested scopes, and returns the secret once. Readers cannot get write scagency_offer_save — Creates a new offer draft, or replaces an existing draft when offerId and its current revision are given. Requires an agency owner or admin.agency_offer_preview — Builds the publishable manifest and sales kit for an offer draft and returns its fingerprint and revision for publishing. Requires an agencyagency_offer_publish — Publishes the previewed offer as a new immutable version and returns its enrollment link. Requires an agency owner or admin, plus the fingeragency_offer_archive — Archives an offer so it can no longer be published or used for new enrollments. Requires an agency owner or admin and the current offer reviagency_enrollment_start_self_service — Starts a business owner's own enrollment in a published agency offer, using the business name and intake facts. Requires a signed-in user seagency_enrollment_finish_self_service — Completes a self-service enrollment after the owner has approved the current intake: creates the client business and queues its package instagency_enrollment_owner_save — Lets the client owner replace the intake facts on their own enrollment link. Requires the owner who claimed the link and the session's curreagency_enrollment_create — Creates an enrollment session for 1-50 existing or new clients against a published offer version and returns one owner approval link per newagency_enrollment_save — Replaces the client entries of an uncommitted enrollment session. Requires the session creator (or an agency owner/admin) and the current seagency_enrollment_preview — Checks every client in the batch for missing facts, owner approval and payer conflicts, and returns what enrolling would install, with the fagency_enrollment_enroll — Commits the previewed batch: creates new client businesses, records owner approvals and queues package installations for every ready client;agency_enrollment_claim_owner — Links the signed-in client owner to their enrollment link using its token. The user's verified email must match the owner email on the link.agency_enrollment_approve_owner — Records the client owner's approval of the exact offer and intake facts on their enrollment link. Requires the owner who claimed the link, tagency_enrollment_rotate_owner_link — Issues a new owner link for a client in the batch and invalidates the old one, clearing any earlier claim and approval. Requires the sessionagency_enrollment_revoke — Revokes an enrollment session and all of its owner links so nothing more can be approved or enrolled from it. Requires the session creator oNot tested by KitScout yet. When our harness runs it, pros, cons and the tasks we tried appear here, with the date and evidence.