Skip to main content
Native tools are predefined tools integrated into the platform that allow the AI model to perform specific actions during a conversation. These tools extend the capabilities of the AI agent beyond text generation, allowing it to interact with the system, query information, manipulate data, and execute concrete actions. Native tools are found and configured in the AI Agent node. To access them:
  1. Select the AI Agent node in your flow
  2. Open the TOOLS section in the node configuration
  3. Click the ”+ Add tools” button
  4. In the “Select a Tool” field, you will see the list of all available tools, including native ones (marked with the text “(Native)”)
Native tools configuration in the AI Agent node
Below are descriptions of all native tools available in the AI Agent node: Searches products in the available catalog to recommend to the user. Uses a search engine to find matches based on the product name or related terms. Parameters: Prompt Example:
“If the user asks about the availability of a specific item or model, you MUST use the search_products tool to query the catalog before responding.”
Arguments Example:
Response: Returns a list of products found or a message indicating that no results were found. In case of error, returns a descriptive system message. Notes:
  • Requires the bot to have a product catalog configured and accessible.

Transfer to agent

Transfers the user’s current conversation to a human agent or an attention queue. Allows specifying routing strategies and priorities. Parameters: Prompt Example:
“When the user expresses frustration or explicitly requests to speak with a real person, execute the transfer_to_agent function immediately.”
Arguments Example: Case: Automatic direct transfer (most common)
Case: Direct transfer to a team
Case: Create ticket in general queue
Response: Returns a JSON object with the result of the operation indicating whether the transfer was initiated successfully. Notes:
  • Can end the AI flow immediately.
  • When using assignment_type: "queue" with assignment_by: "general", a ticket is created in the general attention queue.
  • Important: Team or operator IDs must not be made up; only those explicitly configured should be used.

Send interactive messages

Sends a structured or interactive message to the user. The exact format depends on the channel (WhatsApp, Web, etc.), but generally includes buttons or option lists. Parameters: Structure of options (Array of objects):
  • title (string, required): Text of the option/button. Maximum 20 characters. Duplicate titles are not allowed.
  • description (string, optional): Additional description of the option. Maximum 72 characters.
Prompt Example:
“If the user asks what services we offer, you MUST use send_interactive_message to display a menu with the available options.”
Arguments Example (Buttons - 3 or fewer options):
Arguments Example (WhatsApp List - 4+ options):
In WhatsApp, when you send 4 or more options, the message is displayed as a dropdown list. The caption value is used as the button text that opens the list (in the example above, “View options”).
Response: Returns "Message sent successfully." if the sending was successful or an error message otherwise. Notes:
  • Sends a real message to the user.
  • The message type adapts automatically according to the channel and number of options.

Send Call to Action (CTA)

Sends a call-to-action button that opens an external URL. It can be configured as a WebView for forms or payments that require waiting for a user response. Parameters: Prompt Example:
“When the user confirms they want to make the payment, use send_call_to_action with is_webview=true to send the payment link and wait for confirmation.”
Arguments Example (Simple CTA):
Arguments Example (WebView waiting for response):
Response:
  • Normal CTA: "Call-to-action message sent successfully."
  • WebView: "WebView message sent. Waiting for user action."
Notes:
  • Available only for WhatsApp providers that support this type of message.
  • When is_webview=true, the flow pauses until the WebView returns a callback or the time expires.
  • The input value is converted to URL query string parameters.
  • The callback response is saved in the variable specified in response_variable.

Current date and time

Gets the current date and time. Allows specifying a time zone to get the correct local time. Parameters: Prompt Example:
“Before processing any time-dependent request (such as ‘good morning’ or appointments for ‘today’), call get_current_date_time to know the exact time.”
Arguments Example:
Response: Returns a string with the formatted date and time, for example: "Monday, December 08, 2025 10:30 AM". Notes:
  • Has no visible side effects for the user.
  • It is purely informational for the model.

Day of the week

Calculates and returns the day of the week corresponding to a specific date provided. Parameters: Prompt Example:
“If the user wants to schedule for a specific date, first verify what day of the week it is using get_weekday_of_a_date to ensure it is a business day.”
Arguments Example:
Response: Returns the name of the day of the week, for example: "Wednesday". Notes:
  • Useful for validating appointments or schedules.

Memory management

The following tools are enabled from the Memory management section of the AI Agent node’s Context tab. They give the agent working memory, access to the inbox CRM, flow context variables, and platform information. See the Memory management section of the AI Agent node for how to enable them and configure their permissions.

Internal memory

Lets the agent save, recall, and delete information from the conversation to reuse it later. It is per-user working memory with limited retention: it recalls the same user’s data across conversations, but it is not a permanent store. Operations: Notes:
  • Includes an optional Memory space field to isolate or group saved entries, preventing different contexts from mixing.
  • Each operation supports configuring its parameters in AI, variable, or static mode, along with a post-execution behavior (Continue, End, or Pause).

Inbox CRM

Reads, sets, and updates the contact’s CRM data (name, phone, tags, notes, and more) directly from the inbox. Operations: Notes:
  • Permissions are managed per group (contact data / tags) with separate read and write access. You can restrict which tags the agent may access.
  • Requires at least one connected channel for contacts to exist to operate on.

$context

Reads and writes flow context variables to share data between nodes. Operations: Notes:
  • It appears in the tools list as $context to distinguish it from the Context tab.
  • Variables written become available to later nodes of the flow, for example {{$context.my_variable}}.

Platform information

Read-only context blocks that inject platform data into the agent’s prompt. They do not consume a tool call: the information is added automatically as context when the source is active. Notes:
  • All three sources are read-only; the agent cannot modify them.
  • They are injected as context blocks, so they do not count as a tool invocation.

Databases

Native connection to Databases (Datum v2) from the Tools tab of the AI Agent node. It lets the agent search, create, update, and delete records in your collections without chaining auxiliary nodes. Operations: search, create, update, and delete records on the collections you enable. Notes:
  • The agent can only operate on collections from the same company that you explicitly enable in the Configure popover.
  • Write operations persist immediately.
  • Post-execution behavior (Continue, End, or Pause) is configured per operation.