Overview
Tools extend agent capabilities by providing access to external systems, APIs, and custom functionality. Agents can leverage multiple tool types to handle complex tasks requiring data processing, web interactions, or custom business logic. To declare a tool during an agent run, use thesettings.tools array to import a Tool.
Standard Tools
Agents come pre-packaged with standard tools usable during generation.| Tool | Name | Description | 
|---|---|---|
| Current Date | current_date | Provides the Current Date to the Model | 
| Google Search | google_search | Lets an Agent perform a Google Search | 
| Web Scraper | web_scraper | Lets an Agent Scrape a Web Page | 
Function Tools
Custom business logic with OpenAPI-style schemasorq_current_date tool.
orq_current_date tool returns 2025-10-03, so the agent now knows the user is asking about past events (August 26-27, 2025 has already occurred).
get_local_events function tool (one for each date requested).
get_local_events is a function tool (not a built-in tool), the agent pauses and waits for you to implement the function and provide results via the continuation API.
Note: You must implement the function and submit results via the continuation API. The agent will then resume and synthesize a final answer.
Code Tools (Python)
Embed code tools with executable python code, for this example we’ll be embedding a password generator.Tip: Converting Python Code to Payload StringTo convert your Python code into a JSON-safe string for the payload, use this shell command:Bash
code_tool section as follows:
The tool is then usable as any other tool. Callable by its key (herepassword_generator. The tool has access to the declaredparametersas input for execution.
HTTP Tools
External API integrations supporting:- Blueprint: URL templates with parameter substitution using {{parameter}}syntax
- Method: HTTP methods (GET, POST, PUT, DELETE, etc.)
- Headers: Custom headers including authentication
- Arguments: Parameter definitions with types and descriptions
- send_to_model: Controls whether parameter values are visible to the LLM
- default_value: Default values for parameters not provided by the LLM