Resumen
n8n es un popular de codigo abierto automatizacion plataforma, y connecting it to Scavio's MCP servidor unlocks search-powered flujos de trabajo sin writing personalizado code. Este flujo de trabajo muestra como configurar un n8n cron activar ese calls Scavio MCP search diario, procesa el resultados con n8n's built-in nodes, y routes datos to Google Sheets, Slack, o cualquier otro n8n-supported destino. El code ejemplos mostrar el HTTP Solicitud node configuracion for ambos el search API y el MCP endpoint.
Desencadenador
n8n cron activar (configurable programar)
Programación
Diario (configurable in n8n)
Pasos del flujo de trabajo
Configurar n8n Cron Activar
Set up el n8n cron node to fire at your desired programar (default: diario at 8 AM).
Set Up HTTP Solicitud to Scavio
Configurar el n8n HTTP Solicitud node to call Scavio search API o MCP endpoint con your clave API.
Analizar Search Resultados
Use n8n's Set o Function node to extraer titles, URLs, fragmentos, y prices de el respuesta.
Filtrar y Transformar Datos
Apply n8n IF o Switch nodes to filtrar resultados by relevance, price rango, o otro criterios.
Route to Destino
Enviar procesado datos to Google Sheets, Slack, Airtable, o cualquier n8n-supported salida node.
Implementacion en Python
import requests, os, json
# This Python script replicates what the n8n workflow does,
# useful for testing the API call before configuring n8n nodes.
API_KEY = os.environ["SCAVIO_API_KEY"]
# Option 1: Direct search API (simpler)
def search_direct(query: str, platform: str = "google") -> dict:
resp = requests.post(
"https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY, "Content-Type": "application/json"},
json={"query": query, "platform": platform},
timeout=15,
)
resp.raise_for_status()
return resp.json()
# Option 2: MCP endpoint (for MCP-compatible tools)
def search_mcp(query: str) -> dict:
resp = requests.post(
"https://mcp.scavio.dev/mcp",
headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"},
json={
"jsonrpc": "2.0", "id": 1,
"method": "tools/call",
"params": {"name": "search", "arguments": {"query": query, "country_code": "us"}},
},
timeout=15,
)
return resp.json().get("result", {})
# n8n HTTP Request node configuration (for reference):
# Method: POST
# URL: https://api.scavio.dev/api/v1/search
# Headers: x-api-key = {{$env.SCAVIO_API_KEY}}
# Body (JSON): {"query": "{{$json.search_term}}", "platform": "google"}
queries = ["best project management tools 2026", "remote work software trends"]
for q in queries:
data = search_direct(q)
results = data.get("organic", [])[:5]
print(f"Query: {q}")
for r in results:
print(f" {r.get('title', '')} - {r.get('url', '')}")Implementacion en JavaScript
const API_KEY = process.env.SCAVIO_API_KEY;
// Option 1: Direct search API
async function searchDirect(query, platform='google') {
const r = await fetch('https://api.scavio.dev/api/v1/search', {
method:'POST',
headers:{'x-api-key':API_KEY, 'Content-Type':'application/json'},
body:JSON.stringify({query, platform}),
});
return r.json();
}
// Option 2: MCP endpoint
async function searchMcp(query) {
const r = await fetch('https://mcp.scavio.dev/mcp', {
method:'POST',
headers:{'Authorization':'Bearer '+API_KEY, 'Content-Type':'application/json'},
body:JSON.stringify({jsonrpc:'2.0', id:1, method:'tools/call', params:{name:'search', arguments:{query, country_code:'us'}}}),
});
return (await r.json()).result || {};
}
// n8n Function node example: transform Scavio results for Google Sheets
function transformForSheets(results) {
return results.map((r,i) => ({position:i+1, title:r.title||'', url:r.url||'', snippet:r.snippet||''}));
}
const queries = ['best project management tools 2026', 'remote work software trends'];
for (const q of queries) {
const data = await searchDirect(q);
const rows = transformForSheets((data.organic || []).slice(0,5));
console.log('Query: '+q);
rows.forEach(r => console.log(' '+r.position+'. '+r.title+' - '+r.url));
}Plataformas utilizadas
Búsqueda web con grafo de conocimiento, PAA y resúmenes de IA