Tools

A tool lets an agent do something mid-conversation: look up an order, check a calendar, create a ticket. Without tools an agent can only talk about what it already knows.

Creating a tool

Tools are created once under Tools and reused by any agent. A tool has:

  • a name and description - the model reads these to decide when to call it, so write them for the model, not for yourself
  • a kind - what it actually does
  • parameters - a JSON schema describing its arguments

Kinds

KindWhat it does
HTTPCalls your API. Method, URL, headers and body, with variables templated in.
StaticReturns a fixed value. Useful for testing and for constants.
MCPCalls a tool on an MCP server.

There are also credential-backed integrations (Slack, Discord, Telegram, webhooks) that run as tools without you wiring the HTTP yourself.

Parameters

The parameters schema is the contract between the model and your tool. It is what the model fills in:

{
  "type": "object",
  "properties": {
    "order_id": { "type": "string", "description": "The order number the caller gave" }
  },
  "required": ["order_id"]
}

Describe each field. A field the model cannot understand is a field it will guess.

Giving a tool to an agent

Attach saved tools to the agent. During a conversation the model decides when to call them, calls them with arguments it extracted from what the caller said, and answers from the result.

The same tools work on a call and in chat - the agent behaves the same either way.

Tell the agent in the prompt when to use a tool: "When the caller asks about an order, use the Lookup Order tool and answer from what it returns." A tool the prompt never mentions gets called inconsistently.

Tools as a workflow step

In a workflow you can also place a tool node, which runs the tool at a fixed point in the flow rather than leaving the decision to the model. Use a node when the call must always happen; use an attached tool when the model should decide.

Safety

Outbound requests are validated before they are made: a tool cannot be pointed at internal or private network addresses. If you need a specific host allowed, that is an operator setting.

Every tool call and its result is recorded on the session, so you can see exactly what the agent called and what came back.

Tools · Glytos Docs