# MCP tool reference

> All 29 tools on the hosted MCP server, grouped by area, with arguments and behavior notes — businesses, knowledge, workflows, phone, SMS compliance, campaigns, contacts, CRM, integrations.

The server exposes **29 tools**. Read tools run freely; mutating tools act immediately. Most tools take a `project` argument — the business — which accepts the name or the ID; a wrong value errors back with the real options.

## Businesses & services

| Tool | Arguments | Notes |
| --- | --- | --- |
| `list_projects` | — | Every business with its services and their agent IDs. |
| `create_project` | `name` | Creates the business. |
| `create_service` | `project`, `type`, `name` | Types: `chatbox`, `receptionist`, `helpdesk`, `crm`, `scheduler`, `whatsapp`, `instagram`, `messenger`, `sms`, `calendar`. Chatbox/receptionist get their backing agent automatically. |
| `get_analytics` | `project` | The Home dashboard as data: chats, calls, tickets, leads, volume. |

## Knowledge

| Tool | Arguments | Notes |
| --- | --- | --- |
| `add_knowledge` | `project`, `kind` (text / qa / url), `title`, `text` / `question`+`answer` / `url` | URL kind crawls the page(s); text and Q&A train directly. |
| `list_knowledge` | `project` | Every trained source with status. |

## Workflows

| Tool | Arguments | Notes |
| --- | --- | --- |
| `list_workflows` | `project` | Workflows with channel, service, and live status. |
| `create_workflow` | `project`, `name`, `description?`, `service_id?`, `graph?` | Creates the workflow (optionally with a full node/edge graph); returns validation. |
| `update_workflow_graph` | `project`, `workflow_id`, `graph` | Replaces the staging graph; returns validation. |
| `get_workflow` | `project`, `workflow_id` | The full graph plus versions. |
| `set_workflow_triggers` | `project`, `workflow_id`, `triggers[]` | Events from the [trigger reference](/docs/workflows/triggers), with optional form/board filters. |
| `publish_workflow` | `project`, `workflow_id` | Promotes staging to production. |
| `test_workflow` | `project`, `workflow_id`, `name?`, `email?`, `phone?` | Fires the workflow against a test person — the SMS really sends, to the number you give. |

## Phone & texting

| Tool | Arguments | Notes |
| --- | --- | --- |
| `search_phone_numbers` | `area_code?`, `region?` | Available local numbers. |
| `buy_phone_number` | `project`, `number`, `sms?`, `label?` | Respects billing — live purchases go through Stripe checkout. |
| `list_phone_numbers` | `project` | Owned numbers with voice/texting tags and assignments. |
| `setup_receptionist` | `project`, `greeting`, …persona fields | Configures the receptionist service's greeting and behavior. |
| `get_sms_compliance` | `project` | A2P registration status + exactly which fields are missing. |
| `save_sms_compliance` | `project`, business profile fields | Saves the registration profile (legal name, EIN, opt-in method…). |
| `register_sms_compliance` | `project` | Submits for carrier registration. |
| `assign_sms_number` | `project`, `number` | Attaches an approved texting number to the SMS service. |

## Outreach & people

| Tool | Arguments | Notes |
| --- | --- | --- |
| `create_campaign` | `project`, `service_id`, audience/message fields | The campaign runs on the chosen service — its number, its agent. Requires the outbound entitlement. |
| `get_campaign` | `project`, `campaign_id` | Status and per-recipient results. |
| `list_contacts` | `project` | Contacts with DND state. |
| `add_contact` | `project`, `name?`, `email?`, `phone?` | Upserts by phone → email match. |

## CRM & integrations

| Tool | Arguments | Notes |
| --- | --- | --- |
| `get_crm` | `project` | Boards, columns, and fields — what the lead tool and ingest API write into. |
| `create_crm_api_key` | `project`, `label`, destination | Issues a [Connections key](/docs/crm/connections) (`crk_…`) targeting a board + column. |
| `list_integrations` | `project` | The business's connected accounts with labels and scopes. |
| `use_integration` | `project`, `integration`, `action`, `params` | Executes a connector action against a named account. Writes are classified conservatively. |

> **TOOL COUNT:** Four business/service + two knowledge + seven workflow + eight phone/SMS + four outreach/people + four CRM/integration = 29 tools. The catalog grows with the product; `tools/list` is always authoritative.
