MCP WebResearch
Provides web search capabilities via SearxNG meta search engine, enabling AI to perform web searches and retrieve JSON-formatted results.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP WebResearch search for top Python tutorials in 2024"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
π§ MCP WebResearch
An AI-ready MCP Server that performs intelligent web searches using SearxNG and Playwright β all containerized for one-step setup. This project provides both manual and Docker installation options for developers and Cline users.
π Features
π Integrated SearxNG meta search engine
π§ Web automation via Playwright
π³ One-command Docker setup (runs MCP + SearxNG together)
π§© Supports JSON search results for easy AI processing
Related MCP server: searxng-mcp
Newly added features
Now you can save the screenshots in your permanent memory. Just tell your AI to save the screen shot permanently.
You can ask the AI to list the screenshots. This will give you the path at which the screenshots are saved.
More features are incoming...
π§° Prerequisites
Before starting, ensure you have:
Docker installed
Docker Compose installed
(Optional) Node.js β₯ 18 if you want to run it manually
β‘ Quick Setup (Recommended via Docker)
This is the easiest way to get everything running.
Clone this repository
git clone https://github.com/damameet14/mcp-webresearch.git cd mcp-webresearchBuild and start the container
docker-compose up -dThatβs it! π
This automatically installs all dependencies.
Starts SearxNG on port 8080.
Waits until itβs ready.
Then launches your MCP server.
π§ Cline MCP Configuration
Once the container is running, edit your mcp_settings.json:
"mcpServers": {
"webresearch": {
"command": "docker",
"args": ["exec", "-i", "mcp-webresearch", "node", "/app/index.js"]
}
}This connects Cline directly to your running container.
π§± Manual Setup (Without Docker)
If you donβt want to use Docker:
# Clone this repo
git clone https://github.com/damameet14/mcp-webresearch.git
cd mcp-webresearch
# Install MCP dependencies
npm install
# Clone and setup SearxNG
git clone https://github.com/searxng/searxng.git
cd searxng
make install
# Enable JSON output (important)
# Add "-json" to line 78 of searx/settings.yml manually
# Start SearxNG
make run # Note that you will have to start the searxng instance everytime you want to use the mcp server.
I am working on making "no docker" setup too a one command setup. But for now, I recommend going with Docker or go through this tiring process.
π§ Cline MCP Configuration (for manual setup)
Once the container is running, edit your mcp_settings.json:
"mcpServers": {
"webresearch": {
"command": "node",
"args": ["<path_to>/mcp-webresearch/index.js"]
}
}π§ How It Works
Inside the container:
SearxNG launches in the background.
A small startup script (
start.sh) waits until SearxNG is responsive.Then your MCP server (
index.js) starts.
Both processes share the same network and communicate via localhost:8080.
π§© Project Structure
mcp-webresearch/
βββ index.js
βββ package.json
βββ Dockerfile
βββ docker-compose.yml
βββ start.sh
βββ etc...β οΈ Notes
The default SearxNG config is patched automatically to support JSON output (
-jsonformat).The container is lightweight and will stay idle when unused.
You can stop it anytime to free memory.
π‘ Future Plans
Add Windows-compatible setup
Publish image to Docker Hub and MCP Registry for AI code editors
Add more tools
Compatibility
This is intended for Linux and MacOS.
But if you want to use it on windows, you can do so with wsl (You can download it from Microsoft Store)
π§βπ» Author
Meet Dama (@damameet14) Creator of the MCP WebResearch Server
Available Tools
6 toolslist_permanent_screenshotsA
List all permanently saved screenshots
Inputs: no named parameters.
read_permanent_screenshotB
Read a specific permanent screenshot
Inputs: filename (required).
save_screenshot_permanentlyB
Save a screenshot from current session permanently
Inputs: index (required).
search_webA
Search the web using Searxng
Inputs: query (required).
take_screenshotC
Take a screenshot of the current page
Inputs: savePermanently.
visit_pageC
Visit a webpage and extract its content
Inputs: url (required), cookies, takeScreenshot, savePermanently.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 6 tools
Each tool has a distinct purpose: searching, visiting pages, taking screenshots, saving screenshots, listing saved screenshots, and reading them. There is no overlap or ambiguity between the tools.
All tool names follow a consistent snake_case verb_noun pattern, such as search_web, visit_page, and take_screenshot. The naming is uniform and predictable across the set.
With 6 tools, the server is well-scoped for web research. Each tool serves a clear function without redundancy or excessive bloat, and the count is appropriate for the domain.
The tool set covers the core workflow of searching, visiting, capturing, and persisting web content. Minor gaps exist, such as the absence of a delete operation for permanent screenshots or page interaction beyond simple visiting, but these are not critical for the stated purpose.
Maintenance
Related MCP Connectors
Web search API and MCP server for developers building AI agents.
One MCP server for all web data. Scrape, search, crawl, and AI research in one install.
Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.
Related MCP Servers
- AlicenseAqualityDmaintenanceAn MCP server implementation that integrates the SearXNG API for powerful web search capabilities and uses @missionsquad/puppeteer-scraper to read and process live web content.213 npm1MIT
- AlicenseNot gradedqualityDmaintenanceAn MCP server that wraps a local SearXNG instance to provide private, customizable web search capabilities. It enables AI assistants to perform queries with support for specific parameters like results limits, language, and time ranges.133 npmMIT
- AlicenseNot gradedqualityCmaintenanceMCP server for web search and content extraction using DuckDuckGo or SearXNG, with Playwright-based fetching and LLM-powered data extraction.139MIT
- AlicenseAqualityDmaintenanceA self-hosted MCP server that gives AI agents deep internet research capabilities β no API keys required, powered by SearxNG, Playwright, and Docker.490 npmISC