zero-api-key-web-search

mcp
Security Audit
Warn
Health Warn
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Pass
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested
Purpose
This MCP server and CLI tool provides AI agents with free web search, page browsing, and claim verification capabilities. It operates without requiring paid API keys or external accounts by relying on DuckDuckGo and optional self-hosted SearXNG instances.

Security Assessment
The overall risk is rated as Low. A light code scan of 12 files found no dangerous patterns, hardcoded secrets, or requests for dangerous permissions. Network requests are expected and inherent to the tool's core functionality (fetching live search results and querying external web pages). It does not appear to access sensitive local data or execute hidden shell commands.

Quality Assessment
The repository uses the permissive MIT license and was actively updated very recently. It includes 86 passing tests and provides clear, comprehensive documentation for a variety of platforms. The primary concern is its low community visibility; with only 5 GitHub stars, the project is very new and has not yet received widespread peer review or community validation.

Verdict
Use with caution. The code itself appears safe and well-documented, but given its extremely low community adoption, you should monitor its public repository for future security contributions before relying on it in high-stakes production environments.
SUMMARY

Zero-API-key web search, browsing, and claim verification for AI agents.

README.md

Zero-API-Key Web Search

Free web search, browsing & claim verification for AI agents.

No API keys. No accounts. No limits. 100% free.

PyPI
Python
MCP
Tests
License


What is this?

A single pip install gives your AI agent live web search, full-page reading, and evidence-aware claim verification — all without any API key, account, or paid service.

  • Search: Live results from DuckDuckGo (free) + optional SearXNG (self-hosted, free)
  • Browse: Extract clean text from any URL, stripping boilerplate automatically
  • Verify: Classify claims as supported / contested / likely false with evidence scores
  • Report: Generate citation-ready evidence reports with rationale and next steps

Quick start

pip install zero-api-key-web-search

# Search the web
zero-search "Python 3.13 release" --json

# Read a page
zero-browse "https://docs.python.org/3/whatsnew/" --json

# Verify a claim
zero-verify "Python 3.13 is the latest stable release" --deep --json

# Full evidence report
zero-report "Python 3.13 stable release" \
  --claim "Python 3.13 is the latest stable release" --deep --json

Legacy CLI aliases (search-web, browse-page, verify-claim, evidence-report) also work.

Why this over a plain search wrapper?

Feature Plain search Zero-API-Key Web Search
Live search results
News / images / videos / books
Region & time filtering
Full-page text extraction
Claim verification with evidence scores
Supporting vs. conflicting evidence
Citation-ready evidence reports
Dual-provider cross-validation
API key required Often Never
Cost Sometimes Free

MCP server

Works with Claude Code, Cursor, Copilot, and any MCP-compatible agent:

{
  "mcpServers": {
    "zero-api-key-web-search": {
      "command": "zero-mcp"
    }
  }
}

Four tools exposed: search_web, browse_page, verify_claim, evidence_report.

Platform support

Platform Status Entry point
CLI Ready zero-search, zero-browse, zero-verify, zero-report
MCP Ready zero-mcp
Claude Code Ready .claude/skills/zero-api-key-web-search/SKILL.md
Gemini Ready GEMINI.md + .gemini/SKILL.md
Cursor Ready .cursor/rules/zero-api-key-web-search.md
Copilot Ready .github/copilot/instructions.md
Codex Ready .codex/SKILL.md
Continue Ready .continue/skills/zero-api-key-web-search/SKILL.md
Manus Ready Root SKILL.md + docs/manus.md
Kiro Ready .kiro/steering/zero-api-key-web-search.md
OpenClaw Ready zero_api_key_web_search/skills/SKILL.md

How verification works

zero-verify uses the evidence-aware heuristic v3 model:

  1. Search for the claim across available providers
  2. Score each source on keyword overlap, source quality, freshness
  3. Classify as supporting, conflicting, or neutral
  4. Optionally fetch top pages for deeper page-aware analysis
  5. Render a verdict with confidence and evidence breakdown
Verdict Meaning
supported Strong evidence, low conflict
likely_supported Leans positive, not decisive
contested Support and conflict both meaningful
likely_false Conflict strong, support weak
insufficient_evidence Too weak for any firmer verdict

This is a heuristic evidence classifier, not a proof engine. See docs/trust-model.md for details and limitations.

Free dual-provider setup

Default install uses DuckDuckGo. For stronger cross-validated evidence, add a free self-hosted SearXNG:

./scripts/start-searxng.sh
export ZERO_SEARCH_SEARXNG_URL="http://127.0.0.1:8080"
./scripts/validate-free-path.sh

Or with Docker Compose:

cp .env.searxng.example .env
docker compose -f docker-compose.searxng.yml up -d

Full guide: docs/searxng-self-hosted.md.

Evidence report example

{
  "verdict": "contested",
  "confidence": "MEDIUM",
  "executive_summary": "Evidence is split...",
  "verdict_rationale": ["Source A supports...", "Source B contradicts..."],
  "coverage_warnings": ["Single-provider evidence path."],
  "source_digest": [
    {"title": "...", "url": "...", "classification": "supporting", "evidence_strength": 3}
  ],
  "next_steps": ["Add a second provider for cross-validation."]
}

Architecture

zero_api_key_web_search/
  core.py              # UltimateSearcher — search, verify, report engine
  browse_page.py       # Readability-style page text extraction
  mcp_server.py        # MCP server (4 tools)
  transport.py         # SSL/TLS helpers
  search_web.py        # CLI: zero-search
  browse_page.py       # CLI: zero-browse
  verify_claim.py      # CLI: zero-verify
  evidence_report.py   # CLI: zero-report
  providers/
    base.py            # SearchProvider protocol (sync + async)
    ddgs.py            # DuckDuckGo provider
    searxng.py         # SearXNG provider
  skills/
    SKILL.md           # Bundled OpenClaw skill

Key engineering features:

  • Circuit breaker: Trips after 3 consecutive provider failures, auto-resets after 60s
  • Async support: asearch() for concurrent provider calls via asyncio.gather
  • Structured logging: Configurable logging at search/verify/report entry points
  • Readability heuristic: Semantic HTML5 + ARIA roles + text density scoring
  • Baseline comparison: Majority-vote and keyword-count baselines in reports
  • Sub-claim decomposition: Targeted sub-queries for independent evidence gathering

Installation

pip install zero-api-key-web-search

Python 3.10+ required. No API keys, no accounts, no configuration needed.

Development

pip install -e ".[dev]"
python -m pytest tests/ -x           # 86 tests
ruff check zero_api_key_web_search/ tests/
pyright zero_api_key_web_search/     # 0 errors
coverage report --fail-under=80       # 85% coverage

Verification for ecosystem reviewers

  1. zero-report "Python 3.13 stable release" --claim "Python 3.13 is the latest stable release" --deep --json
  2. docs/ecosystem-readiness.md
  3. docs/gemini-submission-checklist.md
  4. docs/trust-model.md

License

MIT License.

Reviews (0)

No results found