Tools in Ultravox (also known as function calling) are a powerful way to extend your agents' capabilities by connecting them to external services and systems. At their core, tools are simply functions that agents can invoke to perform specific actions or retrieve information.
Ultravox includes built-in tools and you can create custom tools.
Here are some of the things you can do with tools:
Any functionality you can encapsulate in a function can be exposed to your agents as a tool. Addtionally, unlike other LLM APIs where you have to handle tool calls yourself, Ultravox actually executes your tools during live conversations, enabling real-time interactions with external systems, databases, and APIs.
Ultravox includes built-in tools and you can create custom tools.
Here are some of the things you can do with tools:
Communicate with the Outside world
Lookup the weather, get movie times, create calendar events, or send emails.
Order Lookup
Lookup orders, backordered items, or provide shipment updates.
Knowledge Base
Consult product and support documentation for contextual support.
Create Support Case
Open tailored support cases for human follow-up.
Transfer Call
Hand-off or escalate calls to human support agents.
End Call
End calls due to user inactivity or after successful resolution.
Any functionality you can encapsulate in a function can be exposed to your agents as a tool. Addtionally, unlike other LLM APIs where you have to handle tool calls yourself, Ultravox actually executes your tools during live conversations, enabling real-time interactions with external systems, databases, and APIs.
Types of Tools
Built-in Tools
Ultravox provides several ready-to-use tools for common functionality:- queryCorpus: Retrieve information from knowledge bases.
- playDtmfSounds: Play dial tones for telephony applications.
- leaveVoicemail: Leaves voicemail message and ends the call.
- hangUp: End calls programmatically.
Custom Tools
Create your own tools to integrate with any external system or API. Custom tools can:- Send emails or notifications
- Look up customer information
- Process payments
- Update databases
- Integrate with third-party services
Tool Implementation Types
HTTP Tools: Most common type - your tool runs on your server and Ultravox calls it via HTTP. Client Tools: Run directly in the client application using our SDKs. Compare HTTP vs Client Tools →Tool Persistence
Durable Tools: Created once via API or the web app, reused across calls and agents. Best for production. Temporary Tools: Defined per-call, great for testing and rapid iteration. Learn about Durable vs Temporary Tools →Getting Started with Tools
Ready to build your first tool? Check out the Tools Quickstart →Keep Building
- Learn about Built-in Tools you can use.
- Dig into HTTP vs. Client Tools to understand the differences.
- Read about Durable vs. Temp Tools.