Create Tools for your Agents

Tools perform services for the Agent — each tool pipeline represents a discrete capability, such as reading a database, calling a web service, or performing a calculation, that the Agent pipeline invokes based on the LLM's reasoning. Tool pipelines can be built around any Snap that performs the required operation: an HTTP Client Snap for external web services, or a system-specific Snap — such as a MySQL Snap — for operations against a particular data source. You can create tool pipelines in Designer from scratch or by importing a pattern from the Public Pattern Library.

Tool output requirements

Each tool pipeline must return exactly one output document per invocation. The Agent Snap expects a 1:1 mapping between a tool call and its result document.

Important: If a tool pipeline returns more than one output document, the Agent Snap issues a warning and uses only the first document. The remaining documents are discarded, which may result in data loss.

For pipelines that return multiple records — for example, a Database Query Snap returning multiple rows — add a Gate Snap or similar aggregation logic before the output view to consolidate the records into a single output document.

  • Familiarity with building pipelines in Designer.
  • Feature subscription to AgentCreator.
  1. Select one of the following methods for building your tool:
    To import a prefabricated tool, follow the steps below. To create a tool in a blank Designer canvas, go to step 2.
    1. Navigate to the Public Pattern Library via the Waffle menu.

    2. Click the AgentCreator pill button, then select a pattern that has the tool label.

      Tip: Enter tool in the Search field to narrow the results to only tool pipeline patterns.
    3. Select the destination Project, and click Use Pattern.

    4. In the next popup, select Open in Designer.


  2. Click to open the Pipeline Properties dialog:
    1. Enter the name of the Tool.
    2. Click the Tool tab, then turn on the Expose this pipeline as a tool toggle.

      Tool tab with the Expose this pipeline as a tool toggle enabled, showing an empty Tool inputs panel in form mode

    3. In the Describe tool field, enter a plain-language description of what the tool does so the LLM can decide when to invoke it.
    4. Under Tool inputs, choose an editor mode and define the parameters the LLM must supply when calling this tool:

      Tool tab showing the editor mode selection screen with Build with a form and Use a JSON schema option

      • Choose Build with a form to add inputs one at a time (name, type, description, required).
        Tool tab showing the form editor with a latitude input defined

      • Choose Use a JSON schema to paste or upload a raw JSON Schema.
        Tool tab showing the JSON schema editor with a valid JSON schema entered

      In your pipeline, reference these inputs using $paramName notation. Tool inputs are separate from Pipeline Parameters (_paramName), which are used for static configuration values passed at execution time.

      For more details, see Tool tab in Pipeline Properties.

    5. For passing account information to the APIM Function Generator and OpenAPI Function Generator Snaps in the Agent pipeline calling this Tool, enter Account as one of the Pipeline Parameter keys. You can leave the Value field empty.
  3. Test the tool pipeline by validating it.
    When your tool validates successfully, you can test it by running your Agent pipeline to verify that the Agent pipeline calls the tool successfully.

The following video describes how to build a tool pipeline in SnapLogic Designer using AgentCreator Snaps.