karust/openserp
Self-hosted SERP API for AI, SEO & automation. Browser-rendered Google, Bing, Yandex, Baidu, DuckDuckGo and Ecosia search with page extraction 🎉
What it solves
OpenSERP provides a free, open-source alternative to paid Search Engine Results Page (SERP) APIs. It allows users to programmatically retrieve structured search results from multiple major search engines without requiring API keys or per-search billing.
How it works
It operates as a self-hosted API server or a CLI tool that interfaces with search engines like Google, Yandex, Baidu, Bing, DuckDuckGo, and Ecosia. The tool can return results in various formats (JSON, Markdown, Text, NdJSON) and includes a "Megasearch" feature to query multiple engines simultaneously, merge, and deduplicate the results. It also features a built-in URL extraction system that can fetch and convert target web pages into clean markdown for easier consumption by other applications.
Who it’s for
- AI Developers: Those building LLM-powered agents or RAG systems that need real-time web search capabilities for grounding.
- SEO Professionals: Users needing a backend for tracking search rankings.
- Data Collectors: Anyone needing structured search data from multiple engines without paying for commercial API services.
Highlights
- Multi-Engine Support: Unified JSON schema for Google, Yandex, Baidu, Bing, DuckDuckGo, and Ecosia.
- Megasearch: Parallel querying across several engines with deduplication and clustering.
- Content Extraction: Ability to fetch and embed clean markdown of target pages directly within the search result call.
- Flexible Deployment: Available as a Docker image, Go binary, or a hosted cloud version.
- Agent-Ready: Includes an MCP server for AI agents and official SDKs for Python and JavaScript/TypeScript.