Knowledge bases help your AI Agent answer questions, but what about situations where the customer needs the agent to do something? Check an order status. Calculate shipping costs. Look up account details. That's where tools come in β they let your AI Agent interact with external systems and take real actions during a conversation.

What Are AI Agent Tools?
Tools are integrations that give your AI Agent the ability to call external APIs, retrieve live data, and perform actions beyond just chatting. Instead of saying "Let me transfer you to someone who can check that," your agent can check it right then and there.
Here's a practical example. A customer asks: "What's the status of my order #45219?"
- Without tools: The agent says, "I'd be happy to help with that. Let me connect you with our support team to check your order status."
- With tools: The agent calls your order management API, retrieves the status, and responds: "Order #45219 is currently out for delivery and is expected to arrive by 3 PM today. Here's your tracking link: [link]."
The difference is clear β tools turn your agent from a helpful conversationalist into a capable assistant that resolves issues on the spot.
Available Tool Types
Chatmo currently supports API-based tools that your AI Agent can call during conversations. These tools connect to your backend systems, third-party services, or any system that exposes an API.
Common tool categories include:
| Tool Category | Example Use Cases |
|---|---|
| Order Management | Check order status, retrieve tracking info, view order history |
| Shipping & Logistics | Calculate shipping costs, estimate delivery dates, find nearest pickup point |
| Account & CRM | Look up customer profiles, verify account details, check membership tier |
| Product Catalog | Search products, check inventory availability, compare pricing |
| Appointment Scheduling | Check available time slots, book appointments, send confirmations |
| Payment & Billing | View invoice details, check payment status, provide payment links |
Tools operate on a read-and-respond basis in most configurations. The AI Agent sends a request to an API and uses the returned data to formulate a response. If you want tools to perform write operations (like creating an order or updating a record), implement appropriate safeguards on your API side β such as confirmation steps or validation checks.
How Tools Extend AI Capabilities
The real power of tools becomes clear when you combine them with your agent's conversational abilities. Here's the flow:
- Customer asks a question that requires live data β "How much would it cost to ship 5 kg to Jakarta?"
- The AI recognizes a tool is needed β Based on your tool configuration, it identifies this as a shipping cost inquiry.
- The agent calls the tool β It sends a request to your shipping API with the relevant parameters (weight: 5 kg, destination: Jakarta).
- The API responds β Your system returns the shipping cost data.
- The agent formats the answer β "Shipping 5 kg to Jakarta would cost Rp 45,000 for standard delivery (3-5 days) or Rp 78,000 for express (1-2 days). Would you like to proceed with either option?"
The customer never sees the API call. From their perspective, the agent just knew the answer.
Creating a Custom Tool
Setting up a tool requires some technical details about the API you're connecting to. Here's the step-by-step process:
1. Open Tool Configuration
Navigate to your AI Agent's settings and select the Tools tab. Click Add New Tool to begin.
2. Define the Tool Basics
| Field | Description | Example |
|---|---|---|
| Tool Name | A descriptive name the AI uses to identify when to use this tool | "Check Order Status" |
| Description | Explains what the tool does β the AI reads this to decide when to invoke it | "Retrieves the current status and tracking information for a customer order using the order ID" |
| Method | The HTTP method for the API call | GET, POST, PUT |
| Endpoint URL | The API endpoint to call | https://api.yourstore.com/orders/{order_id}/status |
The tool description is critical. Write it clearly and specifically, because the AI Agent uses this description to determine when to call the tool. A vague description leads to the tool being called at the wrong times β or not at all. Instead of "Gets order info," write "Retrieves the current delivery status, tracking number, and estimated delivery date for a specific order using the order ID number."
3. Configure Parameters
Parameters are the data points that the tool needs to make the API call. The AI Agent extracts these from the conversation and passes them along.
For each parameter, specify:
- Parameter name β The API field name (e.g.,
order_id) - Type β String, number, boolean, etc.
- Required or optional β Whether the tool can function without this parameter
- Description β How the AI should understand this parameter (e.g., "The customer's order ID, usually a number like 45219 or a code like ORD-45219")
Example parameters for an order status tool:
| Parameter | Type | Required | Description |
|---|---|---|---|
order_id | String | Yes | The order ID or order number provided by the customer |
include_tracking | Boolean | No | Whether to include tracking details in the response (default: true) |
4. Set Up Authentication
If your API requires authentication (most do), configure the appropriate method:
- API Key β Add your API key as a header or query parameter.
- Bearer Token β Provide a bearer token for OAuth-based authentication.
- Custom Headers β Add any custom headers your API requires.
API keys and tokens are sensitive credentials. Chatmo stores them securely and encrypts them, but you should still follow best practices: use API keys with limited permissions (read-only where possible), rotate them regularly, and never share them outside of secure configuration interfaces.
5. Define Response Handling
Tell the tool how to interpret the API response so the AI can extract the right information:
- Success response mapping β Which fields from the API response contain the data you want the AI to use.
- Error handling β What the AI should say if the API call fails or returns an error (e.g., "I wasn't able to check that right now. Let me connect you with someone who can help.").
6. Save and Enable
Click Save to store the tool configuration, then toggle the tool to Enabled. Make sure the Tool access feature is also enabled in your agent's general settings.
Testing Tool Integrations
Before relying on a tool in live conversations, test it thoroughly:
-
Direct API test β Use the Test button in the tool configuration to send a sample request and verify the response format. Enter test parameter values and confirm the API returns the expected data.
-
Conversation simulation β Head to the testing playground and have a test conversation where you ask a question that should trigger the tool. Verify that:
- The AI correctly identifies that the tool should be used.
- The AI extracts the right parameters from your message.
- The API call succeeds and returns data.
- The AI formats the response naturally.
-
Edge case testing β Test what happens when:
- The customer provides an invalid order ID.
- The API is slow or unreachable.
- Multiple tools could potentially be triggered by the same message.
- The customer provides parameters across multiple messages (e.g., gives the order ID in a follow-up message).
Keep a list of test scenarios handy. Every time you add a new tool or modify an existing one, run through the full list to make sure nothing breaks. It takes five minutes and saves you from awkward customer interactions.
Best Practices for Tool Configuration
Keep tool descriptions precise. The AI decides which tool to call based on the description. Ambiguous descriptions lead to wrong tool selections. If you have both a "Check Order Status" and a "Get Product Details" tool, make sure their descriptions are distinct enough that the AI won't confuse them.
Start with read-only tools. Begin with tools that only retrieve data (order status, shipping costs, product info). Once you're comfortable with how the AI uses tools, you can explore write operations like booking appointments or updating records.
Handle failures gracefully. APIs go down. Network issues happen. Always configure your tools with clear fallback messages so the agent doesn't just go silent when an API call fails.
Use descriptive parameter descriptions. The AI extracts parameters from natural conversation. A parameter described as "id" is less helpful than "The customer's order ID, typically formatted as a 5-digit number or a code starting with ORD-." The more context you provide, the better the extraction accuracy.
Monitor tool usage. Check your agent's conversation logs regularly to see how tools are being used. Are they being triggered correctly? Are there conversations where a tool should have been called but wasn't? This feedback loop helps you refine configurations.
What's Next?
- Testing Your AI Agent β Test your tools and overall agent behavior in a safe simulation environment.
- Knowledge Base β Combine tools with a rich knowledge base for an agent that can both answer questions and take action.
- AI Agent Overview β Review the full picture of what AI Agents can do.
