# Kapso — how to use (mcp.ai)

Connect your Kapso account and use 10 tools for communication straight from your AI agent. Connect with your own API key. Kapso provides APIs for WhatsApp messaging, customer and contact management, broadcasts, workflows, and serverless functions.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_kapso?ms=1787295840000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `kapso_get_function`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/kapso`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/kapso/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/kapso/get/function` — Retrieve one Kapso serverless function's code, runtime configuration, deployment status, and computed URLs without invoking or changing it.
  - body: { function_id: string }
- `POST https://api.mcp.ai/api/kapso/get/phone/number` — Retrieve one Kapso WhatsApp phone-number configuration by its Meta phone number ID.
  - body: { phone_number_id: string }
- `POST https://api.mcp.ai/api/kapso/get/phone/number/health` — Run Kapso's live checks for one WhatsApp phone-number configuration and return its body-level health status and individual check results.
  - body: { phone_number_id: string }
- `POST https://api.mcp.ai/api/kapso/get/workflow` — Retrieve one workflow's metadata, full graph definition, or available variables without executing or changing it.
  - body: { view?: string, workflow_id: string }
- `POST https://api.mcp.ai/api/kapso/list/conversations` — List one page of WhatsApp conversations by recent activity, with filters for phone number, status, assignment, and activity time range.
  - body: { limit?: integer, status?: string, unassigned?: boolean, next_cursor?: string, phone_number_id?: string, assigned_user_id?: string, last_active_after?: string, last_active_before?: string, contact_phone_number?: string }
- `POST https://api.mcp.ai/api/kapso/list/customers` — List Kapso project customers and filter them by name, external customer ID, or creation time. Returns one page and a continuation cursor.
  - body: { per_page?: integer, next_cursor?: string, created_after?: string, name_contains?: string, created_before?: string, external_customer_id?: string }
- `POST https://api.mcp.ai/api/kapso/list/functions` — List serverless functions configured in the Kapso project, including runtime and deployment state, without returning function source code or invoking any function.
- `POST https://api.mcp.ai/api/kapso/list/messages` — List one page of WhatsApp message history project-wide through Kapso Platform or for one phone number through the Meta-compatible proxy. This tool only reads history and never sends messages.
  - body: { limit?: integer, status?: string, direction?: string, api_surface?: string, next_cursor?: string, conversation_id?: string, phone_number_id?: string }
- `POST https://api.mcp.ai/api/kapso/list/phone/numbers` — List WhatsApp phone-number configurations in the Kapso project, with filters for account, customer, messaging state, and display name.
  - body: { per_page?: integer, customer_id?: string, next_cursor?: string, name_contains?: string, phone_number_id?: string, messaging_enabled?: boolean, business_account_id?: string }
- `POST https://api.mcp.ai/api/kapso/list/workflows` — List project workflows and filter them by lifecycle status, name, or creation time. This read-only action does not execute a workflow.
  - body: { status?: string, created_after?: string, name_contains?: string, created_before?: string }

## Example prompts
- "What can I do in Kapso?"
- "Show me a summary of my Kapso account"

## More
- Page: https://mcp.ai/kapso
- Agent spec (llms.txt): https://mcp.ai/kapso/llms.txt
- Postman collection: https://mcp.ai/kapso/postman.json
