Open Websearch
About
Web search using free multi-engine search (NO API KEYS REQUIRED) — Supports Bing, Baidu, DuckDuckGo, Brave, Exa, and CSDN.
Details
- Transport
- SSE
Explore
- Web search using multi-engine results
- bing
- baidu
- ~~linux.do~~ temporarily unsupported
- csdn
- duckduckgo
- exa
- brave
- HTTP proxy configuration support for accessing restricted resources
- No API keys or authentication required
- Returns structured results with titles, URLs, and descriptions
- Configurable number of results per search
- Customizable default search engine
- Support for fetching individual article content
- csdn
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Open WebsearchCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
search
Search the web using multiple engines (e.g., Baidu, Bing, DuckDuckGo, CSDN, Exa, Brave, Juejin(掘金)) with no API key required
fetchLinuxDoArticle
Fetch full article content from a linux.do post URL
fetchCsdnArticle
Fetch full article content from a csdn post URL
fetchGithubReadme
Fetch README content from a GitHub repository URL
fetchWebContent
Fetch content from a public HTTP(S) URL (supports Markdown files and normal web pages)
fetchJuejinArticle
Fetch full article content from a Juejin(掘金) post URL
``typescript`
{
"query": string, // Search query
"limit": number, // Optional: Number of results to return (default: 10)
"engines": string[] // Optional: Engines to use (bing,baidu,linuxdo,csdn,duckduckgo,exa,brave) default bing
}
`
Usage example:
typescript`
use_mcp_tool({
server_name: "web-search",
tool_name: "search",
arguments: {
query: "search content",
limit: 3, // Optional parameter
engines: ["bing", "csdn", "duckduckgo", "exa", "brave"] // Optional parameter, supports multi-engine combined search
}
})
`
Response example:
json`
[
{
"title": "Example Search Result",
"url": "https://example.com",
"description": "Description text of the search result...",
"source": "Source",
"engine": "Engine used"
}
]
typescript
Used to fetch complete content of CSDN blog articles.
{
"url": string // URL from CSDN search results using the search tool
}
`
Usage example:
typescript`
use_mcp_tool({
server_name: "web-search",
tool_name: "fetchCsdnArticle",
arguments: {
url: "https://blog.csdn.net/xxx/article/details/xxx"
}
})
`
Response example:
json`
[
{
"content": "Example search result"
}
]
typescript
Used to fetch complete content of Linux.do forum articles.
{
"url": string // URL from linuxdo search results using the search tool
}
`
Usage example:
typescript`
use_mcp_tool({
server_name: "web-search",
tool_name: "fetchLinuxDoArticle",
arguments: {
url: "https://xxxx.json"
}
})
`
Response example:
json``
[
{
"content": "Example search result"
}
]
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"open websearch": {
"open-webSearch": {
"command": "docker",
"args": [
"run",
"-d",
"--name",
"web-search",
"-p",
"3000:3000",
"-e",
"ENABLE_CORS=true",
"-e",
"CORS_ORIGIN=*",
"ghcr.io/aas-ee/open-web-search:latest"
]
}
}
}
}
McpServers
{
"open-webSearch": {
"command": "docker",
"args": [
"run",
"-d",
"--name",
"web-search",
"-p",
"3000:3000",
"-e",
"ENABLE_CORS=true",
"-e",
"CORS_ORIGIN=*",
"ghcr.io/aas-ee/open-web-search:latest"
]
}
}
Features
- Web search using multi-engine results - bing - baidu - ~~linux.do~~ temporarily unsupported - csdn - duckduckgo - exa - brave - HTTP proxy configuration support for accessing restricted resources - No API keys or authentication required - Returns structured results with titles, URLs, and descriptions - Configurable number of results per search - Customizable default search engine - Support for fetching individual article content - csdnTODO
- Support for ~~Bing~~ (already supported), ~~DuckDuckGo~~ (already supported), ~~Exa~~ (already supported), ~~Brave~~ (already supported), Google and other search engines - Support for more blogs, forums, and social platforms - Optimize article content extraction, add support for more sitesInstallation Guide
Local Installation
1. Clone or download this repository 2. Install dependencies: ``bash
npm install
`
3. Build the server:
`bash
npm run build
`
4. Add the server to your MCP configuration:
Cherry Studio:
`json
{
"mcpServers": {
"web-search": {
"name": "Web Search MCP",
"type": "streamableHttp",
"description": "Multi-engine web search with article fetching",
"isActive": true,
"baseUrl": "http://localhost:3000/mcp"
}
}
}
`
VSCode (Claude Dev Extension):
`json
{
"mcpServers": {
"web-search": {
"transport": {
"type": "streamableHttp",
"url": "http://localhost:3000/mcp"
}
},
"web-search-sse": {
"transport": {
"type": "sse",
"url": "http://localhost:3000/sse"
}
}
}
}
`
Claude Desktop:
`json
{
"mcpServers": {
"web-search": {
"transport": {
"type": "streamableHttp",
"url": "http://localhost:3000/mcp"
}
},
"web-search-sse": {
"transport": {
"type": "sse",
"url": "http://localhost:3000/sse"
}
}
}
}
`
Docker Deployment
Quick deployment using Docker Compose:
`bash
docker-compose up -d
`
Or use Docker directly:
`bash
docker run -d --name web-search -p 3000:3000 -e ENABLE_CORS=true -e CORS_ORIGIN=* ghcr.io/aas-ee/open-web-search:latest
`
Environment variable configuration:
``bashSign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


