Solution

Add Live Search Nodes to LangGraph Agent Workflows

LangGraph agents default to retrieval from static vector stores or cached data. When the workflow requires current market data, live competitor info, or real-time pricing, the agen

The Problem

LangGraph agents default to retrieval from static vector stores or cached data. When the workflow requires current market data, live competitor info, or real-time pricing, the agent has no built-in way to fetch fresh results from the web.

The Scavio Solution

Add a Scavio search node to your LangGraph state graph. The node accepts a query from upstream nodes, fetches live SERP results, and passes structured data downstream for the LLM to synthesize into its response.

Before

LangGraph agents limited to stale vector store data, unable to answer questions about current events, live pricing, or recent product launches.

After

A dedicated search node in the LangGraph graph fetches live results on demand, giving the agent access to real-time web data at any point in the workflow.

Who It Is For

LangGraph developers building research and analysis pipelines.

Key Benefits

  • Drop-in search node for any LangGraph state graph
  • Real-time web data available at any workflow step
  • Structured output compatible with LangGraph state schema
  • Multi-platform search across Google, Reddit, YouTube

Python Example

Python
import requests
from typing import TypedDict

class SearchState(TypedDict):
    query: str
    search_results: list
    grounded_answer: str

def scavio_search_node(state: SearchState) -> dict:
    """LangGraph node that fetches live search results."""
    resp = requests.post(
        "https://api.scavio.dev/api/v1/search",
        headers={"x-api-key": SCAVIO_API_KEY, "Content-Type": "application/json"},
        json={"query": state["query"], "platform": "google", "limit": 8}
    )
    results = resp.json().get("results", [])
    return {
        "search_results": [
            {"title": r["title"], "url": r["link"], "snippet": r.get("snippet", "")}
            for r in results
        ]
    }

# Usage in LangGraph:
# graph.add_node("search", scavio_search_node)
# graph.add_edge("planner", "search")
# graph.add_edge("search", "synthesizer")

JavaScript Example

JavaScript
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
fetch('https://api.scavio.dev/api/v1/search', {method: 'POST', headers: H, body: JSON.stringify({query: 'example', country_code: 'us'})}).then(r => r.json()).then(d => console.log(d.organic_results?.length + ' results'));

Platforms Used

Google

Web search with knowledge graph, PAA, and AI overviews

Reddit

Community, posts & threaded comments from any subreddit

YouTube

Video search with transcripts and metadata

Frequently Asked Questions

LangGraph agents default to retrieval from static vector stores or cached data. When the workflow requires current market data, live competitor info, or real-time pricing, the agent has no built-in way to fetch fresh results from the web.

Add a Scavio search node to your LangGraph state graph. The node accepts a query from upstream nodes, fetches live SERP results, and passes structured data downstream for the LLM to synthesize into its response.

LangGraph developers building research and analysis pipelines.

Yes. Scavio's free tier includes 250 credits per month with no credit card required. That is enough to validate this solution in your workflow.

Add Live Search Nodes to LangGraph Agent Workflows

Add a Scavio search node to your LangGraph state graph. The node accepts a query from upstream nodes, fetches live SERP results, and passes structured data downstream for the LLM t