Skip to content

Tool

A Tool declares a capability the agent can invoke on its own when it deems necessary. It connects to the tools port of an AI Agent and you can connect several.

The powerful part: a tool can run any of the 600+ nodes in Floogos (generate images, call an API, query an ERP, read an Excel file…), a whole workflow, or a registered tool.

FieldTypeRequiredDescription
tool_nametextYesThe function name the LLM will see (e.g. get_weather). No spaces.
tool_descriptiontextareaYesWhat it does. The LLM decides when to use it by reading this.
tool_schemajsonNoJSON schema of the parameters (JSON Schema).
tool_kindselectYesnode, workflow or registered.
node_typetextCond.If tool_kind = node: the node type (e.g. openaiImages, http).
node_configjsonNoBase config of the node (merged with the LLM’s args).
workflow_idtextCond.If tool_kind = workflow: the workflow id.
tool_idtextCond.If tool_kind = registered: the id in agent_tools.
attach_totextYes*Agent alias.

Example 1 — A node as a tool (generate images)

Section titled “Example 1 — A node as a tool (generate images)”
  1. Tool:
    • tool_name: generate_image
    • tool_description: “Generates an image from a description. Use it when the user asks to create, draw or illustrate something.”
    • tool_kind: node
    • node_type: openaiImages
    • tool_schema:
      {
      "type": "object",
      "properties": {
      "prompt": { "type": "string", "description": "Image description" }
      },
      "required": ["prompt"]
      }
  2. Connect its output to the tools port.

For “draw me an astronaut cat”, the LLM calls generate_image with { prompt: "astronaut cat" }, the agent runs openaiImages and returns the result.

When the capability is a multi-step process, wrap it in a workflow and expose it as a single tool.

  1. Tool — tool_name: create_customer, tool_kind: workflow, workflow_id: 142 (the id of your onboarding workflow).
  2. tool_description: “Creates a new customer. Requires name and email.”
  3. tool_schema: define name and email as parameters.

The agent runs workflow 142 with the data the LLM extracted from the request.

tool_kind: node, node_type: finnegansGet, and in node_config the fixed credential/entity; the LLM provides the filter. This lets the agent read data from your ERP during the conversation.