El problema
La mayoría de las API SERP se diseñaron en 2018 para paneles de control de SEO, no para agentes que utilizan herramientas. Devuelven fragmentos de HTML, nombres de campos inconsistentes o claves opcionales que sólo existen cuando el planeta se alinea. Un agente que tiene que adivinar si llamar a item.link, item.url o item.href para cada resultado es un agente que falla el diez por ciento de las veces en producción. Los modelos de llamada de funciones necesitan un esquema en el que puedan confiar en cada llamada, y necesitan campos nombrados de manera que se correspondan claramente con lo que el LLM ya ha visto en los datos previos al entrenamiento.
La solucion de Scavio
Scavio fue construido teniendo en cuenta las funciones. Cada respuesta se ajusta a un esquema documentado, los campos obligatorios siempre están presentes y los campos opcionales utilizan nombres estables. Las posiciones son números enteros, los fragmentos son texto sin formato y las respuestas enriquecidas, como descripciones generales de IA o paneles de gráficos de conocimiento, llegan en claves dedicadas con subcampos escritos. La respuesta completa se puede pegar directamente en una definición de herramienta en modo JSON sin remodelarla. Su agente obtiene una estructura determinista, lo que significa comportamiento determinista.
Antes
Antes de Scavio, los equipos de agentes escribieron un adaptador Zod o Pydantic para cada proveedor de SERP y pasaron semanas de lanzamiento depurando por qué el agente alucinaba con un campo faltante.
Después
Después de Scavio, la respuesta del proveedor es la respuesta de la herramienta. El agente ingiere JSON estructurado, la llamada a la función se resuelve y el agente pasa al siguiente paso sin un ciclo de reparación.
Para quien es
Desarrolladores de agentes que utilizan llamadas a herramientas OpenAI, uso de herramientas Anthropic, LangChain, LlamaIndex o bucles ReAct personalizados. Cualquiera que haya depurado un nombre de campo alucinado a las dos de la madrugada sabe por qué esto es importante.
Beneficios clave
- Esquema JSON documentado estable en todas las versiones
- Los campos obligatorios nunca faltan, incluso en consultas sin resultado
- Descripciones generales de IA y gráfico de conocimiento como objetos mecanografiados de primera clase
- Nombres de campos optimizados para mensajes de llamada de herramientas LLM
- Listo para ingresar a esquemas de funciones OpenAI, Anthropic o Gemini
Ejemplo en Python
import requests
import json
API_KEY = "your_scavio_api_key"
def search_tool(query: str) -> dict:
r = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": "google", "query": query},
timeout=10,
)
return r.json()
# Drop the output straight into an LLM tool call
result = search_tool("openai devday 2026 announcements")
print(json.dumps({
"organic": result["organic"][:3],
"ai_overview": result.get("ai_overview"),
"knowledge_graph": result.get("knowledge_graph"),
}, indent=2))Ejemplo en JavaScript
const API_KEY = "your_scavio_api_key";
async function searchTool(query) {
const res = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST",
headers: {
"x-api-key": API_KEY,
"content-type": "application/json",
},
body: JSON.stringify({ platform: "google", query }),
});
return res.json();
}
const result = await searchTool("openai devday 2026 announcements");
console.log(JSON.stringify({
organic: result.organic.slice(0, 3),
ai_overview: result.ai_overview,
knowledge_graph: result.knowledge_graph,
}, null, 2));Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA
YouTube
Búsqueda de videos con transcripciones y metadatos
Amazon
Búsqueda de productos con precios, calificaciones y reseñas
Walmart
Búsqueda de productos con precios y datos de cumplimiento