Tools extend your agent’s capabilities by providing access to external systems, APIs, and custom functions. They enable agents to perform actions beyond simple conversation, such as searching databases, processing transactions, or integrating with third-party services.
Custom functions that execute specific logic.
Use Cases:
Example:
Name: Calculate Shipping Cost
Type: Function Tool
Description: Calculates shipping cost based on weight and destination
Input: { weight: number, destination: string }
Output: { cost: number, estimatedDays: number }
REST API integrations using OpenAPI specifications.
Use Cases:
Example:
Name: Product Catalog API
Type: OpenAPI Tool
Description: Access product inventory and details
Spec: OpenAPI 3.0 specification
Base URL: https://api.example.com/v1
Auth: Bearer token
Knowledge base and document search tools.
Use Cases:
Example:
Name: Customer Support Knowledge Base
Type: Data Store Tool
Description: Search support articles and documentation
Data Source: Support documentation database
Query Type: Natural language search
Built-in tools provided by the platform.
Available Extensions:
{
"type": "object",
"properties": {
"productCode": {
"type": "string",
"description": "Product identifier"
},
"quantity": {
"type": "integer",
"description": "Number of items"
}
},
"required": ["productCode", "quantity"]
}
{
"type": "object",
"properties": {
"available": {
"type": "boolean",
"description": "Stock availability"
},
"message": {
"type": "string",
"description": "Availability message"
}
}
}
The tools page displays all configured tools with:
┌─────────────────────────────────────┐
│ Tool Name │
│ Tool Type | Specification Type │
│ │
│ [Edit] [Details] [Delete] │
│ │
│ Description of what the tool does │
│ │
│ Created: Date | Updated: Date │
│ ID: unique-tool-identifier │
└─────────────────────────────────────┘
Click “Details” to view:
Reference tools in playbook instructions:
- Get product details
- Use ${TOOL:Product Search API} to find items
- Display results to user
Tools automatically receive parameters from conversation context:
- Ask user for product name
- Search using ${TOOL:Natural Language Search Tool}
- The tool receives the product name automatically
- Show search results
- Call ${TOOL:Inventory Check Tool}
- If tool returns available=true:
- Offer to add to cart
- If tool returns available=false:
- Apologize and suggest alternatives
Execute multiple tools in sequence:
- ${TOOL:Get User Location}
- ${TOOL:Find Nearby Stores} using location
- ${TOOL:Check Store Inventory} for each store
- Present consolidated results
- If user wants shipping info:
- ${TOOL:Calculate Shipping}
- If user wants store pickup:
- ${TOOL:Find Nearby Stores}
Built-in error handling for tool failures:
- Try ${TOOL:Payment Processing}
- If tool fails:
- Inform user of issue
- Offer alternative payment methods
- Log error for support
Track tool performance metrics:
Input: { query: string, filters?: object }
Output: { results: array, count: number }
Input: { action: string, data: object }
Output: { success: boolean, id?: string, error?: string }
Input: { data: object, rules: object }
Output: { valid: boolean, errors?: array }
Input: { endpoint: string, method: string, body?: object }
Output: { status: number, data: object }