protogrid

Search / xyz.kadec0/web-search-data-api

Web Search & Data API

R0 · no sign-in

Web search, scraping, Google Trends and data lookups. Paid per call in USDC on Base via x402.

v1.0.0 · active · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality76good
Trust80of 100
Uptime, 30 days100%
Latency p50590 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "web-search-data-api": {
      "type": "http",
      "url": "https://api.kadec0.xyz/mcp"
    }
  }
}
claude mcp add --transport http web-search-data-api https://api.kadec0.xyz/mcp
[mcp_servers.web-search-data-api]
url = "https://api.kadec0.xyz/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "web-search-data-api": {
      "type": "remote",
      "url": "https://api.kadec0.xyz/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "web-search-data-api": {
      "type": "http",
      "url": "https://api.kadec0.xyz/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=web-search-data-api&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLmthZGVjMC54eXovbWNwIn0%3D"
}
{
  "servers": {
    "web-search-data-api": {
      "type": "http",
      "url": "https://api.kadec0.xyz/mcp"
    }
  }
}
{
  "mcpServers": {
    "web-search-data-api": {
      "httpUrl": "https://api.kadec0.xyz/mcp"
    }
  }
}
extensions:
  "web-search-data-api":
    enabled: true
    name: "web-search-data-api"
    type: streamable_http
    uri: "https://api.kadec0.xyz/mcp"
    timeout: 300

Quality 76 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene64 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: serp_batch (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); domain_info (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); dns_propagation (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 4,574 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

23 tools, about 4,574 tokens to load them all · tool set 968903530069 · checked 2026-10-09 23:53 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 80 / 100

no-repository
provenance55
liveness100
freshness85
hygiene80

+dns-namespace +website +reachable +uptime-100% ~updated-32d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://api.kadec0.xyz/mcp streamable-httpnoneyes100%590 ms2025-11-252026-10-09

Tools (23)

author_searchAuthor and researcher profile search. An author name returns matching researchers with current affiliation, publication count, total citations, h-index and i10-index, and their most-cited papers — for author lookup, disambiguation, and citation-metrics. Keyless via OpenAlex. [$0.02/call]. Params — name: author name to search; maxItems: 1-25 candidate authors; top_works: top papers per author (0-25) Example params: {'name': 'Yoshua Bengio', 'maxItems': 3}
congress_tradesUS congressional stock trades. Stock transactions disclosed by members of the House and Senate under the STOCK Act — politician, ticker, amount, and date. [$0.05/call]. Params — politician: filer name substring; ticker: stock ticker, exact; chamber: string (house|senate); dateRange: YYYY-MM-DD..YYYY-MM-DD on transaction date; type: transaction type substring e.g. purchase|sale; maxItems: integer Example params: {'ticker': 'NVDA', 'chamber': 'house'}
cveCVE vulnerability lookup. Returns security vulnerability records by CVE id or keyword from the NIST National Vulnerability Database and GitHub Security Advisories, each with CVSS score, severity, CWE weakness class, affected products, and references, filterable by severity and source. For vulnerability triage and dependency risk checks. Keyless. [$0.01/call]. Params — cve_id: exact CVE id, e.g. CVE-2021-44228; keyword: free-text search; severity: string (low|medium|high|critical); source: string (nvd|github|all); maxItems: integer Example params: {'keyword': 'log4j', 'severity': 'critical'}
dns_propagationDNS propagation checker. Compares a DNS record across public resolvers (Google, Cloudflare, Quad9, OpenDNS) to spot propagation lag or split-horizon answers. [$0.03/call]. Params — domain: string; record_type: string (A|AAAA|CNAME|MX|NS|TXT) Example params: {'domain': 'example.com', 'record_type': 'A'}
domain_infoDomain WHOIS and DNS lookup. Registrar, creation and expiry dates, nameservers, and full DNS records (A, AAAA, MX, NS, TXT, CNAME) for a domain. [$0.02/call]. Params — domain: string Example params: {'domain': 'example.com'}
geocodeGeocoding and reverse geocoding. Converts an address or place name to latitude/longitude, or coordinates back to an address. [$0.01/call]. Params — q: address (forward geocode); lat: latitude (reverse geocode); lon: longitude (reverse geocode); maxItems: integer Example params: {'q': '1600 Amphitheatre Parkway, Mountain View, CA'}
githubGitHub data. Repository stats, user profiles, and code-search results (stars, forks, language, topics, issues) via the GitHub REST API. [$0.02/call]. Params — mode: what to fetch (repo|search|user); repos: comma list of owner/name (mode=repo); q: search query (mode=search); usernames: comma list (mode=user); maxItems: integer Example params: {'mode': 'repo', 'repos': 'microsoft/vscode'}
hackernewsHacker News feed. Top, new, and best front-page stories plus full-text story search — titles, scores, comment counts, and author for tech and startup news. [$0.01/call]. Params — mode: string (search|top|new|best); q: query (mode=search); maxItems: integer Example params: {'mode': 'search', 'q': 'ai agents'}
interest_by_regionGoogle Trends interest by region for a keyword. Returns the subregional breakdown of Google Trends search interest inside a country - by state, province, or region - each ranked 0-100 relative to the strongest region. For regional demand mapping, geo targeting, and finding where a keyword over-indexes before spending on it. [$0.03/call]. Params — keyword: the search term; geo: ISO-3166 alpha-2 country code, e.g. US, GB, DE, JP (213 countries supported); timeframe: time window. Each response reports its own bucket size in `granularity`: past_30_days and past_90_days return a daily series, past_12_months and past_5_years weekly, windows under a day hourly (2004_present|past_12_months|past_30_days|past_4_hours|past_5_years|past_7_days|past_90_days|past_day|past_hour) Example params: {'keyword': 'bitcoin', 'geo': 'US'}
lit_reviewLiterature review map in one call. Give a seed paper (DOI, arXiv id, OpenAlex id, or PMID) or a topic query and get one structured result: the seed's references, its cited-by list (most-cited first), and semantically related work, deduplicated into one uniform table with title, authors, year, venue, DOI, and citation count. Collapses search, citation lookup, and related-paper discovery into a single call. Keyless. [$0.08/call]. Params — q: topic query (seed = top hit); use this OR id/doi; id: seed paper: arXiv id, DOI, OpenAlex id, or PMID; doi: alias for id (DOI form); maxItems: max nodes per section (1-25) Example params: {'doi': '10.48550/arXiv.1706.03762', 'maxItems': 10}
paper_detailsCitation lookup and reference list for a paper. Given a DOI, arXiv id, OpenAlex id, or PMID, returns its references (the works it cites) and its cited-by list (recent works that cite it), plus full metadata and citation count — for bibliography building and citation lookup. Keyless via OpenAlex and Semantic Scholar. [$0.03/call]. Params — id: arXiv id, DOI, OpenAlex id, or PMID; doi: alias for id (DOI form); ref_limit: max references (0-100); cite_limit: max citing works (0-100) Example params: {'doi': '10.48550/arXiv.1706.03762'}
paper_fulltextFull text and open-access PDF retrieval for a paper. Given an arXiv id, DOI, OpenAlex id, PMID, or PMCID, returns the readable body split into sections (introduction, methods, results) plus the open-access PDF location: arXiv via ar5iv, biomedical via Europe PMC, OA locations via OpenAlex for the rest. The 'now read it' call after a paper search. Keyless. [$0.04/call]. Params — id: arXiv id, DOI, OpenAlex id, PMID, or PMCID; doi: alias for id (DOI form) Example params: {'id': '1706.03762'}
papersAcademic and scientific paper search API. Search research papers and scholarly literature across arXiv, PubMed, OpenAlex, Crossref, and Semantic Scholar in one call, deduplicated into a ranked result set: title, authors, year, venue, abstract, citation count, DOI, and direct PDF link. Query by keyword or restrict to one source; filter by year range; sort by relevance, recency, or citations. Keyless. [$0.02/call]. Params — q: search query / keywords; source: string (all|arxiv|pubmed|openalex|crossref|semanticscholar); maxItems: 1-50; year_from: earliest publication year (inclusive); year_to: latest publication year (inclusive); sort: string (relevance|recency|citations) Example params: {'q': 'transformer attention', 'source': 'all', 'maxItems': 10, 'sort': 'citations'}
related_papersLiterature review and related-paper discovery. Given a seed paper (arXiv id, DOI, or OpenAlex id) or a topic query, returns semantically similar and recommended scholarly papers to expand a reading list or systematic review, via Semantic Scholar recommendations with an OpenAlex related-works fallback. Keyless. [$0.03/call]. Params — id: paper arXiv id, DOI, or OpenAlex id; doi: alias for id (DOI form); q: query (alternative to id — relevance search); maxItems: 1-50 Example params: {'doi': '10.48550/arXiv.1706.03762', 'maxItems': 10}
related_queriesGoogle Trends related queries for a keyword. Returns the searches people run alongside a keyword in a given country: top queries scored 0-100 relative to each other, and rising queries with their percentage growth. Google Trends keyword expansion for SEO keyword research, content planning, and spotting breakout search demand early. [$0.03/call]. Params — keyword: the search term; geo: ISO-3166 alpha-2 country code, e.g. US, GB, DE, JP (213 countries supported); timeframe: time window. Each response reports its own bucket size in `granularity`: past_30_days and past_90_days return a daily series, past_12_months and past_5_years weekly, windows under a day hourly (2004_present|past_12_months|past_30_days|past_4_hours|past_5_years|past_7_days|past_90_days|past_day|past_hour) Example params: {'keyword': 'bitcoin', 'geo': 'US'}
related_topicsGoogle Trends related topics for a keyword. Returns the topics and named entities associated with a keyword in a given country, as top topics scored 0-100 relative to each other and rising topics with percentage growth, each carrying its entity type. Google Trends topic discovery for market research and content planning. [$0.03/call]. Params — keyword: the search term; geo: ISO-3166 alpha-2 country code, e.g. US, GB, DE, JP (213 countries supported); timeframe: time window. Each response reports its own bucket size in `granularity`: past_30_days and past_90_days return a daily series, past_12_months and past_5_years weekly, windows under a day hourly (2004_present|past_12_months|past_30_days|past_4_hours|past_5_years|past_7_days|past_90_days|past_day|past_hour) Example params: {'keyword': 'bitcoin', 'geo': 'US'}
scrapeScrape any web page to clean markdown. A keyless web scraper that converts a single URL into LLM-ready markdown plus structured metadata (title, headings, links, word count), so an agent can read a page without running a browser. A per-call alternative to Firecrawl's scrape endpoint, with no API key and no account. Single page per call, not a site crawler. [$0.03/call]. Params — url: page URL to scrape; maxChars: markdown cap Example params: {'url': 'https://example.com'}
sec_edgarSEC filings full-text search. Searches SEC EDGAR filings - 10-K, 10-Q, 8-K, and every other form type - by keyword, company name, ticker, or CIK, with date-range filtering, returning company, form type, filing date, accession number, and a direct document link. For SEC filings research and disclosure monitoring. Keyless. [$0.05/call]. Params — q: full-text query; company: entity name; cik: SEC CIK; type: form type, e.g. 10-K|10-Q|8-K; dateRange: YYYY-MM-DD..YYYY-MM-DD; maxItems: integer Example params: {'q': 'artificial intelligence', 'type': '10-K'}
serpWeb search results (SERP). Keyless web search returning ranked title, URL, and snippet for a query — with locale/region targeting, freshness filters (past day, week, month, year), pagination, a news mode that adds publish date and source, and selectable backend engine (auto rotation, or pin Brave, Yahoo, or Yandex). [$0.05/call]. Params — q: search query; num_results: max results, cap 25; region: locale, e.g. us-en, uk-en, de-de; timelimit: restrict to past day/week/month/year (d|w|m|y); safesearch: string (on|moderate|off); page: result page (pagination); mode: web results or recent news (news adds date+source per item). the news index is narrow, so a long or highly specific news query that matches nothing falls through to web rather than returning empty; those items carry requestedMode=news and servedBy=web (web|news); engine: search backend: auto (recommended - rotates engines and falls back on blocks) or pin one of yahoo, yandex (web mode); news mode supports bing. when set, each result carries an 'engine' field; if the pinned engine returns nothing, auto serves instead and results also carry 'requestedEngine' Example params: {'q': 'best python web scraping library', 'num_results': 10}
serp_batchBulk web search: up to 5 search queries in a single call, each returning ranked title, URL, and snippet, with the same locale, freshness, and news filters as the single-query web search. One paid call instead of five for research fan-out. [$0.10/call]. Params — queries: up to 5 search queries separated by '|'; num_results: max results per query, cap 25; region: locale, e.g. us-en, uk-en, de-de; timelimit: restrict to past day/week/month/year (d|w|m|y); safesearch: string (on|moderate|off); mode: string (web|news); engine: search backend: auto (recommended) or yahoo/yandex (web); bing (news) Example params: {'queries': 'python asyncio tutorial|rust tokio tutorial'}
serp_multiMulti-engine web search (metasearch). One search query fanned out across 2-3 search engines (Brave, Yahoo, Yandex) with results deduplicated by URL and merged by reciprocal-rank fusion: consensus ranking across engines instead of one engine's bias, with per-engine rank attribution on every result. [$0.05/call]. Params — q: search query; engines: comma list of 2-3 engines: yahoo, yandex (web mode). news mode has a single live engine (bing), so multi-engine is web-only; num_results: max results per engine, cap 25; region: locale, e.g. us-en, uk-en, de-de; timelimit: restrict to past day/week/month/year (d|w|m|y); safesearch: string (on|moderate|off); mode: string (web|news) Example params: {'q': 'best vector database 2026', 'engines': 'yahoo,yandex'}
serp_readWeb search plus page reading in one call: answer with sources. Runs a web search, scrapes the top results, and returns the ranked search results together with each page's content as clean LLM-ready markdown, so an agent gets the SERP AND the underlying text without a second round of scrape calls. Per-page fetch errors are reported honestly per URL. [$0.08/call]. Params — q: search query; fetch_top: how many top results to fetch and extract, cap 5; maxChars: max markdown chars per fetched page; num_results: ranked results to return, cap 25; region: locale, e.g. us-en, uk-en, de-de; timelimit: restrict to past day/week/month/year (d|w|m|y); safesearch: string (on|moderate|off); mode: string (web|news); engine: search backend: auto (recommended) or yahoo/yandex (web); bing (news) Example params: {'q': 'how does x402 payment protocol work', 'fetch_top': 3}
trendGoogle Trends interest over time for a keyword. Returns Google Trends search interest as a dated series indexed 0-100: weekly points across the default past 12 months, daily points for 30- and 90-day windows, and windows from the past hour back to 2004, with optional country targeting. For keyword trend analysis, search demand seasonality, and SEO keyword research. [$0.05/call]. Params — keyword: the search term to chart; geo: ISO-3166 alpha-2 country code, e.g. US, GB, DE, JP (213 countries supported); omit for worldwide; timeframe: time window. Each response reports its own bucket size in `granularity`: past_30_days and past_90_days return a daily series, past_12_months and past_5_years weekly, windows under a day hourly (2004_present|past_12_months|past_30_days|past_4_hours|past_5_years|past_7_days|past_90_days|past_day|past_hour) Example params: {'keyword': 'bitcoin', 'geo': 'US'}

Schemas: list_tools.

Official server.json
{
  "name": "xyz.kadec0/web-search-data-api",
  "title": "Web Search & Data API",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://api.kadec0.xyz/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "1.0.0",
  "websiteUrl": "https://api.kadec0.xyz/docs",
  "description": "Web search, scraping, Google Trends and data lookups. Paid per call in USDC on Base via x402."
}