Un usuario de r/LocalLLM quería un LLM local por motivos de privacidad, pero no pudo obtener buenos resultados de búsqueda; ni siquiera Tavily arrojó resultados. Este tutorial configura Scavio MCP con Ollama para una base de búsqueda confiable.
Requisitos previos
- Ollama instalada
- Clave API de Scavio
- Tiempo de ejecución del agente (código abierto, código Claude o personalizado)
Guia paso a paso
Paso 1: Instale y ejecute Ollama con un modelo capaz
Extraiga un modelo que admita la llamada de herramientas.
ollama pull qwen3.6:27b
# Or: ollama pull llama3.3:latest
# Model must support function/tool calling for agentic searchPaso 2: Configurar Scavio MCP
Agregue Scavio como servidor MCP.
# For opencode/Claude Code:
claude mcp add scavio https://mcp.scavio.dev/mcp --header 'x-api-key: YOUR_SCAVIO_KEY'
# For custom setups, configure in mcp.json:
# { "mcpServers": { "scavio": { "url": "https://mcp.scavio.dev/mcp", "headers": { "x-api-key": "KEY" } } } }Paso 3: Configurar el bucle del agente
El modelo decide cuándo buscar o responder a partir del conocimiento.
import ollama, requests, os
H = {'x-api-key': os.environ['SCAVIO_API_KEY']}
def search(query):
return requests.post('https://api.scavio.dev/api/v1/search', headers=H,
json={'platform': 'google', 'query': query}).json()
def agent(question):
response = ollama.chat(model='qwen3.6:27b', messages=[
{'role': 'system', 'content': 'Search for factual questions. Answer reasoning questions directly.'},
{'role': 'user', 'content': question}])
# Handle tool calls if model requests search
return responsePaso 4: Prueba con consultas fácticas versus de razonamiento
Verifique que la conexión a tierra de búsqueda funcione correctamente.
# Factual (should search): 'What is the current price of Helium 10?'
# Reasoning (should not search): 'Explain gradient descent in simple terms'
# Mixed: 'Compare current LLM pricing across providers'Ejemplo en Python
# Privacy model: your query goes to Scavio (zero data retention)
# but NOT to OpenAI/Anthropic. The LLM runs locally.
# Search API is the only external call.Ejemplo en JavaScript
// Same pattern with Ollama JS client.Salida esperada
Local Ollama model grounded with live search. Factual queries get accurate answers; reasoning queries use local knowledge. Privacy preserved.