Skip to main content
Tools are configurable actions that your AI agent can trigger during a conversation. When the agent determines that a tool is relevant — based on context and user intent — it calls it automatically and presents the result inline.

Two Categories

Configurable Tools

Created by you (via the dashboard or API). You define their name, description, parameters, and behavior. The agent uses these tools exactly when you’ve described it should.

Synthetic Tools

Auto-injected by the platform based on connectors and enrichment rules. You don’t create them — they appear automatically when the right configuration is in place.

All Tool Types

Enrichment Chain

At the start of each conversation turn, the platform builds the active tool list through a sequential enrichment chain:
  1. dbTools — Load all configurable tools from the database for this tenant
  2. enrichCalendar — If Google Calendar connected + BOOK_MEETING exists, inject CHECK_AVAILABILITY
  3. enrichStripe — If Stripe connected, inject COLLECT_PAYMENT
  4. enrichMCP — If mcpToolsUrl configured, discover and inject MCP_PROXY tools (cached 5 min)
  5. enrichProducts — If product catalog exists, inject RECOMMEND_PRODUCT
  6. enrichCorpus — If corpus has summaries, inject EXPLORE_CORPUS
  7. enrichOTP — If visitor auth requires OTP, inject SEND_VERIFICATION_CODE + VERIFY_VISITOR_CODE
The final list is what the LLM sees in its system prompt.

Creating a Configurable Tool

Configuration goes in config, and each field is an object — not a list of names. A body sending parameters (or "fields": ["name", "email"]) is accepted with the rest ignored: the tool is created with the default fields instead of yours, silently. Full field reference: SUBMIT_FORM config format.
You name your own fields. Their names travel through to ToolSubmission.input, to the notification email and to your webhooks, so pick names your integrations will want to read.

What the tenant receives

When a SUBMIT_FORM runs, the notification email carries:
  • the visitor’s name, phone and email, resolved from your field names (patientName, contact_email, email… all work — declared type: "email" and type: "phone" are the most reliable signal);
  • the details the agent summarised from the conversation;
  • the conversation itself — the last 10 turns, so you can see what the visitor actually asked rather than trusting a summary;
  • the page they were on when they asked;
  • a link to the full thread in your dashboard.
To receive the same thing in your own stack instead, subscribe to submission.created — see Webhooks.

ToolSubmission Lifecycle

Every time a tool executes during a conversation, a ToolSubmission record is created and persisted.

Statuses

Channels

Submissions are tagged with the channel where the tool was triggered:

Viewing Submissions

Filter by status or tool type — the type parameter is toolType, and an unknown parameter is ignored rather than rejected (?type=… would quietly return every type):
Filters, search, pagination and status updates: Submissions API.

Booking CTA

When both BOOK_MEETING and a Google Calendar connector are active, the chat widget can display a FOMO welcome screen before the conversation starts. This screen shows:
  • Real-time calendar availability (next available slots)
  • A countdown to the next free slot
  • A direct booking CTA
This is the “iClosed-style” urgency pattern — showing scarcity based on real data, not fake timers. It increases booking conversion significantly without any additional configuration. Enable it in Dashboard > Widget > Welcome Screen or via the tenant settings API.

MCP Tools

The MCP_PROXY synthetic tool lets your agent proxy calls to any external MCP server. Configure a mcpToolsUrl on your tenant, and the platform will:
  1. Discover available tools via tools/list at startup (cached 5 minutes)
  2. Inject them into the agent’s tool list
  3. Proxy tools/call requests transparently during conversations
MCP Tools are available on the Builder plan and above.

Action Quotas

Side-effect tools (a lead sent, a meeting booked, a quote issued, a payment, a verified action) count against a monthly action quota that scales with your plan: Read-only enrichment (CHECK_AVAILABILITY, EXPLORE_CORPUS, RECOMMEND_PRODUCT) does not count.

Tool Options

Some tools are gated per plan and can be added à la carte on lower plans: