Tools
Platica's MCP server publishes 62 tools, one for every production endpoint of the REST API.
Naming conventions
All tools follow the verb_resource pattern in snake_case:
| Verb | Meaning |
|---|---|
list_* | List every item of a resource (paginated). |
get_* | Retrieve a single item by ID or unique identifier. |
create_* | Create a new item. |
update_* | Partially update an existing item. |
delete_* | Delete an item. |
send_* | Send/trigger something (messages, campaigns). |
Annotations (annotations)
Every tool includes MCP annotations that help the client understand its nature:
| Annotation | When it's used |
|---|---|
readOnlyHint: true | Only reads data (list_*, get_*). The client can run it without asking for confirmation. |
destructiveHint: true | Deletes or mutates in bulk (delete_*, clear_campaign_audience). |
idempotentHint: true | Calling it multiple times with the same arguments produces the same result. |
Invalid note type. Should be either "note", "tip", "important", "warning", "caution"
Catalog by resource
| Resource | # tools | Page |
|---|---|---|
| Messages | 2 | Messages |
| Conversations | 3 | Conversations |
| Customers | 5 | Customers |
| Agents | 26 | Agents |
| Campaigns | 10 | Campaigns |
| WhatsApp templates | 2 | Templates |
| Webhooks | 6 | Webhooks |
| Custom fields | 4 | Custom fields |
| Tags | 4 | Tags |
| Total | 62 | — |
How to discover them at runtime
Any MCP client discovers the up-to-date list by calling the JSON-RPC method tools/list:
curl -X POST https://api.platica.mx/mcp \
-H "Authorization: Bearer pl_key_..." \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list"
}' The response includes name, title, description, inputSchema (JSON Schema), and annotations for each tool.