Skip to content

Parameters

Parameters define the inputs a tool accepts. They're validated before execution — required params must be present, types are coerced, and overrides are injected. For fn tools, params can be omitted and introspected from the function signature (see Python Tools). For exec tools, they must always be declared explicitly.

Fields

Field Required Description
name yes Argument name — must match the function parameter or template variable
type no One of: str, int, float, bool, list, dict (default: str)
required no Whether the caller must supply a value (default: true)
default no Default value used when the param is not required
description no Shown to the LLM in the tool signature — be specific
example no A concrete example value shown to the LLM alongside the description
override no Always injects this value; hidden from the LLM and callers

Description and example directly affect LLM behavior

The LLM has no other context for what a parameter means or what values are valid — only what you write here. Vague or missing descriptions cause the LLM to guess, leading to incorrect calls or repeated failures. Write description as if explaining to a colleague who has never seen your system, and use example to anchor the expected format for anything non-obvious (dates, IDs, query syntax, etc.).

params:
  - name: query
    type: str
    required: true
    description: Natural language search query
    example: "recent errors in auth service"

  - name: limit
    type: int
    required: false
    default: 10
    description: Maximum number of results to return

Overrides

An override parameter is injected at call time and never exposed to the LLM. Use it for secrets, fixed configuration, or tenant IDs that callers should not control.

params:
  - name: api_key
    type: str
    override: "${MY_API_KEY}"   # env var substituted at load time

  - name: tenant
    type: str
    override: "acme-corp"       # literal value

Override values do not appear in the tool signature. The LLM has no knowledge they exist.