Articles on: Tools

Custom Tools Overview

What are Custom Tools?

Custom Tools let you create your own specialized workflows that your AI Teammates can use. Instead of being limited to built-in features, you can build tools that connect to your own systems, process data in specific ways, or automate multi-step tasks.

Think of Custom Tools as:

  • Recipes that combine multiple steps into one reusable action
  • Bridges that connect your AI Teammate to external services and APIs
  • Custom workflows tailored to your specific business needs

When you might need Custom Tools:

  • Connecting to your company's internal APIs or services
  • Automating repetitive multi-step processes
  • Processing or transforming data in specific ways
  • Integrating with third-party services not already built-in
  • Creating specialized tools for your team's unique workflows

What can you build with Custom Tools?

  • API integrations (call any REST API)
  • Data processing workflows (transform, filter, calculate)
  • Multi-step automations (chain multiple actions together)
  • Error handling routines (gracefully handle failures)
  • Custom business logic (your own rules and processes)


How Custom Tools Work

Custom Tools are built from a sequence of actions that execute one after another. Each action can access:

  • Inputs: Values provided when the tool runs
  • Previous action outputs: Results from earlier steps in the sequence

 

The building blocks:

  1. Tool Inputs - Define what information your tool needs to run
    • Text values (like names or descriptions)
    • Numbers (like quantities or IDs)
    • True/false options (like enable/disable flags)
    • Multiple choice selections (from a predefined list)
  1. Actions - The steps your tool performs
    • API Actions: Call external web services
    • JavaScript Actions: Run custom code to process data
    • Native Tool Actions: Use built-in tools (like Jira, web search, etc.)
    • Catch Actions: Handle errors when something goes wrong
  1. Tool Output - What your tool returns after all actions complete
    • Can be the result of any action in your sequence
    • Accessible to the AI Teammate using your tool


Getting Started with Custom Tools


Creating your first tool

  1. Navigate to the Tools page
  2. Click "Create New Tool" or "+ New Tool" button
  3. Enter a descriptive name for your tool
    • Use clear, action-oriented names like "Fetch Customer Data" or "Generate Sales Report"
  1. Add a description explaining what your tool does and when to use it
  2. Click Save to create your tool





Adding inputs to your tool

Inputs are the pieces of information your tool needs to run.

  1. In the Inputs section, click "Add Input"
  2. Enter an input name (alphanumeric only, no spaces)
    • Example: customerId, reportType, startDate
  1. Select a data type:
    • String: Text values (names, descriptions, URLs)
    • Number: Numeric values (IDs, quantities, prices)
    • Boolean: True/false options (enable/disable, yes/no)
    • Enum: Multiple choice from a predefined list
  1. If you selected Enum, enter the allowed values
  2. Click Add or Save


 

Tips for naming inputs:

  • Use camelCase or snake_case (e.g., customerId or customer_id)
  • Make names descriptive and clear
  • Avoid special characters and spaces
  • Keep names short but meaningful


Adding actions to your tool

Actions are the steps your tool performs. They execute in order from top to bottom.

  1. In the Actions section, click "Add Action"
  2. Choose an action type:
    • API: Call an external web service
    • JavaScript Code: Run custom JavaScript code
    • Native Tools: Use built-in tools (Jira, web search, etc.)
  1. Enter an action name (alphanumeric only, no spaces)
    • Example: fetchData, processResults, formatOutput
  1. Configure the action settings (see specific action documentation below)
  2. Click Add or Save


 

Tips for organizing actions:

  • Name actions clearly to indicate what they do
  • Order matters - actions run from top to bottom
  • Later actions can use outputs from earlier actions
  • Drag and drop to reorder actions


Using action outputs in later steps

Each action's result is stored and can be used by actions that come after it. This is called action chaining.

How to reference previous actions:

Use handlebars syntax {{actionName}} to insert values:

  • {{inputName}} - Access a tool input
  • {{actionName}} - Access an entire action's output
  • {{actionName.property}} - Access a specific property from an action's output

Example: Multi-step workflow

Let's say you have a tool with these actions:

  1. Action "getUserData" - Calls an API and returns { "userId": 123, "email": "user@example.com" }
  2. Action "sendEmail" - Uses the email from the first action

In the second action, you can reference the email like this:

Email address: {{getUserData.email}}

This will be replaced with: user@example.com


Testing your tool

Before using your tool with an Teammate, test it to make sure it works correctly.

To test the entire tool:

  1. Click the "Test Tool" button at the top right of the page
  2. Provide sample values for each input
  3. Click "Run Test"
  4. Review the output to verify it's what you expect

To test individual actions:

  1. Click the "Test" button at the bottom of the action editor
  2. Provide sample inputs and outputs from previous actions
  3. Review the action's result


Sharing tools with your team

Once your tool is working, you can share it with other team members.

  1. Click the "Share" button in the tool header
  2. Select team members from the list
  3. Click "Share"
  4. Shared users can now use your tool in their Teammates

To make a tool available to everyone*

*This option is available only for the users with admin permissions within the organization

  1. Click the "Settings" button
  2. Enable "Make Public"
  3. All users can now access your tool


 

Note: Only the tool owner can edit the tool. Shared users can only view and use it.


Managing Your Custom Tools


Viewing your tools

The Tools page shows two lists:

  • My Tools: Tools you created
  • Shared With Me: Tools others shared with you

Click any tool to view and edit it (if you're the owner) or view it (if it's shared with you).


Duplicating a tool

Create a copy of an existing tool to use as a starting point:

  1. Open the tool you want to duplicate
  2. Click the "Duplicate" button in the header
  3. A copy is created with "(Copy)" added to the name
  4. Edit the copy as needed

This is useful for:

  • Creating variations of similar tools
  • Starting from a working template
  • Experimenting without affecting the original


Deleting a tool

Remove tools you no longer need:

  1. Open the tool you want to delete
  2. Click the "Delete" button in the header
  3. Confirm the deletion

Warning: Deleting a tool cannot be undone. Any Teammates using this tool will no longer be able to access it.


Viewing execution errors

If your tool encounters errors during execution, you can review them:

  1. Open your tool
  2. Look for the "Recent Errors" section
  3. Click on an error to see details
    • Error message
    • When it occurred
    • Which action failed
    • Input values that caused the error

Use this information to debug and fix issues with your tool.


Best Practices for Building Custom Tools

1. Start simple, then add complexity

  • Begin with a single action tool
  • Test it thoroughly
  • Add more actions once the basics work
  • Build up complex workflows incrementally

2. Give clear names and descriptions

  • Tool names should explain what the tool does
  • Descriptions should explain when to use it
  • Action names should indicate their purpose
  • Input names should be self-explanatory

3. Handle errors gracefully

  • Use Catch Actions to handle expected failures
  • Provide helpful error messages
  • Test error scenarios before deploying
  • Log errors for troubleshooting

4. Test with realistic data

  • Use actual inputs your tool will encounter
  • Test edge cases (empty values, large numbers, special characters)
  • Verify outputs match your expectations
  • Test the entire tool, not just individual actions

5. Document your tools

  • Use the description field to explain usage
  • Note any special requirements or limitations
  • Document expected input formats
  • Explain what the output represents

6. Keep tools focused

  • Each tool should do one thing well
  • Break complex workflows into multiple tools
  • Tools should be reusable across different Teammates
  • Avoid creating overly complicated tools

Updated on: 03/11/2025

Was this article helpful?

Share your feedback

Cancel

Thank you!