Web Search (WEB_SEARCH)

Lets an agent search the internet with Tavily, Google Custom Search or SearchApi. It is tool-only: it has no input or output port and cannot be used as a step.

Category: Utilities · Deployed: yes · Tool-capable: yes (only)

Ports

Port Kind Purpose

Tool (tool_mcp)

Tool

Connect it to an Agent’s Tools port. This is the module’s only connection

Properties

Field Required Meaning

Search Engine

Yes

Tavily, Google Custom Search or SearchApi. Choose it first. The fields for that engine appear after you choose

Max Results (maxResults)

No

How many results the agent gets per search. More → a fuller picture, but more to read, so slower and more costly for the model. Fewer → faster and cheaper. Empty → 5. The agent may ask for another number in a single search

Custom Tool Description (description)

No

The text the agent reads to decide when to search, for example "only for news after 2024". It replaces the standard text, so also say what the tool does. Empty → a standard text: it searches the web and returns title, address and a short excerpt

Tavily

Field Required Meaning

API Key (tavily.apiKey)

Yes

The API key from your account on tavily.com. The field is hidden like a password

Field Required Meaning

API Key (googleCustomSearch.apiKey)

Yes

A Google Cloud API key with the "Custom Search JSON API" turned on

Search Engine ID (cx) (googleCustomSearch.csi)

Yes

The ID of your search engine from programmablesearchengine.google.com. It is not the API key. You need both

SearchApi

Field Required Meaning

API Key (searchApi.apiKey)

Yes

The API key from your account on searchapi.io

Engine (searchApi.engine)

No

Which search engine SearchApi asks, for example google, bing or google_scholar. Empty → google

If the Search Engine or a required key is missing, the pipeline cannot be assigned to an agent, and the designer lists the missing field. If a saved pipeline is deployed anyway, the module is left out and is also removed from the agent’s tools.

What happens at run time

  • The agent sends a search text, and optionally a number of results.

  • The module asks the chosen search engine and gives the agent a list. Each entry has a title, a url and a snippet (a short excerpt of the page). The module does not open the pages.

  • A failed search does not stop the run. If the engine cannot be reached or refuses the key, the agent gets {"error": "Web search failed: …"} and can tell the user or try again.

  • An empty search text gives the agent the error "query must not be empty".

Use cases

  • Current information that the model cannot know: news, prices, recent releases.

  • Fact-checking an answer against public sources.

  • Research assistant, together with an AI Topic module, so the agent can use both your own documents and the open web.

Notes

  • Tool-only. There are no data ports, so you cannot place it in a chain of steps.

  • Google Custom Search needs two values. Entering only the API key is the usual mistake.

  • Choose the engine first, or no key fields appear.

  • Keep Max Results small. Every result goes into the agent’s context. Many weak results crowd out the good ones.

  • Search texts leave your network. The agent’s search text is sent to the search provider.

  • The keys are not part of an export. Enter them again after an import.