So I built something simple - a proxy that takes Google search URLs and returns the results as clean markdown instead of HTML. You literally just change "google.com" to "googllm.com" in any search URL.
```bash
# Returns 500KB of HTML:
curl "https://google.com/search?q=AI+news"
# Returns clean markdown:
curl "https://googllm.com/search/AI+news"
```
*What it does:*
- Serves normal HTML to browsers (so humans can use it normally)
- Returns markdown to everything else (curl, fetch, LLM agents)
- Supports all Google search types: web, images, news, scholar, shopping, etc.
- No auth needed for testing (10 requests/hour free)
*Technical approach:*
- Content negotiation based on Accept headers
- Caches results to avoid hammering Google
- Simple pricing: 0.5¢ per search after free tier
I built this over a long weekend because I was tired of writing HTML parsers for every project. The whole thing is designed around a single principle: make Google search results consumable by LLMs without any complexity.
*Questions for HN:*
- Is this approach too simplistic? Should search APIs be more complex?
- How do you currently handle search in your LLM applications?
- Any concerns about the proxy approach vs. building from scratch?
The llms.txt documentation is intentionally comprehensive (2500 tokens) so any LLM can understand and use it immediately.
Live demo: https://googllm.com
API docs: https://googllm.com/llms.txt
Would love feedback on the approach and any edge cases I might have missed.