TonyDua/dsh-web-search-exa
Zero-config Exa web search provider for DeepSeek Harness (dsh): keyless anonymou
A zero-config Exa web search provider for DeepSeek Harness. No API key required — searches route through Exa's documented anonymous MCP path (mcp.exa.ai/mcp, rate-limited) out of the box. Set EXA_API_KEY to upgrade to the keyed REST API automatically. Registers into the ctx.web seam as a drop-in provider, so web_search and web_fetch work without any other changes. Difference from the official package: adds the keyless anonymous MCP fallback the official one lacks.
Install
dsh plugin --profile web add @tonydua/dsh-web-search-exanpm package @tonydua/dsh-web-search-exa 0.1.2 (registry-verified 2026-08-24). Zero-config by default — no API key required. If you have an Exa API key, set the EXA_API_KEY environment variable and the plugin automatically switches to the keyed REST path (higher rate limits). Can coexist with the official @deepseek-ai/dsh-web-search-exa in one profile (different providerId, no conflicts).
Compatibility
DeepSeek Harness web profile. Node.js >=18. Registers into the dsh ctx.web seam; existing web_search / web_fetch tools and prompt sections work unchanged. Can coexist with the official @deepseek-ai/dsh-web-search-exa.
Details
- Repo: TonyDua/dsh-web-search-exa
- Category: Other
- Stars: 6
- Version: npm @tonydua/dsh-web-search-exa 0.1.2 (registry-verified 2026-08-24)
- Last push: 2026-09-09
- First seen: 2026-08-14
Recent updates
0.1.2: zero-config anonymous MCP fallback (mcp.exa.ai/mcp); keyed REST path auto-enabled when EXA_API_KEY set; configurable providerId (default: exa) to coexist with the official package; MIT, ESM, bundled types.
FAQ
- Do I need an Exa API key to use this?
- No — the anonymous MCP path (mcp.exa.ai/mcp) works without any credentials. You get Exa's documented public rate limits. Set EXA_API_KEY for higher limits — the plugin switches to the REST API automatically when the key is present.
- Can I use this alongside the official @deepseek-ai/dsh-web-search-exa?
- Yes — configure a different providerId (e.g. exa-anon) for this package in the Harness patch. The two providers coexist without collisions or silent overrides.
- Does this change how web_search works in the model's eyes?
- No — it registers as a WebSearchProvider for the ctx.web seam. The model-facing web_search / web_fetch tools, prompt sections, and result cards all work exactly as before, with Exa as the search backend.
Alternatives
omdsh-dev-dsh-web-review · yangzhe1003/dsh-web-search-firecrawl · Edge-Echo/dsh-mcp-bridge