BroxiAI
  • Welcome
  • Account
    • Quickstart
    • Password
    • Team
      • Create team
      • Join team
      • Payment & Billing
      • Payment Policy
    • Global Variables
    • API Keys
  • Workflow
    • Overview
    • Quickstart
    • Components
    • Playground
    • Publish Workflow
    • File Manager
    • Webhook
  • Components
    • Input & Output
    • Agents
    • AI Models
    • Data
    • Embeddings
    • Helper
    • Loader
    • Logic
    • Memories
    • Processing
    • Prompt
    • Tools
    • Vector database
  • Advanced
    • Use Agent in flow
    • MCP Connect
    • MCP Astra DB
  • Integration
    • Apify
    • AssemblyAI
    • Composio
    • Google
      • Google Auth
      • Vertex AI
    • Notion
      • Setup
      • Notion Conversational Agent
      • Notion Meeting Notes Agent
Powered by GitBook
On this page
  • Use a tool in a flow​
  • arXiv​
  • Astra DB Tool​
  • Astra DB CQL Tool​
  • Bing Search API​
  • Calculator Tool​
  • Combinatorial Reasoner​
  • DuckDuckGo search​
  • Exa Search​
  • Glean Search API​
  • Google Search API​
  • Google Serper API​
  • MCP server​
  • Python Code Structured Tool​
  • Python REPL Tool​
  • Retriever Tool​
  • SearXNG Search Tool​
  • Search API​
  • Serp Search API​
  • Tavily AI Search​
  • Wikidata​
  • Wikipedia API​
  • Wolfram Alpha API​
  • Yahoo Finance News Tool​
  1. Components

Tools

PreviousPromptNextVector database

Last updated 12 days ago

Tools are typically connected to agent components at the Tools port. Agents use LLMs as a reasoning engine to decide which of the connected tool components to use to solve a problem.

Tools in agentic functions are, essentially, functions that the agent can call to perform tasks or access external resources. A function is wrapped as a Tool object, with a common interface the agent understands. Agents become aware of tools through tool registration, where the agent is provided a list of available tools, typically at agent initialization. The Tool object's description tells the agent what the tool can do.

The agent then uses a connected LLM to reason through the problem to decide which tool is best for the job.

Use a tool in a flow

Tools are typically connected to agent components at the Tools port.

The simple agent starter project uses URL and Calculator tools connected to an to answer a user's questions. The OpenAI LLM acts as a brain for the agent to decide which tool to use.

Simple agent starter flow

To make a component into a tool that an agent can use, enable Tool mode in the component. Enabling Tool mode modifies a component input to accept calls from an agent. If the component you want to connect to an agent doesn't have a Tool mode option, you can modify the component's inputs to become a tool.

Name
Display Name
Info

search_query

Search Query

The search query for arXiv papers (for example, quantum computing)

search_type

Search Field

The field to search in

max_results

Max Results

Maximum number of results to return

Name
Display Name
Info

papers

Papers

List of retrieved arXiv papers

The Astra DB Tool allows agents to connect to and query data from Astra DB collections.

Name
Type
Description

Tool Name

String

The name used to reference the tool in the agent's prompt.

Tool Description

String

A brief description of the tool. This helps the model decide when to use it.

Collection Name

String

The name of the Astra DB collection to query.

Token

SecretString

The authentication token for accessing Astra DB.

API Endpoint

String

The Astra DB API endpoint.

Projection Fields

String

The attributes to return, separated by commas. Default: "*".

Tool Parameters

Dict

Parameters the model needs to fill to execute the tool. For required parameters, use an exclamation mark (for example, !customer_id).

Static Filters

Dict

Attribute-value pairs used to filter query results.

Limit

String

The number of documents to return.

The Data output is primarily used when directly querying Astra DB, while the Tool output is used when integrating with LangChain agents or chains.

Name
Type
Description

Data

List[Data]

Tool

StructuredTool

A LangChain StructuredTool object that can be used in agent workflows. Contains the tool name, description, argument schema based on tool parameters, and the query function.

The Astra DB CQL Tool allows agents to query data from CQL tables in Astra DB.

The main difference between this tool and the Astra DB Tool is that this tool is specifically designed for CQL tables and requires partition keys for querying, while also supporting clustering keys for more specific queries.

Name
Type
Description

Tool Name

String

The name used to reference the tool in the agent's prompt.

Tool Description

String

A brief description of the tool to guide the model in using it.

Keyspace

String

The name of the keyspace.

Table Name

String

The name of the Astra DB CQL table to query.

Token

SecretString

The authentication token for Astra DB.

API Endpoint

String

The Astra DB API endpoint.

Projection Fields

String

The attributes to return, separated by commas. Default: "*".

Partition Keys

Dict

Required parameters that the model must fill to query the tool.

Clustering Keys

Dict

Optional parameters the model can fill to refine the query. Required parameters should be marked with an exclamation mark (for example, !customer_id).

Static Filters

Dict

Attribute-value pairs used to filter query results.

Limit

String

The number of records to return.

Name
Type
Description

Data

List[Data]

Tool

StructuredTool

A LangChain StructuredTool object that can be used in agent workflows. Contains the tool name, description, argument schema based on partition and clustering keys, and the query function.

This component allows you to call the Bing Search API.

Name
Type
Description

bing_subscription_key

SecretString

Bing API subscription key

input_value

String

Search query input

bing_search_url

String

Custom Bing Search URL (optional)

k

Integer

Number of search results to return

Name
Type
Description

results

List[Data]

List of search results

tool

Tool

Bing Search tool for use in LangChain

This component creates a tool for performing basic arithmetic operations on a given expression.

Name
Type
Description

expression

String

The arithmetic expression to evaluate (for example, 4*4*(33/22)+12-20).

Name
Type
Description

result

Tool

Calculator tool for use in LangChain

This component allows you to evaluate basic arithmetic expressions. It supports addition, subtraction, multiplication, division, and exponentiation. The tool uses a secure evaluation method that prevents the execution of arbitrary Python code.

Name
Display Name
Description

prompt

Prompt

Input to run CR on

openai_api_key

OpenAI API Key

OpenAI API key for authentication

username

Username

Username for Icosa API authentication

password

Password

Password for Icosa API authentication

model_name

Model Name

OpenAI LLM to use for reason generation

Name
Display Name
Description

optimized_prompt

Optimized Prompt

A message object containing the optimized prompt

reasons

Selected Reasons

A list of the selected reasons that are embedded in the optimized prompt

Name
Display Name
Info

input_value

Search Query

The search query to execute with DuckDuckGo.

max_results

Max Results

The maximum number of search results to return. Default: 5.

max_snippet_length

Max Snippet Length

The maximum length of each result snippet. Default: 100.

Name
Display Name
Info

data

List of search results as Data objects containing snippets and full content.

text

Text

Search results formatted as a single text string.

Name
Display Name
Info

metaphor_api_key

Exa Search API Key

API key for Exa Search (entered as a password)

use_autoprompt

Use Autoprompt

Whether to use autoprompt feature (default: true)

search_num_results

Search Number of Results

Number of results to return for search (default: 5)

similar_num_results

Similar Number of Results

Number of similar results to return (default: 5)

Name
Display Name
Info

tools

Tools

List of search tools provided by the toolkit

This component allows you to call the Glean Search API.

Name
Type
Description

glean_api_url

String

URL of the Glean API

glean_access_token

SecretString

Access token for Glean API authentication

query

String

Search query input

page_size

Integer

Number of results per page (default: 10)

request_options

Dict

Additional options for the API request (optional)

Name
Type
Description

results

List[Data]

List of search results

tool

Tool

Glean Search tool for use in LangChain

This component allows you to call the Google Search API.

Name
Type
Description

google_api_key

SecretString

Google API key for authentication

google_cse_id

SecretString

Google Custom Search Engine ID

input_value

String

Search query input

k

Integer

Number of search results to return

Name
Type
Description

results

List[Data]

List of search results

tool

Tool

Google Search tool for use in LangChain

This component allows you to call the Serper.dev Google Search API.

Name
Type
Description

serper_api_key

SecretString

API key for Serper.dev authentication

input_value

String

Search query input

k

Integer

Number of search results to return

Name
Type
Description

results

List[Data]

List of search results

tool

Tool

Google Serper search tool for use in LangChain

To use the MCP server component with an agent component, follow these steps:

  1. Add the MCP server component to your workflow.

uvx mcp-server-fetch
  1. Click to get the server's list of Tools.

  2. In the Tool field, select the server tool you want the component to use. The available fields change based on the selected tool. For information on the parameters, see the MCP server's documentation.

  3. In the MCP server component, enable Tool mode. Connect the MCP server component's Toolset port to an Agent component's Tools port.

  1. Open the Playground. Ask the agent to summarize recent tech news. The agent calls the MCP server function fetch and returns the summary. This confirms the MCP server is connected, and its tools are being used in BroxiAI.

  1. In the MCP Server component, select SSE. A default address appears in the MCP SSE URL field.

  2. In the MCP SSE URL field, modify the default address to point at the SSE endpoint of the BroxiAI server you're currently running.

  3. In the MCP Server component, click to retrieve the server's list of Tools.

  4. Click the Tools field. All of your flows are listed as tools.

  5. Open the Playground and chat with your tool. The agent chooses the correct tool based on your query.

Name
Type
Description

command

String

MCP command (default: uvx mcp-sse-shim@latest)

Name
Type
Description

tools

List[Tool]

List of tools exposed by the MCP server

This component creates a structured tool from Python code using a dataclass.

The component dynamically updates its configuration based on the provided Python code, allowing for custom function arguments and descriptions.

Name
Type
Description

tool_code

String

Python code for the tool's dataclass

tool_name

String

Name of the tool

tool_description

String

Description of the tool

return_direct

Boolean

Whether to return the function output directly

tool_function

String

Selected function for the tool

global_variables

Dict

Global variables or data for the tool

Name
Type
Description

result_tool

Tool │ Structured tool created from the Python code

This component creates a Python REPL (Read-Eval-Print Loop) tool for executing Python code.

Name
Type
Description

name

String

The name of the tool (default: "python_repl")

description

String

A description of the tool's functionality

global_imports

List[String]

List of modules to import globally (default: ["math"])

Name
Type
Description

tool

Tool

Python REPL tool for use in LangChain

This component creates a tool for interacting with a retriever in LangChain.

Name
Type
Description

retriever

BaseRetriever

The retriever to interact with

name

String

The name of the tool

description

String

A description of the tool's functionality

Name
Type
Description

tool

Tool

Retriever tool for use in LangChain

This component creates a tool for searching using SearXNG, a metasearch engine.

Name
Type
Description

url

String

The URL of the SearXNG instance

max_results

Integer

Maximum number of results to return

categories

List[String]

Categories to search in

language

String

Language for the search results

Name
Type
Description

result_tool

Tool

SearXNG search tool for use in LangChain

This component calls the searchapi.io API. It can be used to search the web for information.

Name
Display Name
Info

engine

Engine

The search engine to use (default: "google")

api_key

SearchAPI API Key

The API key for authenticating with SearchAPI

input_value

Input

The search query or input for the API call

search_params

Search parameters

Additional parameters for customizing the search

Name
Display Name
Info

data

Search Results

List of Data objects containing search results

tool

Search API Tool

A Tool object for use in LangChain workflows

This component creates a tool for searching using the Serp API.

Name
Type
Description

serpapi_api_key

SecretString

API key for Serp API authentication

input_value

String

Search query input

search_params

Dict

Additional search parameters (optional)

Name
Type
Description

results

List[Data]

List of search results

tool

Tool

Serp API search tool for use in LangChain

This component performs searches using the Tavily AI search engine, which is optimized for LLMs and RAG applications.

Name
Display Name
Info

api_key

Tavily API Key

Your Tavily API Key.

query

Search Query

The search query you want to execute with Tavily.

search_depth

Search Depth

The depth of the search.

topic

Search Topic

The category of the search.

max_results

Max Results

The maximum number of search results to return.

include_images

Include Images

Include a list of query-related images in the response.

include_answer

Include Answer

Include a short answer to original query.

Name
Display Name
Info

data

Data

The search results as a list of Data objects.

text

Text

The search results formatted as a text string.

This component performs a search using the Wikidata API.

Name
Display Name
Info

query

Query

The text query for similarity search on Wikidata.

Name
Display Name
Info

data

Data

The search results from Wikidata API as a list of Data objects.

text

Message

The search results formatted as a text message.

This component creates a tool for searching and retrieving information from Wikipedia.

Name
Type
Description

input_value

String

Search query input

lang

String

Language code for Wikipedia (default: "en")

k

Integer

Number of results to return

load_all_available_meta

Boolean

Whether to load all available metadata (advanced)

doc_content_chars_max

Integer

Maximum number of characters for document content (advanced)

Name
Type
Description

results

List[Data]

List of Wikipedia search results

tool

Tool

Wikipedia search tool for use in LangChain

This component creates a tool for querying the Wolfram Alpha API.

Name
Type
Description

input_value

String

Query input for Wolfram Alpha

app_id

SecretString

Wolfram Alpha API App ID

Name
Type
Description

results

List[Data]

List containing the Wolfram Alpha API response

tool

Tool

Wolfram Alpha API tool for use in LangChain

This component creates a tool for retrieving news from Yahoo Finance.

This component does not have any input parameters.

Name
Type
Description

tool

Tool

Yahoo Finance News tool for use in LangChain

arXiv

This component searches and retrieves papers from .

Inputs

Outputs

Astra DB Tool

Inputs

Outputs

A list of objects containing the query results from Astra DB. Each Data object contains the document fields specified by the projection attributes. Limited by the number_of_results parameter.

Astra DB CQL Tool

Inputs

Outputs

A list of objects containing the query results from the Astra DB CQL table. Each Data object contains the document fields specified by the projection fields. Limited by the number_of_results parameter.

Bing Search API

Inputs

Outputs

Calculator Tool

Inputs

Outputs

Combinatorial Reasoner

This component runs Icosa's Combinatorial Reasoning (CR) pipeline on an input to create an optimized prompt with embedded reasons. Sign up for access here:

Inputs

Outputs

DuckDuckGo search

This component performs web searches using the search engine with result-limiting capabilities.

Inputs

Outputs

Exa Search

This component provides an toolkit for search and content retrieval.

Inputs

Outputs

Glean Search API

Inputs

Outputs

Google Search API

Inputs

Outputs

Google Serper API

Inputs

Outputs

MCP server

This component connects to a server and exposes the MCP server's tools as tools.

In addition to being an MCP client that can leverage MCP servers, BroxiAI is also an MCP server that exposes flows as tools through the /api/v1/mcp/sse API endpoint. For more information, see .

In the MCP server component, in the MCP Command field, enter the command to start your MCP server. For example, to start a server, the command is:

uvx is included with uv in the BroxiAI package. To use npx server commands, you must first install an LTS release of .

MCP Server-Sent Events (SSE) mode

Enable Tool Mode, and then connect the MCP Server component to an agent component's tool port.

Inputs

Outputs

Python Code Structured Tool

Inputs

Outputs

Python REPL Tool

Inputs

Outputs

Retriever Tool

Inputs

Outputs

SearXNG Search Tool

Inputs

Outputs

Search API

For more information, see the .

Inputs

Outputs

Serp Search API

Inputs

Outputs

Tavily AI Search

Inputs

Outputs

Wikidata

Inputs

Outputs

Wikipedia API

Inputs

Outputs

Wolfram Alpha API

Inputs

Outputs

Yahoo Finance News Tool

Inputs

Outputs

​
arXiv.org
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
https://forms.gle/oWNv2NKjBNaqqvCx6
​
​
​
DuckDuckGo
​
​
​
Exa Search
​
​
​
​
​
​
​
​
​
​
​
​
Model Context Protocol (MCP)
MCP integrations
Fetch
Node.js
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
SearchAPI documentation
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
​
Data
Data
Data
​
agent component