# Tools

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[​](https://docs.langflow.org/components-tools#use-a-tool-in-a-flow) <a href="#use-a-tool-in-a-flow" id="use-a-tool-in-a-flow"></a>

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

The simple agent starter project uses URL and Calculator tools connected to an [agent component](agents) 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](https://docs.langflow.org/assets/images/starter-flow-simple-agent-71d0dec218a5da8e3110c51716f1c91e.png)

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.

### arXiv[​](https://docs.langflow.org/components-tools#arxiv) <a href="#arxiv" id="arxiv"></a>

This component searches and retrieves papers from [arXiv.org](https://arxiv.org/).

#### Inputs[​](https://docs.langflow.org/components-tools#inputs) <a href="#inputs" id="inputs"></a>

| 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                                  |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs) <a href="#outputs" id="outputs"></a>

| Name   | Display Name | Info                           |
| ------ | ------------ | ------------------------------ |
| papers | Papers       | List of retrieved arXiv papers |

### Astra DB Tool[​](https://docs.langflow.org/components-tools#astra-db-tool) <a href="#astra-db-tool" id="astra-db-tool"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-1) <a href="#inputs-1" id="inputs-1"></a>

| 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.                                                                                                      |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-1) <a href="#outputs-1" id="outputs-1"></a>

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`]  | A list of [Data](data) 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. |
| 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.                                  |

### Astra DB CQL Tool[​](https://docs.langflow.org/components-tools#astra-db-cql-tool) <a href="#astra-db-cql-tool" id="astra-db-cql-tool"></a>

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.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-2) <a href="#inputs-2" id="inputs-2"></a>

| 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.                                                                                                                         |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-2) <a href="#outputs-2" id="outputs-2"></a>

| Name | Type           | Description                                                                                                                                                                                                              |
| ---- | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Data | List\[Data]    | A list of [Data](data) 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. |
| 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.                              |

### Bing Search API[​](https://docs.langflow.org/components-tools#bing-search-api) <a href="#bing-search-api" id="bing-search-api"></a>

This component allows you to call the Bing Search API.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-3) <a href="#inputs-3" id="inputs-3"></a>

| 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 |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-3) <a href="#outputs-3" id="outputs-3"></a>

| Name    | Type        | Description                           |
| ------- | ----------- | ------------------------------------- |
| results | List\[Data] | List of search results                |
| tool    | Tool        | Bing Search tool for use in LangChain |

### Calculator Tool[​](https://docs.langflow.org/components-tools#calculator-tool) <a href="#calculator-tool" id="calculator-tool"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-4) <a href="#inputs-4" id="inputs-4"></a>

| Name       | Type   | Description                                                               |
| ---------- | ------ | ------------------------------------------------------------------------- |
| expression | String | The arithmetic expression to evaluate (for example, `4*4*(33/22)+12-20`). |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-4) <a href="#outputs-4" id="outputs-4"></a>

| 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.

### Combinatorial Reasoner[​](https://docs.langflow.org/components-tools#combinatorial-reasoner) <a href="#combinatorial-reasoner" id="combinatorial-reasoner"></a>

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: [https://forms.gle/oWNv2NKjBNaqqvCx6](https://forms.gle/oWNv2NKjBNaqqvCx6)

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-5) <a href="#inputs-5" id="inputs-5"></a>

| 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 |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-5) <a href="#outputs-5" id="outputs-5"></a>

| 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 |

### DuckDuckGo search[​](https://docs.langflow.org/components-tools#duckduckgo-search) <a href="#duckduckgo-search" id="duckduckgo-search"></a>

This component performs web searches using the [DuckDuckGo](https://www.duckduckgo.com/) search engine with result-limiting capabilities.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-6) <a href="#inputs-6" id="inputs-6"></a>

| 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`.    |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-6) <a href="#outputs-6" id="outputs-6"></a>

| Name | Display Name | Info                                                                         |
| ---- | ------------ | ---------------------------------------------------------------------------- |
| data | [Data](data) | List of search results as Data objects containing snippets and full content. |
| text | Text         | Search results formatted as a single text string.                            |

### Exa Search[​](https://docs.langflow.org/components-tools#exa-search) <a href="#exa-search" id="exa-search"></a>

This component provides an [Exa Search](https://exa.ai) toolkit for search and content retrieval.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-7) <a href="#inputs-7" id="inputs-7"></a>

| 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)    |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-7) <a href="#outputs-7" id="outputs-7"></a>

| Name  | Display Name | Info                                         |
| ----- | ------------ | -------------------------------------------- |
| tools | Tools        | List of search tools provided by the toolkit |

### Glean Search API[​](https://docs.langflow.org/components-tools#glean-search-api) <a href="#glean-search-api" id="glean-search-api"></a>

This component allows you to call the Glean Search API.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-8) <a href="#inputs-8" id="inputs-8"></a>

| 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) |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-8) <a href="#outputs-8" id="outputs-8"></a>

| Name    | Type        | Description                            |
| ------- | ----------- | -------------------------------------- |
| results | List\[Data] | List of search results                 |
| tool    | Tool        | Glean Search tool for use in LangChain |

### Google Search API[​](https://docs.langflow.org/components-tools#google-search-api) <a href="#google-search-api" id="google-search-api"></a>

This component allows you to call the Google Search API.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-9) <a href="#inputs-9" id="inputs-9"></a>

| 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 |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-9) <a href="#outputs-9" id="outputs-9"></a>

| Name    | Type        | Description                             |
| ------- | ----------- | --------------------------------------- |
| results | List\[Data] | List of search results                  |
| tool    | Tool        | Google Search tool for use in LangChain |

### Google Serper API[​](https://docs.langflow.org/components-tools#google-serper-api) <a href="#google-serper-api" id="google-serper-api"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-10) <a href="#inputs-10" id="inputs-10"></a>

| 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    |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-10) <a href="#outputs-10" id="outputs-10"></a>

| Name    | Type        | Description                                    |
| ------- | ----------- | ---------------------------------------------- |
| results | List\[Data] | List of search results                         |
| tool    | Tool        | Google Serper search tool for use in LangChain |

### MCP server[​](https://docs.langflow.org/components-tools#mcp-server) <a href="#mcp-server" id="mcp-server"></a>

This component connects to a [Model Context Protocol (MCP)](https://modelcontextprotocol.io/introduction) 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 [MCP integrations](https://docs.langflow.org/integrations-mcp).

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

1. Add the MCP server component to your workflow.
2. In the MCP server component, in the **MCP Command** field, enter the command to start your MCP server. For example, to start a [Fetch](https://github.com/modelcontextprotocol/servers/tree/main/src/fetch) server, the command is:

```javascript
uvx mcp-server-fetch
```

`uvx` is included with `uv` in the BroxiAI package. To use `npx` server commands, you must first install an LTS release of [Node.js](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm).&#x20;

3. Click  to get the server's list of **Tools**.
4. 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.
5. In the MCP server component, enable **Tool mode**. Connect the MCP server component's **Toolset** port to an **Agent** component's **Tools** port.

![MCP server component](https://docs.langflow.org/assets/images/mcp-server-component-1335e50a6b27980cadb99acc22273562.png)

6. 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.

#### MCP Server-Sent Events (SSE) mode[​](https://docs.langflow.org/components-tools#mcp-server-sent-events-sse-mode) <a href="#mcp-server-sent-events-sse-mode" id="mcp-server-sent-events-sse-mode"></a>

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.&#x20;
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. Enable **Tool Mode**, and then connect the **MCP Server** component to an agent component's tool port. ![MCP server component](https://docs.langflow.org/assets/images/mcp-server-component-sse-b8266a86288c1063ee67869373396035.png)
6. Open the **Playground** and chat with your tool. The agent chooses the correct tool based on your query.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-11) <a href="#inputs-11" id="inputs-11"></a>

| Name    | Type   | Description                                      |
| ------- | ------ | ------------------------------------------------ |
| command | String | MCP command (default: `uvx mcp-sse-shim@latest`) |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-11) <a href="#outputs-11" id="outputs-11"></a>

| Name  | Type        | Description                             |
| ----- | ----------- | --------------------------------------- |
| tools | List\[Tool] | List of tools exposed by the MCP server |

### Python Code Structured Tool[​](https://docs.langflow.org/components-tools#python-code-structured-tool) <a href="#python-code-structured-tool" id="python-code-structured-tool"></a>

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.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-12) <a href="#inputs-12" id="inputs-12"></a>

| 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          |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-12) <a href="#outputs-12" id="outputs-12"></a>

| Name         | Type                                                | Description |
| ------------ | --------------------------------------------------- | ----------- |
| result\_tool | Tool │ Structured tool created from the Python code |             |

### Python REPL Tool[​](https://docs.langflow.org/components-tools#python-repl-tool) <a href="#python-repl-tool" id="python-repl-tool"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-13) <a href="#inputs-13" id="inputs-13"></a>

| 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"]) |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-13) <a href="#outputs-13" id="outputs-13"></a>

| Name | Type | Description                           |
| ---- | ---- | ------------------------------------- |
| tool | Tool | Python REPL tool for use in LangChain |

### Retriever Tool[​](https://docs.langflow.org/components-tools#retriever-tool) <a href="#retriever-tool" id="retriever-tool"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-14) <a href="#inputs-14" id="inputs-14"></a>

| 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 |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-14) <a href="#outputs-14" id="outputs-14"></a>

| Name | Type | Description                         |
| ---- | ---- | ----------------------------------- |
| tool | Tool | Retriever tool for use in LangChain |

### SearXNG Search Tool[​](https://docs.langflow.org/components-tools#searxng-search-tool) <a href="#searxng-search-tool" id="searxng-search-tool"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-15) <a href="#inputs-15" id="inputs-15"></a>

| 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     |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-15) <a href="#outputs-15" id="outputs-15"></a>

| Name         | Type | Description                              |
| ------------ | ---- | ---------------------------------------- |
| result\_tool | Tool | SearXNG search tool for use in LangChain |

### Search API[​](https://docs.langflow.org/components-tools#search-api) <a href="#search-api" id="search-api"></a>

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

For more information, see the [SearchAPI documentation](https://www.searchapi.io/docs/google).

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-16) <a href="#inputs-16" id="inputs-16"></a>

| 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 |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-16) <a href="#outputs-16" id="outputs-16"></a>

| 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   |

### Serp Search API[​](https://docs.langflow.org/components-tools#serp-search-api) <a href="#serp-search-api" id="serp-search-api"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-17) <a href="#inputs-17" id="inputs-17"></a>

| 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) |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-17) <a href="#outputs-17" id="outputs-17"></a>

| Name    | Type        | Description                               |
| ------- | ----------- | ----------------------------------------- |
| results | List\[Data] | List of search results                    |
| tool    | Tool        | Serp API search tool for use in LangChain |

### Tavily AI Search[​](https://docs.langflow.org/components-tools#tavily-ai-search) <a href="#tavily-ai-search" id="tavily-ai-search"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-18) <a href="#inputs-18" id="inputs-18"></a>

| 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.               |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-18) <a href="#outputs-18" id="outputs-18"></a>

| 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. |

### Wikidata[​](https://docs.langflow.org/components-tools#wikidata) <a href="#wikidata" id="wikidata"></a>

This component performs a search using the Wikidata API.

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-19) <a href="#inputs-19" id="inputs-19"></a>

| Name  | Display Name | Info                                              |
| ----- | ------------ | ------------------------------------------------- |
| query | Query        | The text query for similarity search on Wikidata. |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-19) <a href="#outputs-19" id="outputs-19"></a>

| 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.                 |

### Wikipedia API[​](https://docs.langflow.org/components-tools#wikipedia-api) <a href="#wikipedia-api" id="wikipedia-api"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-20) <a href="#inputs-20" id="inputs-20"></a>

| 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) |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-20) <a href="#outputs-20" id="outputs-20"></a>

| Name    | Type        | Description                                |
| ------- | ----------- | ------------------------------------------ |
| results | List\[Data] | List of Wikipedia search results           |
| tool    | Tool        | Wikipedia search tool for use in LangChain |

### Wolfram Alpha API[​](https://docs.langflow.org/components-tools#wolfram-alpha-api) <a href="#wolfram-alpha-api" id="wolfram-alpha-api"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-21) <a href="#inputs-21" id="inputs-21"></a>

| Name         | Type         | Description                   |
| ------------ | ------------ | ----------------------------- |
| input\_value | String       | Query input for Wolfram Alpha |
| app\_id      | SecretString | Wolfram Alpha API App ID      |

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-21) <a href="#outputs-21" id="outputs-21"></a>

| Name    | Type        | Description                                    |
| ------- | ----------- | ---------------------------------------------- |
| results | List\[Data] | List containing the Wolfram Alpha API response |
| tool    | Tool        | Wolfram Alpha API tool for use in LangChain    |

### Yahoo Finance News Tool[​](https://docs.langflow.org/components-tools#yahoo-finance-news-tool) <a href="#yahoo-finance-news-tool" id="yahoo-finance-news-tool"></a>

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

#### Inputs[​](https://docs.langflow.org/components-tools#inputs-22) <a href="#inputs-22" id="inputs-22"></a>

This component does not have any input parameters.

#### Outputs[​](https://docs.langflow.org/components-tools#outputs-22) <a href="#outputs-22" id="outputs-22"></a>

| Name | Type | Description                                  |
| ---- | ---- | -------------------------------------------- |
| tool | Tool | Yahoo Finance News tool for use in LangChain |
