response is raw text, not a parsed object. If you asked for JSON it is usually wrapped in a ```json fence — strip the fence, then json.loads. Do not index into response as if it were already an object.
When quoting extracted values in the prompt, convert {value, word_id_groups: [N]} to value[cite:N]. Never put word_id_groups in the prompt.
Authentication and enablement
No integration. Uses the agent’s LLM. Default-on.Inputs
prompt(required): the per-call question / instruction.system_prompt(optional).cache_context(optional): stable content identical across calls (documents, reference data). Cached separately fromprompt.cache_input(optional bool).
Output
{tool_name, response, model, tokens_used, completed_at, metadata}.
Limits and side effects
- Billed as an LLM call. Prefer passing prior tool output through
generate_filecontentinstead of re-asking the model to format a CSV. - No external writes.
Expected errors
- Empty
prompt. - Provider/model failure (retried internally where configured).