{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_we34zahe9qts","handle":"smart-web-search-mcp","url":"https://wellknown.network/agents/smart-web-search-mcp","links":{"self":"https://wellknown.network/agents/smart-web-search-mcp/record.json","html":"https://wellknown.network/agents/smart-web-search-mcp","markdown":"https://wellknown.network/agents/smart-web-search-mcp/record.md","api":"https://wellknown.network/api/v1/agents/smart-web-search-mcp","status":"https://wellknown.network/api/v1/agents/smart-web-search-mcp/status","claim":"https://wellknown.network/agents/smart-web-search-mcp/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/smart-web-search-mcp/claim.json","badge":"https://wellknown.network/agents/smart-web-search-mcp/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/smart-web-search-mcp/history","tools":"https://wellknown.network/api/v1/agents/smart-web-search-mcp/tools"},"ard":{"identifier":"urn:air::server:smart-web-search-mcp","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"smart-web-search-mcp","summary":"Smart Web Search MCP server — 5-provider fusion search + agent-readable URL fetch (wigolo→keenable→tavily→serper→direct), with a one-click installer for 13 AI agent CLIs","description":"# smart-web-search-mcp\n\n**English** | [中文说明见下](#中文说明)\n\nA [Model Context Protocol](https://modelcontextprotocol.io) (MCP) stdio server that exposes **two** LLM tools — `smart_web_search` (5-provider fusion search) and `smart_web_fetch` (URL → clean, agent-readable content):\n\n```\nL1  wigolo (stdio, 18 engines, free) + keenable (HTTP, free tier)   in parallel\nL2  tinyfish (wallet) → tavily (1000/mo free)                       serial pair\nL3  serper (Google; 2500 one-time free, then paid)                  unconditional fallback\n```\n\nThe router picks the first layer with enough results and stops — cheap providers answer first, paid ones only fire when needed. Every call returns the full routing chain so the LLM can learn which layer served it.\n\n### Output format (v0.2.0)\n\nBy default the tool returns **readable result blocks** (aligned with what the major search MCP servers converged on), not raw provider JSON:\n\n```\n[1] Title: Example Page\n    URL: https://…\n    Published: 2026-09-28\n    Snippet: …\n\n──\nfrom L1 wigolo | kept 3 of 20 | layers: wigolo(degraded 10) → keenable(ok 10) | 4261ms\n```\n\nPass `output_format: \"json\"` to get a structured envelope instead: `{ query, results[], meta, chain }` with whitelist fields only (`title/url/snippet/published/source` per result).\n\nThe package ships two console commands:\n\n- `smart-web-search-mcp` — the MCP stdio server (spawn-per-call core, zero cross-call state; Node ≥ 22.7 required for strip-only TypeScript execution — no build step)\n- `smart-web-search-install` — a zero-dependency Python installer that detects installed AI agent CLIs (pi, Cursor, Cline, opencode, zcode, Qoder, mcode, commandcode, dsh, reasonix, Codex, Claude Code, Copilot CLI) and idempotently wires the MCP entry into each one's config\n\n## Install\n\n```bash\nuv tool install smart-web-search-mcp    # or: pipx install smart-web-search-mcp\nsmart-web-search-install --list         # detect installed agents (read-only)\nsmart-web-search-install --dry-run      # preview c…","publisher":{"name":"NinjaSln","url":null},"homepage":"https://github.com/NinjaSln-labs/smart-web-search-mcp","repository":"https://github.com/NinjaSln-labs/smart-web-search-mcp","version":"0.4.0","license":null,"protocols":["mcp"],"tags":["mcp","web-search","agent","llm","search-router","model-context-protocol"],"pricing":null,"endpoints":[{"url":"pypi:smart-web-search-mcp","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"data.web-search","name":"Web Search","confidence":1,"provenance":"declared"}],"categories":["data"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"smart-web-search-mcp","registry":"pypi","observedAt":"2026-10-28T22:24:41.418Z","publishedAt":"2026-10-27T10:40:58.537589Z","latestVersion":"0.4.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"smart-web-search-mcp","url":"https://pypi.org/project/smart-web-search-mcp/","firstSeenAt":"2026-10-04T16:22:27.712Z","fetchedAt":"2026-10-28T22:24:01.061Z","normalizedAt":"2026-10-28T22:24:01.061Z"}]},"firstSeenAt":"2026-10-04T16:22:27.712Z","updatedAt":"2026-10-28T22:24:41.418Z"}