Tools
knowledge_search is automatic once a KB is attached; ask_user built-in tool; connectors add the tools of remote MCP servers.
An agent has three sources of tools: automatic tools (knowledge_search
once a knowledge base is attached), platform built-in tools (ask_user),
and the tools of remote connectors (MCP servers) assigned to the agent.
knowledge_search
There's no on/off flag for this tool. Attach at least one knowledge base to
an agent (see Agents) and it appears; detach every
knowledge base and it disappears. What this tool actually returns is
covered on the Knowledge bases page.
knowledge_search is read-only and never asks the user for confirmation.
Built-in tools (ask_user)
Harnix provides a catalog of platform built-in tools. The first built-in tool
is ask_user:
- Asking the user when needed: When an agent needs a decision from the
user to proceed (and no sensible default exists), it calls
ask_userwith 1–4 multiple-choice questions. Each question has a concise title (header, up to 12 characters), question text (up to 500 characters), and 2–4 options (labelup to 60 characters with an optionaldescriptionup to 200 characters). A question can be single-choice or multi-choice (multi_select). - Console toggle: Newly created agents have
ask_userenabled by default. In the console, open an agent and navigate to the Tools tab: the Built-in tools section (located directly above connectors) lists each platform tool with its name, tool key (ask_user), description, and an independent toggle (accessible labelEnable: {name}). You can toggleask_useron or off for each agent at any time without affecting other agents. - Paused without holding a worker: When an agent calls
ask_user, the run pauses inwaiting_inputwithout consuming a worker. The streaming feed emits aquestionframe, and conversations reportpending_question. - Flexible responses: Users can reply by selecting options or typing
their own words. While waiting for an answer, the message input is not
locked — a new message sent to the conversation acts as a free-text answer
to the question. Alternatively, your backend can submit structured answers
via
POST /v2/runs/{run_id}/answer. - Timeout window: The default waiting window is 10 minutes
(
ASK_USER_TIMEOUT_SECONDS, 600 seconds). If the question is not answered in time, the run continues normally: the model is notified that the question expired and proceeds with the available context. See Idempotency & cancel and Limits.
Connectors (MCP servers)
MCP (Model Context Protocol) is how an
agent calls tools on an external server — looking up an order in your
system, filing a ticket, calling an internal API. You add a remote MCP server
as a connector, sign it in, and choose on each agent's Tools tab
which of its tools that agent may use. Every tool appears in the agent's
tool list prefixed mcp_<server name>_, so it never collides with another
server's tool of the same name. A tool that may change data (one the server
doesn't mark readOnlyHint: true) asks the user for confirmation before it
runs. See Connectors.
Limits at execution time
- A single tool call's result is capped at 64 KB — a tool that returns more gets truncated and flagged as truncated, because the result goes straight into the next prompt.
- An unresponsive server never holds an agent waiting indefinitely: connecting has its own deadline, and a connection failure is returned to the model as a failed tool result (which it can work around or report to the user), not a crash of the whole reply.