Tools
Every tool the Clerx connector gives your AI assistant. All of them are read-only.
The connector has seven tools, and all of them are read-only. Your assistant picks the right tool from your question, so you do not need to name one.
Dates use the format YYYY-MM-DD and are read in your firm's time zone. List tools return 20 rows by default and up to 100 at a time. They tell the assistant how to ask for the next page.
| Tool | Name | Permission |
|---|---|---|
| List calls | clerx_list_calls | clerx.calls:read |
| Get a call | clerx_get_call | clerx.calls:read |
| List messages | clerx_list_messages | clerx.calls:read |
| List appointments | clerx_list_appointments | clerx.calls:read |
| List chats | clerx_list_chats | clerx.chats:read |
| Get a chat | clerx_get_chat | clerx.chats:read |
| Get plan usage | clerx_get_usage | clerx.billing:read |
List calls
clerx_list_calls. Needs the clerx.calls:read permission.
Lists the calls your firm's AI receptionist handled, newest first. Each row has the caller, number, direction, length, the reason for the call, a summary, and whether the call created a lead.
Use it to see what calls came in today, find calls from a phone number, or find a call to open with clerx_get_call.
| Parameter | Type | Default | Description |
|---|---|---|---|
direction | "inbound" or "outbound" | None | Only inbound or outbound calls. |
from_number | text | None | Caller phone number or its start, E.164. Example: +16505551234 or +1650. |
caller_type | "new client", "existing client" or "other" | None | How the receptionist classified the caller. |
has_lead | true or false | None | true: only calls that created a lead. false: only calls that did not. |
from_date | date (YYYY-MM-DD) | None | First day to include, in the firm's time zone. Example: 2026-10-01. |
to_date | date (YYYY-MM-DD) | None | Last day to include (inclusive), in the firm's time zone. Example: 2026-10-31. |
limit | integer | 20 | Rows to return, 1 to 100. |
offset | integer | 0 | Rows to skip. Pass the previous page's next_offset. |
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |
Get a call
clerx_get_call. Needs the clerx.calls:read permission.
Returns one call in full: the summary, the reason, the details the receptionist collected, what happened on the call (lead created, message taken, meeting booked), a link to the recording, a link to the call in Clerx, and the transcript. A long transcript is cut at about 12,000 characters. Ask for the rest with transcript_offset.
Use it after clerx_list_calls, or with a message's call id from clerx_list_messages, to get the details of one call.
| Parameter | Type | Default | Description |
|---|---|---|---|
call_id | UUID | Required | The call's id from clerx_list_calls. Example: 6f1c2a9e-1b7d-4c55-9a3e-0d2b8f4e7a10. |
transcript_offset | integer | 0 | Transcript line to start from. Pass the previous result's next_transcript_offset. |
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |
List messages
clerx_list_messages. Needs the clerx.calls:read permission.
Lists the messages callers and chat visitors left for your staff, newest first: who called, their number, the message, and who it was for. Archived messages are left out unless you ask for them.
Use it to see who left a message, or which messages are for a particular person this week. A message's call id or chat id opens the conversation with clerx_get_call or clerx_get_chat.
| Parameter | Type | Default | Description |
|---|---|---|---|
include_archived | true or false | false | Also return messages staff already archived. |
from_date | date (YYYY-MM-DD) | None | First day to include, in the firm's time zone. Example: 2026-10-01. |
to_date | date (YYYY-MM-DD) | None | Last day to include (inclusive), in the firm's time zone. Example: 2026-10-31. |
limit | integer | 20 | Rows to return, 1 to 100. |
offset | integer | 0 | Rows to skip. Pass the previous page's next_offset. |
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |
List appointments
clerx_list_appointments. Needs the clerx.calls:read permission.
Lists meetings booked through Clerx, upcoming or past. That covers meetings the AI receptionist booked on a call or chat and meetings booked on your firm's booking page. Cancelled and expired bookings are left out.
Use it to see what consultations are booked this week, or who the receptionist booked yesterday. The booked_via field says where each booking came from.
| Parameter | Type | Default | Description |
|---|---|---|---|
segment | "upcoming" or "past" | "upcoming" | 'upcoming' (soonest first, default) or 'past' (most recent first). |
from_date | date (YYYY-MM-DD) | None | First day to include, in the firm's time zone. Example: 2026-10-01. |
to_date | date (YYYY-MM-DD) | None | Last day to include (inclusive), in the firm's time zone. Example: 2026-10-31. |
limit | integer | 20 | Rows to return, 1 to 100. |
offset | integer | 0 | Rows to skip. Pass the previous page's next_offset. |
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |
List chats
clerx_list_chats. Needs the clerx.chats:read permission.
Lists your firm's chat conversations (website chat, SMS, WhatsApp, Messenger and Instagram), newest first, with the contact, the reason for the chat and the last message. Phone calls are not included. Use List calls for those.
Use it to see new website chats today, or to find a chat to open with clerx_get_chat.
| Parameter | Type | Default | Description |
|---|---|---|---|
channel | "web", "sms", "whatsapp", "messenger" or "instagram" | None | Only chats from this channel. 'web' is the website chat widget. |
status | "active", "ended" or "abandoned" | None | Only chats in this state. |
from_date | date (YYYY-MM-DD) | None | First day to include, in the firm's time zone. Example: 2026-10-01. |
to_date | date (YYYY-MM-DD) | None | Last day to include (inclusive), in the firm's time zone. Example: 2026-10-31. |
limit | integer | 20 | Rows to return, 1 to 100. |
offset | integer | 0 | Rows to skip. Pass the previous page's next_offset. |
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |
Get a chat
clerx_get_chat. Needs the clerx.chats:read permission.
Returns one chat in full: the contact, a summary, what happened (lead created, message taken, meeting booked, texts sent), a link to the chat in Clerx, and the transcript. A long transcript is cut at about 12,000 characters. Ask for the rest with message_offset.
Use it after clerx_list_chats, or with a message's chat id from clerx_list_messages, to get the details of one chat.
| Parameter | Type | Default | Description |
|---|---|---|---|
chat_id | UUID | Required | The chat's id from clerx_list_chats. |
message_offset | integer | 0 | Message to start from. Pass the previous result's next_message_offset. |
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |
Get plan usage
clerx_get_usage. Needs the clerx.billing:read permission.
Returns your firm's Clerx plan usage for the current billing period: calls used, calls included, overage, calls remaining, and the subscription status. Figures come from Stripe and can be a few minutes behind. A firm billed outside Stripe shows the status "no subscription" and no usage rows.
Use it to see how many calls are left on your plan, or whether your firm is over its plan this month.
| Parameter | Type | Default | Description |
|---|---|---|---|
response_format | "markdown" or "json" | "markdown" | 'markdown' (default) for reading, 'json' for further processing. |