Tool Types
Hamsa supports three types of tools:Function Tools (API Requests)
Server-side tools that make HTTP requests to external APIs during a conversation. Use these for:- Looking up customer data
- Checking order status
- Booking appointments
- Any backend operation
MCP Tools (Model Context Protocol)
Server-side tools that connect to MCP-compatible services. Use these for integrating with external platforms that support the MCP standard. MCP tools work on both phone and web deployments. Configure them by connecting an MCP server in your dashboard.Web Tools (Client-Side)
JavaScript functions that run in the user’s browser when your agent is deployed via the Voice Agents SDK. Use these for:- Navigating the user to a page
- Opening modals or panels
- Reading page data (cart contents, form values)
- Interacting with your web application’s UI
tools parameter, not in the dashboard.
For full details on web tools, including code examples and how they differ between single prompt and flow agents, see the Web Tools documentation.
Creating Tools
Navigate to the Tools section in your dashboard to create function tools and MCP connections. For web tools, see the Voice Agents SDK documentation for how to register client-side functions.Tools in Single Prompt vs Flow Agents
- Flow Agent: You can extract specific values from the tool’s response using output mapping, and route the conversation based on those values using transitions.
Tool Collections (Categorization)
Hamsa uses a hierarchical collection system to keep your tools organized:- System Collections:
- All: View every tool across the entire project.
- Uncategorized: Tools not yet assigned to a custom folder.
- User Collections: Create custom folders with specific names and descriptions to group related tools (e.g., “CRM Integration”, “Internal Utilities”).
Versioning & Syncing
The platform includes a backend-managed versioning system to track changes and ensure conversation stability.- Persistent vs. Record IDs: Each tool has a Persistent ID that stays constant across all updates, while the Record ID changes with every version.
- Auto-Increment: Saving changes to a tool automatically creates a new version record with its own timestamp and optional changelog.
- Syncing Agents: If an agent is using an older version of a tool, the dashboard will notify you. You can “Sync” the agent with a single click, which updates all tool references to the latest version.
Tool Lifecycle Messages
You can customize what the agent speaks at different stages of a tool’s execution to create a smoother user experience.- Request Start: A message spoken as soon as the tool is triggered (e.g., “One moment while I check your order status…”).
- Request Complete: A message spoken once the response is received.
Dashboard Management
The Tools dashboard is designed for efficiency with several built-in management features:- Global Search: Instantly find tools by name or description using the debounced search bar.
- Status Filtering: Quickly toggle between Active, Inactive, or All tools.
- Local Drafting: The dashboard automatically saves your progress in
localStoragekeyed by collection. If you accidentally navigate away, you’ll be prompted to restore your unsaved draft when you return.