Search with Valyu
Valyu searches the web and specialist sources. Pin a query to Valyu with one field, and its results come back in the same shape as every other provider’s.
Results from Valyu
-
1
49 Must‑Read Engineering Blogs - by Bonaventure Ogeto bonaventureogeto.substack.com
- 2
-
3
Ask HN: Favorite distributed systems engineering blog posts? | Hacker News news.ycombinator.com
- 4
-
5
Medium javascript.plainenglish.io
Recorded from live searches on 9 October 2026.
Pin a query to Valyu
- Over HTTP, send
"requested_provider": "valyu"with the query. - In an agent connected over MCP, ask it to search with Valyu.
Results come back in the same shape for every provider, as the docs describe. Leave the field out, and Grounder routes each query to the provider most likely to answer it well.
search.shShell
curl https://api.grounder.net/v1/search \
-H "Authorization: Bearer $GROUNDER_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "engineering blogs about distributed systems",
"top_k": 5,
"requested_provider": "valyu"
}'
import os
import httpx
KEY = os.environ["GROUNDER_KEY"]
r = httpx.post(
"https://api.grounder.net/v1/search",
headers={"Authorization": f"Bearer {KEY}"},
json={
"query": "engineering blogs about distributed systems",
"top_k": 5,
"requested_provider": "valyu",
},
timeout=30,
).json()
for hit in r["results"]:
print(hit["rank"], hit["title"], hit["url"])
const res = await fetch("https://api.grounder.net/v1/search", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.GROUNDER_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
query: "engineering blogs about distributed systems",
top_k: 5,
requested_provider: "valyu",
}),
})
const { results } = await res.json()
claude mcp add --transport http grounder \
https://api.grounder.net/mcp
# then /mcp, grounder, Authenticate
Filters Valyu applies
Set them under filters. A filter a provider can’t apply returns 400 unsupported_filter.
| Filter | Keeps |
|---|---|
domains | Only these sites, or with "mode": "exclude", none of them. |
recency | The last so many days, or a range of dates. |
request.jsonJSON
{
"query": "engineering blogs about distributed systems",
"top_k": 5,
"requested_provider": "valyu",
"filters": {
"domains": { "values": ["bonaventureogeto.substack.com"] }
}
}