Overview
Tools enable agents to perform actions beyond text generation. They can execute code, search the web, access APIs, and integrate with external systems to accomplish complex tasks.Key Features
- Multiple Tool Types: Custom, MCP, Model Provider, and Ready-to-Use tools
- Flexible Configuration: Control execution behavior, caching, and retries
- Type Safety: Automatic schema generation from Python type hints
- Parallel Execution: Run multiple tools simultaneously for better performance
Supported Tool Types
The tools list accepts any combination of:| Type | Example | Registered As |
|---|---|---|
| Function tool | @tool decorated function | Function name |
| ToolKit instance | DataProcessor() | All @tool methods |
| Class instance | Calculator() | All public methods |
| Agent instance | analyzer_agent | ask_{agent_name} |
| MCP Handler | MCPHandler(...) | All MCP-provided tools |
| KnowledgeBase | KnowledgeBase(...) | search_{kb_name} |
| Builtin tools | WebSearchTool() | Provider-specific |
Example
Create your own tools using Python functions or classes. Perfect for business logic, API integrations, and domain-specific functionality.Navigation
- Custom Tools - Create your own tools using Python functions and classes
- MCP Tools - Integrate external tools using Model Context Protocol
- Model Provider Tools - Use built-in tools from model providers
- Ready-to-Use Tools - Pre-built tools for common tasks
- Tool Management - Add, remove, and manage tools dynamically
- KnowledgeBase as Tool - Use KnowledgeBase for RAG-based tool calls

