Key Takeaways
- web-search-mcp (github.com/mrkrsl/web-search-mcp) is a free, open-source, self-hosted MCP server that adds web search and page-content tools to MCP-compatible AI clients
- Built by mrkrsl in TypeScript; MIT licensed, confirmed via the repository's LICENSE file
- No search-provider API key required β uses Playwright browser automation with a fast HTTP-request fallback, prioritizing Bing, then Brave, then DuckDuckGo for reliability
- This is a self-hosted tool, not a private/offline one: it fetches live results from external search engines over the internet every time it runs
- Exposes three MCP tools to the connected model: full-web-search (search plus extracted page content), get-web-search-summaries (search results without full content), and get-single-web-page-content (content extraction from one given URL)
- Documented setup steps for LM Studio and LibreChat, including a Docker path for LibreChat; usable with any client that speaks MCP
- This directory entry lists it as a companion tool for the Local LLM Software Directory under agent-frameworks / tool-use servers
π In One Sentence
web-search-mcp is a free, open-source (MIT), self-hosted Model Context Protocol server built in TypeScript that gives local LLMs in clients like LM Studio and LibreChat working web-search and page-fetch tools, using live Bing/Brave/DuckDuckGo requests instead of a paid search API.
π¬ In Plain Terms
web-search-mcp is a small program you run on your own computer that plugs into an MCP-compatible AI app (like LM Studio) and gives the AI model the ability to actually search the web and read pages, the way a human would, instead of only knowing what it learned during training. It is self-hosted, but it is not private browsing β the search requests it makes leave your machine and go to real search engines on the internet, the same as opening a browser.
πNote: This review is based on the project's own GitHub repository, its README, and its documentation for LM Studio/LibreChat setup. It does not claim PromptQuorum ran its own hands-on benchmark of search latency or accuracy, and it does not describe web-search-mcp as private or offline β its core function is fetching live results from public search engines over the internet.
What Is web-search-mcp?
web-search-mcp is a free, open-source, self-hosted Model Context Protocol (MCP) server that gives an AI model the ability to run real web searches and fetch page content, called on demand by the model itself. It is built by mrkrsl and distributed on GitHub. The name is shared by several unrelated MCP projects; this review covers specifically github.com/mrkrsl/web-search-mcp, whose documentation explicitly targets local-LLM setups like LM Studio.
- Product type: a self-hosted MCP server process, not a standalone desktop app or a hosted API β you run it yourself alongside an MCP-compatible client
- Creator: GitHub user mrkrsl
- License: MIT, confirmed via the repository's LICENSE file
- Language/runtime: TypeScript, requiring Node.js 18.0.0+ and npm 8.0.0+ per the project's stated requirements
- Funding: no funding round, investor, or commercial backing was found for this review β treat it as an independently maintained, community open-source project
- Scale: roughly 1,100+ GitHub stars as of this review (GitHub's UI shows the rounded "1.1k" badge rather than an exact count)
What Does web-search-mcp Actually Do?
web-search-mcp runs as a local MCP server process that an MCP-compatible AI client connects to, and it exposes three tools the connected model can call: a full web search with extracted page content, a lighter search-summaries-only mode, and single-page content extraction from a given URL.
- full-web-search: runs a search query and returns extracted content from the resulting pages, giving the model enough text to answer questions grounded in current web content
- get-web-search-summaries: runs a search but returns only result summaries/snippets, not full page content β faster and lighter for cases where the model just needs an overview
- get-single-web-page-content: fetches and extracts readable content from one specific URL the model already has, without running a new search
- Search backend strategy: per the project's own documentation, it "prioritises Bing > Brave > DuckDuckGo for optimal reliability and performance," falling back down the list if one backend fails
- "Smart Request Strategy": switches between Playwright-driven browser automation (for pages that need JavaScript rendering) and faster, lighter axios-based HTTP requests depending on the target site, per the project's README
- No search-provider API key needed β this is the main practical difference from API-key-gated search tools (e.g., Bing Search API, Brave Search API, SerpAPI), which require a paid account and key to use programmatically
- Configurable via environment variables covering content-length limits, request timeouts, concurrent-browser limits, and browser engine choice, per the project's documentation
Platform, Pricing, and Licensing
Platform
- What web-search-mcp states:
- A self-hosted Node.js/TypeScript server process, requiring Node.js 18+ and npm 8+. Documented as working on macOS, Windows, and Linux.
Cost
- What web-search-mcp states:
- Free and open source. No search-provider API key or paid tier is required to use it.
Licensing
- What web-search-mcp states:
- MIT license, confirmed via the repository LICENSE file.
Locality
- What web-search-mcp states:
- Hybrid: the server process itself is self-hosted, but each search or page fetch is a live network request to an external search engine or website β this is not an offline or fully local tool.
Install method
- What web-search-mcp states:
- Download or clone the repository, then run
npm install,npx playwright install, andnpm run build, per the project README.
Verify current install steps on github.com/mrkrsl/web-search-mcp before running any command, since setup instructions can change between releases.
Install web-search-mcp
web-search-mcp installs free from source via npm, and its source code is on GitHub.
Source | Link |
|---|---|
| GitHub repository (source code, MIT) | github.com/mrkrsl/web-search-mcp |
| Local LLM Software Directory entry | Local LLM Software Directory |
web-search-mcp requires Node.js 18+, npm 8+, and a one-time npx playwright install step for browser automation β there is no packaged installer for end users, since it is a server component meant to be configured into an MCP client's mcp.json.
web-search-mcp vs. Built-In Browsing
Compared to a chat app's own built-in web-search or browsing feature (where one exists), web-search-mcp trades convenience for control: you self-host it, choose which client connects to it, and are not limited to whatever single provider a closed app has integrated.
Setup
- web-search-mcp:
- Manual: clone, npm install, configure mcp.json
- Built-in app browsing:
- Usually a toggle in settings, no setup
Works with local LLMs
- web-search-mcp:
- Yes β documented for LM Studio, LibreChat, any MCP client
- Built-in app browsing:
- Varies; often tied to one hosted-model provider
Search backend
- web-search-mcp:
- Bing / Brave / DuckDuckGo, self-selected fallback order
- Built-in app browsing:
- Fixed, usually undisclosed provider
API key needed
- web-search-mcp:
- No
- Built-in app browsing:
- No (cost is bundled into the app/plan)
Runs fully offline
- web-search-mcp:
- No β hybrid, live external search each call
- Built-in app browsing:
- No β same constraint
Both approaches call out to the open internet; neither is an offline search tool. The distinction is who hosts the bridge and which client/model it works with.
Who Should Use web-search-mcp?
web-search-mcp fits developers running a local LLM through an MCP-compatible client who want to add real-time web lookups without paying for a search API.
What web-search-mcp Is Not Good For
web-search-mcp is not a good fit if you need fully offline operation, a zero-configuration setup, or search reliability backed by a paid, contracted API.
- Not offline or private in the sense of "never leaves your machine" β every search or page fetch is a live request to an external search engine or website over the internet; only the server process is self-hosted
- Not a zero-setup tool β it requires Node.js, npm, a Playwright browser install, and manual configuration of an MCP client's
mcp.jsonfile - Not backed by a paid search API's uptime or rate-limit guarantees β automating public search-engine pages can be more fragile under heavy or automated use than a contracted, paid search API
- Not a general-purpose plugin β it only works with clients that implement the Model Context Protocol, not arbitrary chat apps or browser extensions
- Not independently benchmarked by PromptQuorum for search latency, result accuracy, or uptime β this review reflects the project's own documentation, not hands-on measurement
Common Mistakes When Evaluating web-search-mcp
Most confusion about web-search-mcp comes from mixing up "self-hosted" with "offline," or assuming it is the only project with this name.
Competitors and Alternatives
Within local AI agent tooling and MCP-connected tool servers, web-search-mcp is most comparable to other self-hosted agent and research tools that add live information retrieval to a local LLM.
Tool | Best known for | Link |
|---|---|---|
| nanobot | Self-hosted personal AI agent with persistent memory and MCP tool support | nanobot Review |
| Local Deep Research | Self-hosted, multi-step AI research assistant that synthesizes web and local sources | Local Deep Research Review |
| Multica | Local AI agent and tool-use platform for connecting models to external tools | Multica Review |
This list reflects tools commonly compared to web-search-mcp within the local AI agents / tool-use segment, not an independent PromptQuorum ranking β verify each tool's current feature set before choosing.
Frequently Asked Questions
What is web-search-mcp?
web-search-mcp (github.com/mrkrsl/web-search-mcp) is a free, open-source (MIT), self-hosted MCP server that gives AI models in MCP-compatible clients real web-search and page-content-fetch tools.
Is web-search-mcp free?
Yes, it is free and open source under the MIT license. There is no paid tier and no search-provider API key required.
Does web-search-mcp work fully offline?
No. The server process is self-hosted, but every search or page fetch it performs is a live request to an external search engine (Bing, Brave, or DuckDuckGo) or website over the internet.
Do I need a search API key to use it?
No. It uses browser automation (Playwright) with an HTTP-request fallback against public search engines rather than a paid search-provider API, so no API key is required.
Which AI clients does web-search-mcp work with?
Any client that implements the Model Context Protocol (MCP). The project documents specific setup steps for LM Studio and LibreChat.
How do I install web-search-mcp?
Download or clone the repository from GitHub, then run npm install, npx playwright install, and npm run build, per the project README. It requires Node.js 18+ and npm 8+.
What search engines does it use?
Per the project's own documentation, it prioritizes Bing, then Brave, then DuckDuckGo, falling back down the list if one backend fails.
What tools does it expose to the connected model?
Three MCP tools: full-web-search (search plus extracted page content), get-web-search-summaries (results without full content), and get-single-web-page-content (content extraction from one URL).
Who created web-search-mcp?
GitHub user mrkrsl created and maintains web-search-mcp.
Are there other projects also named "web-search-mcp"?
Yes. Several unrelated GitHub repositories share the same generic name. This review covers specifically github.com/mrkrsl/web-search-mcp, chosen because its documentation explicitly targets local-LLM setups.