Web Search

Search the web and return top results with titles, URLs, and snippets. Essential for giving AI agents real-time access to information beyond their training data.

Supports two providers:

  • Tavily (recommended) — purpose-built for AI agents with optional advanced search depth
  • SerpAPI — Google search results via SerpAPI

Setup

Sign up for a search provider and add your API key as an environment variable on the Env Vars page:

| Variable | Description | |----------|-------------| | SEARCH_API_KEY | Tavily API key (tvly-...) or SerpAPI key |

Set Provider in the node settings to match your key. The provider setting is excluded from the AI agent tool schema — configure it once on the node, not per tool call.

Operations

Web Search has a single search operation. Configure the provider and query in the node settings (or via tool arguments when connected to an agent).

| Field | Type | Required | Description | |-------|------|----------|-------------| | provider | enum | Yes | tavily (recommended) or serpapi. Excluded from agent tool schema. | | query | string | Yes | Search query. Supports {{ }} bindings. | | max_results | number | No | Maximum number of results to return (default 5). | | search_depth | enum | No | Tavily only: basic or advanced (default basic). |

Provider notes

Tavily — set provider to tavily. Supports search_depth:

  • basic — fast, general web search
  • advanced — deeper search with more comprehensive results

SerpAPI — set provider to serpapi. Uses Google search results. search_depth is ignored.

As an AI Agent Tool

Connect a Web Search node to an AI Agent Tools handle to give the agent live web access.

The agent supplies query and optionally max_results as tool arguments. The provider is configured on the node itself and is not exposed to the agent — choose Tavily or SerpAPI in the node settings before connecting it.

Example agent use cases:

  • Answering questions about current events or recent product releases
  • Looking up documentation or API references during a conversation
  • Verifying facts before responding to a user

Output

The search emits a result object on the result handle, accessible downstream as {{ web_search.* }}:

| Field | Type | Description | |-------|------|-------------| | success | boolean | Whether the search succeeded | | results | array | Search results, each with title, url, and snippet | | query | string | The query that was searched | | error | string | Error message if success is false |

{
  "success": true,
  "query": "Tensorify workflow automation",
  "results": [
    {
      "title": "Tensorify — Visual Backend Builder",
      "url": "https://tensorify.io",
      "snippet": "Build REST APIs and automations visually..."
    }
  ],
  "error": null
}

Access results in downstream nodes:

{{ web_search.results[0].title }}
{{ web_search.results[0].url }}
{{ web_search.results[0].snippet }}
On this page