Bring real-time internet access to your Claude, ChatGPT, or local LLM — for free.

posted 2 min read

I Built an Open-Source Web Search Plugin for AI Agents — No API Key Needed

Bring real-time internet access to your Claude, ChatGPT, or local LLM — for free.


As someone who builds AI assistants and tools, I’ve always hit the same wall:
Language models are smart — but blind to the current internet.

Sure, Claude has a browsing plugin, and GPT-4 can use tools… but:

  • They're paid features (Bing/GCS API isn’t cheap),
  • You often can’t customize the results or search logic,
  • And some platforms don’t allow plugin access at all (especially for local or self-hosted models).

So I built an open-source alternative — Open-WebSearch MCP — a lightweight, multi-engine search tool that speaks the MCP protocol (used by Claude, LangChain, etc).


What It Does

Multi-engine search with no API keys
Currently supports:
Bing, Baidu, CSDN, DuckDuckGo, Exa, Brave
(And more like Reddit, GitHub, Google are coming.)

Structured output for RAG
Each result includes title, url, snippet, engine, and source. Easy to parse for chat agents and document systems.

Article content extraction
Want to fetch full blog posts from CSDN or Linux.do for summarization or RAG pipelines? Built-in support.

Supports Claude, Cherry Studio, LangChain, and more
Implements both streamableHttp and SSE MCP transports.

Free & self-hosted
No rate-limited APIs. No account needed. Fully local control over what and how you search.


How to Use

Install locally:

git clone https://github.com/Aas-ee/open-webSearch
cd open-webSearch
npm install
npm run build
node build/index.js

Or use Docker:

docker run -d --name web-search \
  -p 3000:3000 \
  -e ENABLE_CORS=true \
  ghcr.io/aas-ee/open-web-search:latest

Example: Claude Plugin Config (Cherry Studio)

{
  "mcpServers": {
    "web-search": {
      "name": "Web Search MCP",
      "type": "streamableHttp",
      "baseUrl": "http://localhost:3000/mcp"
    },
    "web-search-sse": {
      "name": "Web Search SSE",
      "type": "sse",
      "url": "http://localhost:3000/sse"
    }
  }
}

Tools It Provides

search → perform multi-engine search

use_mcp_tool({
  server_name: "web-search",
  tool_name: "search",
  arguments: {
    query: "how to build a Claude plugin",
    engines: ["bing", "csdn"],
    limit: 5
  }
})

fetchCsdnArticle → fetch full blog text
fetchLinuxDoArticle → (experimental) get Linux.do article content


⚙️ Dev Features

  • Supports HTTP proxies (USE_PROXY, PROXY_URL env vars)
  • Configurable default engine
  • Auto builds Docker images via GitHub Actions
  • Easy to fork + customize for your own toolchains

⭐ Try It, Fork It, Improve It

GitHub: https://github.com/Aas-ee/open-webSearch
Docker: ghcr.io/aas-ee/open-web-search:latest

If you’re building an LLM agent, this gives your assistant eyes on the internet. No API keys. No paywalls.

Let me know what engines or features you’d like next!


Happy hacking — and let your LLMs browse freely!

0 votes

More Posts

Architecting a Local-First Hybrid RAG for Finance

Pocket Portfolioverified - Feb 25

Merancang Backend Bisnis ISP: API Pelanggan, Paket Internet, Invoice, dan Tiket Support

Masbadar - Mar 13

Your Tech Stack Isn’t Your Ceiling. Your Story Is

Karol Modelskiverified - Apr 9

5 Web Dev Pitfalls That Are Silently Killing Your Projects (With Real Fixes)

Dharanidharan - Mar 3

Optimizing the Clinical Interface: Data Management for Efficient Medical Outcomes

Huifer - Jan 26
chevron_left

Related Jobs

View all jobs →

Commenters (This Week)

1 comment

Contribute meaningful comments to climb the leaderboard and earn badges!