Tools overview¶
Status: Current | Last reviewed: 2026-09-21
Tools extend what your agents and workflows can do. A tool lets an LLM call a remote function, script, API, or another agent during a conversation, then use the result in its reply. Define a tool once, then attach it to any number of agents and workflows.
Open the Tools page¶
Open Tools & Templates from the sidebar (lower section) and select the Tools tab. You see a searchable table of every tool configured in your tenant, with its type, status, and health. The other tabs on this page are Multimodal (A2UI catalogs and external endpoints), External Consult (consult profiles), Agent Templates, and Prompt Templates.
The old Settings → Tools, Settings → Multimodal, and Settings → Warm Transfer links still work. They redirect to the matching tab here. ("Warm Transfer" is now External Consult.)
The page offers:
- Search: filter by name, type, or description.
- Drift filter: show tools whose upstream definition changed or last errored. Reach it from the tool-health widget on the dashboard or the
?filter=driftlink. - Add tool: create a new tool. Only visible if you have the Manage Tools permission.
- Definition / edit action: configured tools open their tool definition. Workflow tools open the workflow itself with the Start node's Inputs section highlighted, because their callable inputs are managed from the workflow editor.
Tool types¶
You can create these tool types from the Add tool dialog:
| Type | What it does |
|---|---|
| MCP | Connects to a Model Context Protocol server and invokes the tools it exposes. See MCP tools. |
| Knowledge | Builds a searchable source from websites, uploaded files, cloud buckets, or Confluence, then exposes one search tool. Appears only when a tenant admin has enabled and configured Knowledge (see Knowledge settings). See Knowledge tools. |
| Remote Agent (A2A) | Delegates a task to another agent over the Agent-to-Agent protocol. See Remote Agent (A2A) tools. |
| Python | Runs your Python code in a sandbox. See Python tools. |
| API | Calls a REST API from an OpenAPI/Swagger spec or a single hand-authored endpoint. See API tools. |
Note: Older tenants may show tools of other types (A2UI, HTTP, Salesforce, Workflow, RAG, Host Action). These still run and can be attached, but you no longer create them from the Tools screen. Workflows, integrations, and surfaces manage them, or TrueServe keeps them for backward compatibility.
Workflow tools are managed from Workflows, not from a modal in the Tools table. Use the action icon or a workflow tool's Definition link from an agent to jump directly to the workflow input parameters.
Built-in tools¶
When you edit an agent or workflow LLM block, the tool picker also lists built-in tools. The platform provides these capabilities without making you create a tool. The model you select determines which built-ins appear.
Currently the built-ins are platform/session controls such as End Session (the agent can hang up and hand control back to the caller's system — this one is always on and shows an "always on" badge instead of a remove button, because an agent with no way to end a call leaves the caller holding a dead line; the only exception is a provider that ends its own session, like Google GECX), Inject Message to Conversation (send an instruction to another live voice or chat conversation), IVR Navigation (outbound agents can traverse phone menus), and Transfer Agent (on voice agents — marks this agent as the outbound leg that dials out and briefs the human during an external consult). Message Injection, External Consult, Customer Authentication, and Payments are toggles in the node's Capabilities section, so they do not appear as selected rows under Tools. Authentication, Payments, External Consult, and Transfer Agent still add their callable operations to the prompt editor, such as {{TOOL:authenticate_customer}}, {{TOOL:collect_payment}}, and {{TOOL:start_consult}} — the capability's own name (for example warm_transfer) is never one of them.
Some built-ins have node-level settings. Select the built-in in the LLM or speech-to-speech node's Tools picker, then use the settings button on the selected row. Inject Message to Conversation has only a destination conversation ID binding and exposes no unrelated agent-host operations. IVR Navigation and Transfer Agent can only be enabled on one node per agent; selecting one on a different node moves ownership there. The receiving-side Message Injection capability is also single-owner.
External Consult lives in the voice node's Capabilities section (next to Multimodal UI), not the Tools picker. Turn it on and set the provider, the Target DNIS (a specific number or "chosen by the agent at call time"), an Outbound Agent (a separate voice agent with the Transfer Agent capability, which dials out and briefs the human; its own configuration provides that leg's model), whether to place the caller on hold, and a timeout (default 180s). The number that's actually dialed depends on the platform: on Genesys it's the Routing Number on the integration's External Consults section, while on Amazon Connect there is no routing number — TrueServe asks Connect to dial the target directly through the integration's outbound contact flow and caller identity, and the answered call returns over your Chime SDK Voice Connector. On a real call the platform is taken from the call itself, so the Provider setting matters in one place: it's what a Preview test call uses to decide who dials, since a browser call has no incoming call to read it from. Set it to match the platform you run on and the consult is rehearsable from the panel — see Testing with the emulator. Use Create External Consult agent to build the outbound agent from the External Consult Agent template if you don't have one yet.
To make an agent usable as an outbound consult agent, add the Transfer Agent built-in to its voice node. The platform automatically gives it the tools to brief the human and signal the original agent that it's ready to merge (and a default prompt explaining how to use them; advanced users can override that prompt). Its settings can also select a post-merge translation pipeline, choose always-on or criteria-driven activation, and allow runtime language detection with pipeline-default fallback. Translation does not run while this AI agent is briefing the specialist; it starts only after the two humans merge and both AI agents leave. See Translation after an external consult. Such agents then appear in other agents' External Consult Outbound Agent picker. Pair it with IVR Navigation if it must get through a phone menu first. Tenant-wide consult profiles and the consult policy live under Tools & Templates → External Consult.
The handoff policy's allowed-destination patterns use RE2 syntax. You can save up to 32 patterns of 256 characters each. Lookarounds and backreferences are not supported; invalid patterns are rejected on save. These limits keep destination checks predictable even when the destination comes from an agent-generated tool call.
No built-in web search, code interpreter, or file search. Provider "hosted" tools (e.g. OpenAI's
web_search, Google'sgoogle_search) are not available as built-ins. Enabling such an option would not give the model the capability. For example, the OpenAI Realtime voice API only accepts function and MCP tools, so hosted web search cannot run there. If you need web search, document lookup, or code execution, add a configured tool, such as Knowledge, MCP, or API, and attach it instead.
Agent-local inline tools¶
Some agent stages let you create inline Python or API tools directly from the tool picker. These tools are saved only on that stage, so they do not appear in Tools & Templates and cannot be reused elsewhere. If a selected inline tool shows as unresolved, the stage has a reference such as inline:lookup_customer but no matching inline tool definition saved with that same id. Edit, recreate, or remove the unresolved row before saving.
Expose to agents¶
Each tool has an Expose to agents switch. When on, the platform's tool registry offers it to LLM agents, so an agent can call it during a conversation. When off, the tool is workflow-only. It runs only where you place it in a workflow, and agents never see it. Turn it off for tools agents should not invoke on their own.
Authentication¶
MCP, Remote Agent, and API tools share one authentication model. Pick an auth type (None, API Key, Bearer Token, Basic, Integration, or OAuth 2.0) and supply the credential one of two ways:
- From an integration: the credential lives on an integration you've already configured. Use this for anything reusable or for OAuth.
- Inline: a one-off Bearer / API Key / Basic credential stored encrypted against this tool only. Use this when a full integration would be overkill.
Secrets are always stored encrypted and are never shown back to you after saving. See Secrets and tokens.
Parameters and schemas¶
A tool declares parameters, the inputs the LLM must provide to call it. For Python tools and manual-endpoint API tools, you author these directly. For OpenAPI-spec, MCP, and A2A tools, TrueServe discovers them from the spec or server. The parameters drive the JSON schema the LLM sees and the form the workflow editor renders, so keep names and descriptions clear. The LLM reads them.
See also¶
- MCP tools
- Knowledge tools
- Remote Agent (A2A) tools
- Python tools
- API tools
- OpenAPI tools
- Adding an integration
Test tool behavior¶
Use a tool’s output schema and Testing section to define reusable mock results for background agent tests. See Testing tools.