Forjinn Docs

Development Platform

Documentation v2.0
Made with
by Forjinn

Tool

Learn about tool and how to implement it effectively.

3 min read
🆕Recently updated
Last updated: 12/9/2025

Tool (Agentflow Node)

The Tool node in InnoSynth-Forjinn's Agentflow allows you to explicitly call and execute a specific external tool within your workflow. Unlike the agent node, where an LLM decides which tool to use, this node provides direct control over tool invocation, making it suitable for scenarios where you know exactly which tool is needed at a particular step.

Purpose

The Tool node is designed for:

  • Direct Tool Invocation: When your workflow logic dictates a specific tool must be used.
  • Pre-defined Actions: Performing a fixed action (e.g., a specific search, a database update) at a certain point in the flow.
  • Integration with External Services: Connecting to APIs or services that have a dedicated tool component.

Appearance on Canvas

(Image: Placeholder for the Tool node icon/appearance on the canvas)

Configuration Parameters

The Tool node requires you to select a tool and provide its necessary input arguments.

1. Tool (Required)

  • Label: Tool
  • Type: asyncOptions (loads available Tools)
  • Description: Select the specific tool component you wish to execute (e.g., Google Search, Database Query, HTTP Request).

2. Tool Input Arguments (Optional)

  • Label: Tool Input Arguments
  • Type: array of objects
  • Description: Define the arguments that will be passed to the selected tool. The available input arguments will dynamically change based on the chosen tool.
    • Input Argument Name: The name of the input parameter required by the tool (e.g., query for a search tool, sqlQuery for a database tool).
    • Input Argument Value: The value for the input parameter. This can be a static string or a dynamic value from a preceding node (e.g., {{userQuestion}}). Supports variables.

3. Update Flow State (Optional)

  • Label: Update Flow State
  • Type: array of objects
  • Description: Allows you to update the runtime state of the workflow during the tool's execution.
    • Key: The key of the state variable to update.
    • Value: The new value for the state variable. Supports variables and the output of the tool ({{ output }}).

Inputs & Outputs

  • Input: Typically receives a trigger or data that provides the necessary input arguments for the tool.
  • Output: Produces the output generated by the executed tool. This output can be plain text, JSON, or other structured data, which can then be used by subsequent nodes in the workflow. It may also include artifacts if the tool produces them.

Example Usage: Performing a Specific Web Search

Let's say you want to perform a very specific web search at a certain point in your workflow, regardless of what an agent might decide.

  1. Connect a preceding node (e.g., a custom function that constructs a precise search query) to the input of a Tool node.
  2. Configure Tool: Select the Google Search tool.
  3. Configure Tool Input Arguments:
    • Input Argument Name: query
    • Input Argument Value: {{searchQuery}} (assuming searchQuery is a variable from the previous node).
  4. Connect to an LLM node: The LLM node can then process the search results.
  5. Connect LLM output to a Chat Output node.

This setup ensures that a Google Search is performed with the exact query provided, and its results are then passed to the LLM for further processing.