OpenSERP
Search Google, Bing, Yandex, Baidu, DuckDuckGo and Ecosia with original ranks, plus page extraction.
ماذا يمكنك أن تفعل مع OpenSERP؟
searchmega_searchfast_searchany_searchimage_searchmega_imageget_usagelist_engines
التثبيت
أضف هذا إلى إعدادات MCP في عميلك (Claude Desktop: claude_desktop_config.json، وCursor: .cursor/mcp.json، ويستخدم VS Code وغيره الصيغة نفسها «mcpServers»).
@openserp/mcpclaude mcp add openserp -e 'OPENSERP_API_KEY=<your openserp_api_key>' -e 'OPENSERP_BASE_URL=<OPENSERP_BASE_URL>' -- npx -y @openserp/mcp@0.1.10
{
"mcpServers": {
"openserp": {
"command": "npx",
"args": [
"-y",
"@openserp/mcp@0.1.10"
],
"env": {
"OPENSERP_API_KEY": "<your openserp_api_key>",
"OPENSERP_BASE_URL": "<OPENSERP_BASE_URL>"
}
}
}
}
متغيرات البيئة
OPENSERP_API_KEYسري OpenSERP Cloud API key. Leave unset to use a self-hosted OpenSERP server (http://localhost:7000 by default).OPENSERP_BASE_URLOpenSERP API base URL, for a self-hosted server on another host or port.
التوثيق
مأخوذ من ملف README للمشروع على GitHub ويُحدَّث أسبوعيًا. تفتح الروابط على GitHub.
المحتويات
@openserp/mcp
Live search on six engines (Google, Bing, Yandex, Baidu, DuckDuckGo, Ecosia), image search and single/batch page extraction for AI agents. Results keep the source engine and rank. Runs against a self-hosted OpenSERP server or OpenSERP Cloud.
When OPENSERP_API_KEY is not set, the server uses OSS mode at http://localhost:7000 and writes:
[openserp-mcp] No OPENSERP_API_KEY set - using OSS mode at http://localhost:7000.
[openserp-mcp] Get an API key: https://openserp.org/dashboard/keys
[openserp-mcp] Docs: https://openserp.org/docs | Issues: https://github.com/openserpapi/mcp/issues
Set OPENSERP_API_KEY to use OpenSERP Cloud. API keys are available at https://openserp.org/dashboard/keys. Set OPENSERP_BASE_URL to target another compatible OpenSERP API base URL.
Install
npm install -g @openserp/mcp
You can also run it without installing:
npx -y @openserp/mcp --stdio
Tools
searchmega_searchfast_searchany_searchimage_searchmega_imageget_usagelist_enginesextractbatch_extract
extract and batch_extract cut long pages to fit an agent's context: 20,000 characters per page, or 40,000 shared across a batch (at least 2,000 per URL). Cut content ends with a [truncated: ...] line and is flagged (truncated / metadata.truncated). Pass maxChars to read more.
Quick Examples
Ask your MCP client to:
- Search Google for current docs and return the top 5 URLs.
- Compare Google and Bing results for an SEO keyword.
- Extract clean Markdown from a URL before passing it to an LLM.
- Ground an answer in several sources at once with
batch_extract- up to 20 URLs in one round-trip, where a dead link returns an error item instead of failing the batch. - Read a geo-fenced page as a local visitor by passing
region: "DE". - Check remaining Cloud credits with
get_usage.
Cloud search parameters
Cloud requests use Authorization: Bearer with OPENSERP_API_KEY. For paging, use start and keep limit: 10; pass the previous response's pagination.next_start while has_more is true. Google, Bing, and Yandex take multiples of 10; Baidu supports early pages, Ecosia any offset, and DuckDuckGo only the first page. mega_search with mode: "balanced" rejects start > 0; use search, any_search, or fast_search for later pages.
Cloud web search supports date: "20250101..20251231" on Google and Ecosia. Unsupported offsets or date filters return 400 invalid_request without charge; adjust the request before retrying.
list_engines returns Cloud capabilities plus operational status. Omit engines to use defaults. Any starts engines in your order, overlapping slow attempts; Fast prioritizes recent health and latency. Read meta.engine_used for the winner; engines_tried and engines_skipped may be absent.
Tool errors include the public HTTP status, error code, request ID, and retry delay when present. Honor retry_after for 429 and 503; 503 engine_unavailable carries a 60-second delay. The server does not retry automatically.
Claude Desktop
Local OSS mode:
{
"mcpServers": {
"openserp": {
"command": "npx",
"args": ["-y", "@openserp/mcp"]
}
}
}
Cloud mode:
{
"mcpServers": {
"openserp": {
"command": "npx",
"args": ["-y", "@openserp/mcp"],
"env": {
"OPENSERP_API_KEY": "osk_live_..."
}
}
}
}
Cursor
For stdio use, add an MCP server entry:
{
"mcpServers": {
"openserp": {
"command": "npx",
"args": ["-y", "@openserp/mcp"],
"env": {
"OPENSERP_API_KEY": "osk_live_..."
}
}
}
}
For remote-style HTTP use, run:
npx -y @openserp/mcp --http --host 127.0.0.1 --port 3333
Then point a streamable HTTP MCP client to:
http://127.0.0.1:3333/mcp
Clients that still use the older SSE transport can connect to:
http://127.0.0.1:3333/sse
Environment
OPENSERP_API_KEY: Cloud API key from https://openserp.org/dashboard/keys.OPENSERP_BASE_URL: API base URL override.OPENSERP_BACKEND: Optional backend hint,ossorcloud.OPENSERP_TIMEOUT_MS: SDK request timeout in milliseconds.HOST: HTTP host, default127.0.0.1.PORT: HTTP port, default3333.
Resources
الأسئلة الشائعة
ما هو OpenSERP؟
Search Google, Bing, Yandex, Baidu, DuckDuckGo and Ecosia with original ranks, plus page extraction.
كيف أثبّت OpenSERP؟
يعمل على جهازك. في Claude Code: claude mcp add openserp -e 'OPENSERP_API_KEY=<your openserp_api_key>' -e 'OPENSERP_BASE_URL=<OPENSERP_BASE_URL>' -- npx -y @openserp/mcp@0.1.10. وفي العملاء الآخرين، الصق إعداد JSON من هذه الصفحة في إعدادات MCP الخاصة بهم.
هل يحتاج OpenSERP إلى مفتاح API؟
نعم. يتطلب OPENSERP_API_KEY، وتضبطها في إعداداته.
هل OpenSERP مفتوح المصدر؟
نعم. شيفرته متاحة على GitHub بترخيص MIT.
من يصون OpenSERP؟
ينشره openserpapi. يدرجه AI.tn لكنه لا يصونه ولا يوصي به.
من سجل MCP الرسمي. الإدراج ليس توصية: راجع شيفرة الخادم وصلاحياته قبل منحه الوصول إلى بياناتك.