Skip to main content

Free, API-key-free web search MCP server — DuckDuckGo, Bing, Google & optional SerpAPI/Tavily

Project description

中文 | English


MCP Web Search Server

A free, API-key-free web search MCP (Model Context Protocol) server supporting DuckDuckGo, Bing, Google, and optional SerpAPI/Tavily for enhanced search quality.

Features

  • 🔍 Multi-Engine Search: DuckDuckGo + Bing + Google (free, no API key required)
  • 🔑 Optional API Keys: SerpAPI and Tavily for better search quality
  • 📄 Web Content Fetching: Get text content from any webpage
  • 🚀 Async Processing: High-performance asyncio-based async handling

Installation

PyPI (Recommended)

pip install heventure-search-mcp
heventure-search-mcp

uvx

uvx heventure-search-mcp

From Source

pip install git+https://github.com/HughesCuit/heventure-search-mcp.git
python -m server

Usage

MCP Client Config

{
  "mcpServers": {
    "web-search": {
      "command": "python",
      "args": ["/path/to/server.py"]
    }
  }
}

Trae AI

{
  "mcpServers": {
    "heventure-search-mcp": {
      "command": "uvx",
      "args": ["heventure-search-mcp"]
    }
  }
}

Available Tools

web_search

Search web content with multiple engines.

Parameters:

  • query (string, required): Search query
  • max_results (integer, optional): Max results (default: 10, range: 1-20)
  • search_engine (string, optional): Engine choice (default: "both")
    • "duckduckgo": DuckDuckGo only
    • "bing": Bing only
    • "google": Google only
    • "both": DuckDuckGo + Google + Bing

Optional API Keys (for Enhanced Search)

You can optionally set environment variables to enable paid search engines:

# SerpAPI (Google search results via API, 100 searches/month free)
export SERPAPI_KEY="your_serpapi_key"

# Tavily (AI-optimized search, 1000 searches/month free)
export TAVILY_API_KEY="your_tavily_api_key"

When API keys are configured, they will be automatically used alongside the free engines to improve search quality.

Example:

{
  "query": "Python tutorial",
  "max_results": 5,
  "search_engine": "both"
}

get_webpage_content

Get text content from a webpage.

Parameters:

  • url (string, required): Target webpage URL

Example:

{
  "url": "https://example.com"
}

Error Handling

  • Automatic retry on network failure
  • Graceful degradation on parse errors
  • User-friendly error messages

License

MIT License

Contributing

Issues and Pull Requests are welcome!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

heventure_search_mcp-1.4.18.tar.gz (52.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

heventure_search_mcp-1.4.18-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file heventure_search_mcp-1.4.18.tar.gz.

File metadata

  • Download URL: heventure_search_mcp-1.4.18.tar.gz
  • Upload date:
  • Size: 52.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for heventure_search_mcp-1.4.18.tar.gz
Algorithm Hash digest
SHA256 5f4acd896b4f4cf6d51e8054e6aab3d974f9090d95e744757722794ea155d362
MD5 680738de685633a15bd4b59193f7e9ab
BLAKE2b-256 9f0f4ae2a47256d46eec77cda30f46b9766909c8f4b010c77a9daa6a2dffedae

See more details on using hashes here.

File details

Details for the file heventure_search_mcp-1.4.18-py3-none-any.whl.

File metadata

File hashes

Hashes for heventure_search_mcp-1.4.18-py3-none-any.whl
Algorithm Hash digest
SHA256 a68ccf7198392b9a849f2343107332abf2759a378053bb1e3085fe4e2e738830
MD5 c119b1e1412053648596da4ea0a88990
BLAKE2b-256 0344aecea060cf7b558534c2b71525bef4e7a56364397c5fae9318948624153f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page