> ## Documentation Index
> Fetch the complete documentation index at: https://developers.huechat.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP tool reference

> Source inventory of HueChat MCP tools, granular permissions and action hints.

This snapshot contains **97 native tool definitions: 47 reads and 50 writes**,
from source `a9c5ee5f196a02b36a6a6764d5999de0668b0c9a` (19 October 2026).
It describes source capabilities, not a live grant or a claim that all tools
have been enabled or executed in every workspace.

Follow the [connection and permission guide](https://developers.huechat.ai/mcp-server.md) first. Eligible
Enterprise owners and administrators choose their permissions through
self-service. Current membership, workspace policy, managed plan features,
native modules, dependencies and messaging switches filter the actual catalog.
Installing or updating a plugin does not expand an existing grant.

## How to read the table

* Scopes in a row are required together unless it explicitly says **Any one of**.
* `get_price_list` accepts any one of `products:read`, `appointments:read` or
  the legacy `deals:read` alternative. Each scope exposes only its corresponding
  section; section dependencies and plan features still apply.
* The plan column records the managed scope feature. Other module and runtime
  gates may apply even when that column is empty.
* `destructiveHint` marks replacement, removal, cancellation or other destructive
  effects; `openWorldHint` marks interaction beyond stored workspace records.
  These are client-facing metadata hints. They do not grant permissions or
  replace server checks and human approval.
* Customer sends need a matching send scope and separately enabled sending
  controls. Confirm mode returns a preview; team-review mode waits for review.
  Broadcast scheduling always requires confirmation or review.

## Tool inventory

`create_template` requires `inbox_id` for an existing inbox in the selected
workspace. It saves a `DRAFT` only; submitting a template to Meta or sending
it to a customer is a separate operation with additional requirements.

Pass `components` as JSON objects, for example
`[{"type":"BODY","text":"Your order is ready"}]`.
When updating a draft, omit `components` to keep its current content.

| Tool | Access and action hints | Authorization scopes | Plan feature |
| - | - | - | - |
| `add_filtered_contacts_to_list` | write | `lists:write` | |
| `add_private_note` | write | `conversations:write` | |
| `add_tags_to_contact` | write | `labels:write` | |
| `analytics.summary` | read | `reports:read` | |
| `assign_conversation` | write, `destructiveHint` | `conversations:write`, `agents:read` | |
| `assign_ticket` | write, `destructiveHint` | `tickets:write` | |
| `block_contact` | write, `destructiveHint` | `contacts:write` | |
| `book_appointment` | write | `appointments:write`, `contacts:read`, `contacts:write` | `appointments` |
| `cancel_action` | write, `destructiveHint` | `mcp:use` | |
| `cancel_appointment` | write, `destructiveHint` | `appointments:write` | `appointments` |
| `check_appointment_availability` | read | `appointments:read` | `appointments` |
| `clear_list` | write, `destructiveHint` | `lists:write` | |
| `close_appointment_availability` | write | `appointments:write` | `appointments` |
| `close_ticket` | write, `destructiveHint` | `tickets:write` | |
| `confirm_action` | write, `destructiveHint`, `openWorldHint` | `mcp:use` | |
| `create_broadcast_draft` | write | `broadcasts:write` | `broadcasts` |
| `create_custom_field` | write | `custom_fields:write` | |
| `create_deal` | write | `deals:write` | `deals` |
| `create_list` | write | `lists:write` | |
| `create_list_from_filters` | write | `lists:write`, `contacts:read` | |
| `create_tag` | write | `labels:write` | |
| `create_template` | write | `templates:write` | `templates` |
| `create_ticket` | write | `tickets:write` | |
| `delete_custom_field` | write, `destructiveHint` | `custom_fields:write` | |
| `delete_deal` | write, `destructiveHint` | `deals:write` | `deals` |
| `delete_list` | write, `destructiveHint` | `lists:write` | |
| `delete_tag` | write, `destructiveHint` | `labels:write` | |
| `delete_template` | write, `destructiveHint` | `templates:write` | `templates` |
| `get_account_summary` | read | `reports:read` | |
| `get_ad_performance` | read | `reports:read` | |
| `get_agent_performance` | read | `reports:read`, `agents:read` | |
| `get_ai_actions_summary` | read | `reports:read` | |
| `get_appointment_catalog` | read | `appointments:read` | `appointments` |
| `get_appointment_changes` | read | `appointments:read` | `appointments` |
| `get_appointments` | read | `appointments:read` | `appointments` |
| `get_automation_summary` | read | `reports:read` | |
| `get_campaign` | read | `broadcasts:read` | |
| `get_campaign_performance` | read | `broadcasts:read` | |
| `get_campaign_summary` | read | `reports:read` | |
| `get_campaigns` | read | `broadcasts:read` | |
| `get_contact` | read | `contacts:read` | |
| `get_contact_analytics` | read | `reports:read` | |
| `get_contact_stats` | read | `reports:read` | |
| `get_contact_tags` | read | `contacts:read` | |
| `get_contacts` | read | `contacts:read` | |
| `get_conversation` | read | `conversations:read` | |
| `get_conversations` | read | `conversations:read` | |
| `get_custom_field` | read | `custom_fields:read` | |
| `get_custom_field_usage` | read | `custom_fields:read` | |
| `get_custom_fields` | read | `custom_fields:read` | |
| `get_deal` | read | `deals:read` | `deals` |
| `get_deal_pipelines` | read | `deals:read` | `deals` |
| `get_deals` | read | `deals:read` | `deals` |
| `get_list` | read | `lists:read` | |
| `get_lists` | read | `lists:read` | |
| `get_message_analytics` | read | `reports:read` | |
| `get_operators` | read | `account:read` | |
| `get_or_create_contact` | write | `contacts:write`, `contacts:read` | |
| `get_price_list` | read | Any one of: `products:read` OR `appointments:read` OR `deals:read` | |
| `get_resolution_trends` | read | `reports:read` | |
| `get_tags` | read | `labels:read` | |
| `get_template` | read | `templates:read` | `templates` |
| `get_templates` | read | `templates:read` | `templates` |
| `get_ticket` | read | `tickets:read` | |
| `get_ticket_categories` | read | `tickets:read` | |
| `get_tickets` | read | `tickets:read` | |
| `get_upcoming_events` | read | `broadcasts:read` | |
| `get_whatsapp_quality` | read | `reports:read` | |
| `list_conversations` | read | `conversations:read` | |
| `list_inboxes` | read | `inboxes:read` | |
| `list_pending_actions` | read | `mcp:use` | |
| `mark_read` | write | `conversations:write` | |
| `merge_tags` | write, `destructiveHint` | `labels:write` | |
| `move_deal` | write, `destructiveHint` | `deals:write` | `deals` |
| `open_appointment_availability` | write | `appointments:write` | `appointments` |
| `remove_contacts_from_list` | write, `destructiveHint` | `lists:write` | |
| `remove_filtered_contacts_from_list` | write, `destructiveHint` | `lists:write` | |
| `remove_tags_from_contact` | write, `destructiveHint` | `labels:write` | |
| `reschedule_appointment` | write, `destructiveHint` | `appointments:write` | `appointments` |
| `schedule_campaign` | write, `destructiveHint`, `openWorldHint` | `broadcasts:write`, `broadcasts:send` | `broadcasts` |
| `search_contacts_advanced` | read | `contacts:read` | |
| `search_workspace` | read | `account:read`, `contacts:read`, `labels:read`, `lists:read`, `templates:read`, `broadcasts:read`, `tickets:read`, `deals:read`, `ai_agents:read` | |
| `send_message` | write, `destructiveHint`, `openWorldHint` | `messages:send`, `conversations:read` | |
| `send_template` | write, `destructiveHint`, `openWorldHint` | `templates:send`, `templates:read` | `templates` |
| `set_appointment_recurring_availability` | write, `destructiveHint` | `appointments:write` | `appointments` |
| `set_contact_field_value` | write, `destructiveHint` | `contacts:write` | |
| `status` | read | `mcp:use` | |
| `submit_template` | write, `destructiveHint`, `openWorldHint` | `templates:write` | `templates` |
| `sync_contacts_to_list` | write | `lists:write` | |
| `update_contact` | write, `destructiveHint` | `contacts:write` | |
| `update_conversation_status` | write, `destructiveHint` | `conversations:write` | |
| `update_custom_field` | write, `destructiveHint` | `custom_fields:write` | |
| `update_deal` | write, `destructiveHint` | `deals:write` | `deals` |
| `update_list` | write, `destructiveHint` | `lists:write` | |
| `update_tag` | write, `destructiveHint` | `labels:write` | |
| `update_template` | write, `destructiveHint` | `templates:write` | `templates` |
| `update_ticket` | write, `destructiveHint` | `tickets:write` | |

## Additional output or conditional scopes

| Tool | Additional scope and effect |
| - | - |
| `get_conversation` | `messages:read` permits message history; `contacts:read` permits contact details. |
| `list_conversations` | `contacts:read` permits contact phone/email fields. |
| `send_template` | `contacts:write` is required to create a new contact from the supplied target. |
| `get_price_list` | Alternative scopes expose their own sections; a scope for one section does not authorize every section. |

The external server does not wire the internal AI-media generation or
owner-only ad-publishing adapters. Native MCP elicitation forms are not claimed;
ordinary conversation clarification and pending-action confirmation/cancellation
are described in the [main guide](https://developers.huechat.ai/mcp-server.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.