Provider Support
| Provider | Tools Available |
|---|---|
| OpenAI Responses | Web Search, File Search, Image Generation, Code Interpreter |
| Google Search, Code Execution | |
| Anthropic | Web Search, Web Fetch, Code Interpreter |
Enabling Tools
Each provider uses its own options class and tool enum:OpenAI Responses
Anthropic
Streaming Metadata
Each tool streams structured metadata under a predictable key:| Tool | Metadata key |
|---|---|
| Web search | metadata['web_search'] |
| File search | metadata['file_search'] |
| Image generation | metadata['image_generation'] |
| Code interpreter | metadata['code_interpreter'] |
ChatResult during streaming, which you can use
to show live progress, log it, or feed it into analytics.
Message Content
Final deliverables (images, generated files, synthesized summaries) arrive as normal message parts so you can handle them with the usualChatMessage APIs.
Configuration Blocks
Each tool exposes an optional configuration object. Configuration objects are provider-specific:OpenAI Responses Tools
- Web Search - Search the web and weave results into responses
- File Search - Search provider-hosted files and vector stores
- Image Generation - Generate images with streaming previews
- Code Interpreter - Execute Python code in a sandbox
Google Tools
- Google Search - Search with Google Grounding
- Code Execution - Execute Python in Google’s sandbox
Anthropic Tools
- Web Search - Search the web via Anthropic
- Web Fetch - Fetch and process web pages
- Code Interpreter - Execute Python via Anthropic
Examples
Related Topics
- Media Generation - Generate images, PDFs, and files across providers
- Thinking Metadata - Combine reasoning output with tool progress
- Tool Calling - Define your own local tools

