dsh-web-search-free
dsh-web-search-free
Chinesisch | Englisch — DSH-Plugin (
dsh-plugin) · Kostenloser Websuch-Provider + Einstellungsschalter + MCP-Server (kompatibel mit Claude Code / Codex)
Verwandelt die „DeepSeek offizielle nutzungsbasierte Suche" mit einem Klick in die kostenlose Suche wie bei OpenCode (anonym, ohne Schlüssel), und derselbe kostenlose Such-Backend dient direkt als MCP-Server für Claude Code, Codex und jeden anderen MCP-Client.
🆓 Kostenloses Backend: Parallel (Standard) / Exa (Ersatz) – beides sind dieselben kostenlosen MCP-Endpunkte wie das integrierte
websearch-Tool von OpenCode, anonym nutzbar, ohne API-Schlüssel, ohne Guthabenabzug.🔄 DSH-Einstellungsschalter: Offiziell ↔ Kostenlos mit einem Klick umschalten, Profile-Patches werden automatisch gepflegt.
🔌 MCP-Server: Null Abhängigkeiten, duale Übertragung (stdio + HTTP/SSE mit zwei Ports),
claude mcp add/codex mcp addsofort einsatzbereit.
Hintergrund: Warum standardmäßig der offizielle DeepSeek-Schlüssel verwendet wird
Das web_search-Tool von DSH nutzt die ctx.web-Fähigkeitsnaht (Seam). Der standardmäßig montierte Provider ist @deepseek-ai/dsh-web-search-deepseek (id = deepseek-official, automatisch über die dsh-base-Abhängigkeit eingebunden): Jede Suchanfrage ruft das native serverseitige Tool web_search_20250305 der offiziellen DeepSeek-Anthropic-kompatiblen API (https://api.deepseek.com/anthropic/v1/messages) auf, verwendet DEEPSEEK_API_KEY und wird nach Token abgerechnet.
Related MCP server: Search MCP Server
Funktionen
Kostenloses Backend (innerhalb von DSH)
Registriert zwei kostenlose Such-Provider bei ctx.web, die Modellseite ruft das web_search-Tool unverändert auf:
Provider-ID | Backend | Endpunkt | Beschreibung |
| Parallel Web Search |
| Anonym, ohne Schlüssel |
| Exa |
| Anonym, ohne Schlüssel; |
Einstellungsschalter (DSH-Einstellungen → Plugin-Einstellungen → Konfigurierbar → Kostenlose Websuche)
enabled-Schalter (Standard aus = offizielle Suche): Ein → kostenlos; Aus → offiziell.
Auswahl des kostenlosen Backends: Parallel (Standard) / Exa (Ersatz), Einzelauswahl.
Änderungen pflegen automatisch den Benutzer-Patch
~/.dsh/profiles/web/cordis.patch.ymlin derweb-Zeileconfig.searchProvider(Ein → schreibt die gewählte Provider-ID; Aus → löscht den Überschreibungsblock).Kann nicht in
~/.dsh/.envgeschrieben werden: dsh-app-boot lehnt jedeDSH_*-Variable in.envab.Nach Änderung DSH neu starten, damit es wirksam wird (
WebRuntimeliest dieweb-Zeilenkonfiguration beim Start).
MCP-Server (Claude Code / Codex / beliebiger MCP-Client)
Ein eigenständiger, abhängigkeitsfreier MCP-Server (lib/mcp-server.js, unabhängig von DSH), der das web_search-Tool bereitstellt (Parameter: query erforderlich, provider optional parallel/exa, numResults optional).
Unterstützt duale Übertragung: stdio (Standard) und HTTP/SSE (lauscht auf Port, kompatibel mit Streamable HTTP POST / und altem GET /sse + POST /messages).
Übertragung 1: stdio (Standard, kein Port erforderlich)
# 本地路径方式(clone 后)
claude mcp add dsh-web-search -- node /绝对路径/dsh-web-search-free/lib/mcp-server.js
codex mcp add dsh-web-search -- node /绝对路径/dsh-web-search-free/lib/mcp-server.js
# 或 npm 全局安装后(npx,需先发布到 npm registry)
claude mcp add dsh-web-search -- npx -y @dsh-external/dsh-web-search-free
codex mcp add dsh-web-search -- npx -y @dsh-external/dsh-web-search-freeÜbertragung 2: HTTP/SSE (lauscht auf Port, Zwei-Port-Modus)
# 启动 MCP server(默认 http://127.0.0.1:3100;可用 --host/--port 调整)
node /绝对路径/dsh-web-search-free/lib/mcp-server.js --http --port 3100Claude Code (Streamable HTTP):
claude mcp add --transport http dsh-web-search http://127.0.0.1:3100Codex (OpenAI Codex CLI):
codex mcp add --transport http dsh-web-search http://127.0.0.1:3100Alte SSE-Clients (URL zeigt auf SSE-Kanal):
# 客户端配置 http://127.0.0.1:3100/sse(GET /sse 建立通道,POST /messages 发请求)Verifizierung: Browser öffnet
http://127.0.0.1:3100/und gibt{"name":"dsh-web-search-free","version":"0.3.0","transport":"http/sse","port":3100}zurück.
Andere MCP-Clients
Jeder MCP-Client, der stdio oder HTTP/SSE-Übertragung unterstützt, kann angebunden werden (Befehle/URLs wie oben).
Optionale Umgebungsvariable: EXA_API_KEY (erhöht das anonyme Exa-Limit).
Installation (DSH-Plugin selbst)
⚠️ Warum sehen andere nach der Installation keine Karte in den Einstellungen? Für die Anzeige der Einstellungskarte müssen gleichzeitig erfüllt sein:
Das Paket muss in
dsh.profile.bundlesdeklariert sein (nur das Paket in node_modules zu legen reicht nicht);Nach der Installation DSH neu starten (Host-Assembly und Client-Graph werden beim Start aufgelöst);
Vor dem Öffnen der Einstellungen die Browserseite aktualisieren;
Das Profil ist
web(tui/headlesshaben keine Browser-UI);Mit lokalem Pfad/
link:/tgz installieren (npx @dsh-external/dsh-web-search-freemuss zuerst auf npm registry veröffentlicht werden, vorher nicht verfügbar). Nach der Installation kanndev_plugin_statusclient ✓bestätigen, oder direkt Einstellungen → Plugin-Einstellungen → Konfigurierbar ansehen.
Oberflächeneffekt (Einstellungen → Plugin-Einstellungen → Konfigurierbar → Kostenlose Websuche):

Methode 1: Lokale Hot-Assembly (dsh-super-injector, ohne Neustart)
dev_install_package # dir = 插件包目录(含 package.json 与 lib/)Methode 2: Profil-Deklaration (wirksam nach Neustart)
In ~/.dsh/profiles/web/package.json deklarieren:
{
"dsh": { "profile": { "bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
// ...其他 bundle...
"@dsh-external/dsh-web-search-free"
]}},
"dependencies": {
"@dsh-external/dsh-web-search-free": "link:/绝对路径/dsh-web-search-free"
}
}Methode 3: npm-Paket (tgz)
npm run build && npm pack
# 把产物 tgz 加入 profile 依赖后重装(pnpm install),重启生效Verifizierung
npm run verify # 补丁联动 + Parallel/Exa 真实搜索 + 选择矩阵 + MCP 冒烟Zurück zur offiziellen Suche
In den Einstellungen den enabled-Schalter ausschalten (der Überschreibungsblock wird sofort gelöscht), DSH neu starten.
(Oder manuell den Block zwischen # >>> web-search-free und # <<< web-search-free in ~/.dsh/profiles/web/cordis.patch.yml löschen.)
Berechtigungshinweis (sicher und transparent)
DSH-Plugin: Nach Aktivierung der kostenlosen Suche werden
web_search-Anfragen nur ansearch.parallel.ai/mcp.exa.aigesendet; es ändert~/.dsh/profiles/web/cordis.patch.yml(mit Begrenzungsmarkierungen verseheneweb-Zeilenüberschreibung, Format siehe oben), berührt keine anderen Konfigurationen. Kein Schlüssel, keine Datenerfassung, kein Lauschen.MCP-Server: Ruft nur die oben genannten kostenlosen Endpunkte auf, liest keine deiner Dateien/Umgebungen (außer optional
EXA_API_KEY). Im stdio-Modus lauscht er auf keinem Port; im HTTP/SSE-Modus stellt er nur auf dem von dir angegebenen--host:--port(Standard127.0.0.1:3100) einen MCP-Endpunkt bereit, standardmäßig nur an die lokale Loopback-Adresse gebunden.
Entwicklung
bash scripts/build.sh # tsc 编译 host + core + mcp-server,复制 client 到 lib/
npm run verify # 端到端验证Struktur:
src/core.ts # 零依赖搜索核心:Parallel + Exa(host 与 MCP 共用)
src/index.ts # host:双 provider 注册 + settings 开关 + profile 补丁联动
src/mcp-server.ts # MCP server:stdio + HTTP/SSE 双传输(bin:dsh-web-search-mcp)
src/client/client.js # client:设置面板「免费网页搜索」开关卡片(含后端选择)
scripts/build.sh # 构建(自动探测 DSH_CHECKOUT)
scripts/verify.mjs # 端到端验证脚本
cordis.patch.yml # bundle 装配层(含 web 行 searchProvider 解除固定)Lizenz
MIT © sheep-programmer
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for Firecrawl — web search, scraping, and biomedical/arXiv paper search.
Free web search for AI agents. No API key required. Hosted MCP in active development.
Docs: https://docs.keenable.ai/mcp-server Keenable is a free, remote MCP server that gives agents access to the web index. Search the web with ranked results and date/site filters, then fetch any indexed page as clean markdown. Works out of the box with no account or API key.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceMCP server for internet search via direct Google and DuckDuckGo HTML scraping with AI-powered result normalization and optional summarization, requiring no API keys for search.MIT
- AlicenseNot gradedqualityDmaintenanceFree web search MCP server using SearXNG, supporting web search, news search, and search summaries.MIT
- AlicenseNot gradedqualityAmaintenanceMulti-level web search MCP server that wraps Claude, Gemini, Perplexity, and Tavily behind a unified interface, enabling multi-depth searches with session management and provider selection.MIT
- FlicenseAqualityDmaintenanceAn MCP server that brings Parallel web search and URL extraction to Codex and other Model Context Protocol clients.235 npm-