OpenClaw agents need a reliable search backend to ground their responses in current web data. Many OpenClaw deployments use Brave Search or Tavily, but these can be limited in platform coverage or require separate configurations for different search types. Scavio provides a single MCP endpoint that covers Google, Reddit, YouTube, Amazon, and Walmart, simplifying your agent's search setup. This tutorial shows how to configure Scavio as the search tool for your OpenClaw agent using either MCP or direct API integration.
Prerequisites
- OpenClaw agent installed and running
- A Scavio API key from scavio.dev
- Basic familiarity with MCP server configuration
Walkthrough
Step 1: Add Scavio MCP to OpenClaw config
Configure the Scavio MCP server in your OpenClaw agent's MCP settings.
# Add to your OpenClaw MCP configuration:
# {
# "mcpServers": {
# "scavio": {
# "url": "https://mcp.scavio.dev/mcp",
# "headers": {
# "x-api-key": "your_scavio_api_key"
# }
# }
# }
# }Step 2: Verify the MCP connection
Test that the OpenClaw agent can reach the Scavio MCP server and list available tools.
# After adding the MCP config, restart your OpenClaw agent
# The agent should discover these Scavio tools:
# - search: Query Google, Reddit, YouTube, Amazon, Walmart
# - extract: Extract content from URLs
# Test with a simple query in your agent:
# "Search for the latest Python web frameworks"Step 3: Test direct API as fallback
Verify the Scavio API works directly in case you need a non-MCP integration.
import os, requests
API_KEY = os.environ["SCAVIO_API_KEY"]
resp = requests.post("https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": "google", "query": "OpenClaw agent deployment guide"})
results = resp.json().get("organic_results", [])[:3]
for r in results:
print(f"{r['title']}: {r['link']}")Step 4: Configure multi-platform search
Set up the agent to use different platforms based on the query type.
import os, requests
API_KEY = os.environ["SCAVIO_API_KEY"]
def agent_search(query, platform="google"):
resp = requests.post("https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": platform, "query": query})
return resp.json().get("organic_results", [])[:5]
# Google for general queries
print(agent_search("best CRM tools"))
# Reddit for opinions
print(agent_search("best CRM tools", "reddit"))Python Example
import os, requests
API_KEY = os.environ["SCAVIO_API_KEY"]
def search(query, platform="google"):
resp = requests.post("https://api.scavio.dev/api/v1/search",
headers={"x-api-key": API_KEY},
json={"platform": platform, "query": query})
return resp.json().get("organic_results", [])[:5]
for r in search("OpenClaw agent setup"):
print(r["title"])JavaScript Example
const H = {"x-api-key": process.env.SCAVIO_API_KEY, "Content-Type": "application/json"};
async function search(query, platform = "google") {
const r = await fetch("https://api.scavio.dev/api/v1/search", {
method: "POST", headers: H,
body: JSON.stringify({platform, query})
});
return (await r.json()).organic_results || [];
}
(await search("OpenClaw agent setup")).forEach(r => console.log(r.title));Expected Output
An OpenClaw agent configured with Scavio as its search backend, capable of querying multiple platforms through a single MCP endpoint.