The Problem
AI agents trust search results blindly. An agent searching for 'best CRM software' acts on the first result without checking if it is an ad, a spam page, or an outdated listicle from 2023. When agents take actions based on unverified search data (booking, purchasing, recommending), bad results cause real-world harm.
The Scavio Solution
Add a verification layer between search and agent action. Query Scavio for structured SERP data, then score each result on freshness, domain authority signals, and consistency with AI Overview. Only pass verified results to the agent's action layer. Scavio's structured output makes verification programmatic.
Before
Agent searches, takes first result, acts on it. First result is a 2023 listicle with outdated pricing. Agent recommends software that no longer exists at that price.
After
Agent searches via Scavio, verifies results against AI Overview and freshness signals, filters stale or suspicious results, then acts only on verified data.
Who It Is For
AI agent developers who need to prevent agents from acting on unverified, outdated, or low-quality search results.
Key Benefits
- Programmatic trust scoring for search results
- AI Overview cross-verification built in
- Freshness filtering removes stale content
- Domain reputation signals in structured data
- Prevents agent actions based on bad search data
Python Example
import requests, os
from datetime import datetime
API_KEY = os.environ["SCAVIO_API_KEY"]
H = {"x-api-key": API_KEY, "Content-Type": "application/json"}
def verified_search(query: str, min_trust: float = 0.6) -> list:
"""Search with trust verification before returning results."""
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers=H,
json={"query": query, "country_code": "us"},
timeout=10,
)
data = resp.json()
ai_overview = data.get("ai_overview", {})
ai_urls = [u.get("link", "") for u in ai_overview.get("sources", [])] if ai_overview else []
verified = []
for r in data.get("organic_results", []):
trust = 0.5 # base trust
# Boost if cited in AI Overview
if any(r.get("link", "") in au for au in ai_urls):
trust += 0.3
# Boost if recent content
date_str = r.get("date", "")
if "2026" in date_str or "2025" in date_str:
trust += 0.2
if trust >= min_trust:
verified.append({**r, "trust_score": round(trust, 2)})
return verified
results = verified_search("best crm software for startups 2026")
for r in results[:5]:
print(f"[{r['trust_score']}] {r.get('title', '')}: {r.get('link', '')}")JavaScript Example
const H = {'x-api-key': process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function verifiedSearch(query, minTrust=0.6) {
const r = await fetch('https://api.scavio.dev/api/v1/search', {method:'POST', headers:H, body:JSON.stringify({query, country_code:'us'})});
const d = await r.json();
const aiUrls = (d.ai_overview?.sources||[]).map(s=>s.link||'');
const verified = [];
for (const o of d.organic_results||[]) {
let trust = 0.5;
if (aiUrls.some(u=>(o.link||'').includes(u))) trust += 0.3;
if ((o.date||'').includes('2026')||(o.date||'').includes('2025')) trust += 0.2;
if (trust >= minTrust) verified.push({...o, trustScore:Math.round(trust*100)/100});
}
return verified;
}
const results = await verifiedSearch('best crm software for startups 2026');
for (const r of results.slice(0,5)) {
console.log('['+r.trustScore+'] '+r.title+': '+r.link);
}Platforms Used
Web search with knowledge graph, PAA, and AI overviews