Harnix
Build

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.

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_user with 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 (label up to 60 characters with an optional description up to 200 characters). A question can be single-choice or multi-choice (multi_select).
  • Console toggle: Newly created agents have ask_user enabled 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 label Enable: {name}). You can toggle ask_user on 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 in waiting_input without consuming a worker. The streaming feed emits a question frame, and conversations report pending_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.

On this page