RivalSearchMCP
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
| Access | remote |
|---|---|
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 308 ms |
| Last measured | 2026-10-26 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"RivalSearchMCP": {
"url": "https://RivalSearchMCP.fastmcp.app/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (9)
web_searchread-onlyConcurrent multi-engine web search across DuckDuckGo, Bing, Yahoo, Mojeek, and Wikipedia. Results are deduplicated and merged; failures on any single engine do not block the others.
Parameters:
query(required) — string — Search query stringmax_depth— integer — Maximum depth for link followingnum_results— integer — Number of results per enginefollow_links— boolean — Whether to follow internal linksextract_content— boolean — Whether to extract full page content
Hints: read-only yes · destructive no · idempotent no · open-world yes
map_websiteread-onlyMap and explore websites with different modes for different use cases.
Parameters:
url(required) — string — Website URL to traversemode— string — Traversal mode - "research" (general), "docs" (documentation), "map" (structure)max_depth— integer — Maximum depth for mapping modemax_pages— integer — Maximum number of pages to traversegenerate_llms_txt— boolean
Hints: read-only yes · destructive no · idempotent no · open-world yes
content_operationsread-onlyOne tool for every URL/content-level operation. Pick `operation`, provide whichever of `url`, `urls`, `content` that operation needs, and leave the rest defaulted. Parameter annotations above (visible in the MCP schema) state which operation each parameter applies to. Quick map of operation -> required inputs: retrieve url stream url analyze content extract url score urls (optionally metadata) find_conflicts urls (optionally claim) validate urls (≤100 URLs; checks liveness, redirects, paywalls, last-modified)
Parameters:
operation(required) — string — What to do: retrieve - fetch `url` and return its text/html/markdown stream - stream-fetch `url` analyze - analyze `content` for key points / sentiment extract - extract links from `url` score - rate `urls` on quality signals find_conflicts - compare `urls` for numeric / date / polarity disagreements validate - bulk check `urls` (≤100) for liveness, redirects, paywalls, last-modified bibliography - format `sources` as citations; use `bib_format` for style (apa7/bibtex/chicago/json)url— Single URL for retrieve / stream / extract.urls— List of URLs for score (≤50), find_conflicts (2-10), or validate (≤100). Ignored for single-URL operations.claim— find_conflicts only: a specific claim to check for support vs contradiction across `urls` (e.g. 'the vaccine is safe').content— Content body for `analyze` operation.sources— bibliography only: list of source objects to format. Each object may contain: url, title, authors (list), year, journal, volume, issue, pages, doi, publisher, accessed_date. Any subset is accepted; missing fields are omitted from the citation.metadata— score only: per-URL metadata aligned with `urls` (title, published, citationCount, etc.) to sharpen the freshness and corroboration signals.link_type— string — extract only: which link category.max_links— integer — extract only: max links returned.summarize— boolean — analyze only: produce a summary.bib_format— string — bibliography only: output style.analysis_type— string — analyze only: analysis focus.include_metadata— boolean — Include metadata in the response.extraction_method— string — retrieve only: output format.extract_key_points— boolean — analyze only: extract key points.
Hints: read-only yes · destructive no · idempotent no · open-world yes
research_topicread-onlyEnd-to-end deterministic research workflow. One tool, two modes: topic - open-ended search + fetch + extract entity - unified cross-source profile of a named entity Both modes auto-attach per-result quality scores and an aggregate confidence signal so callers can calibrate trust.
Parameters:
topic(required) — string — Subject of the research. A topic or question in `topic` mode (e.g. 'transformer attention'); an entity name in `entity` mode (e.g. 'OpenAI', 'FastMCP', 'Linus Torvalds').mode— string — topic - search + fetch + extract findings from top sources. entity - profile a named entity by fanning out across web, news, GitHub, social, and academic sources in parallel. Returns a unified multi-section report.sources— topic mode only: override the search step with these specific URLs. Ignored in entity mode.max_sources— integer — Upper bound on sources per section.include_analysis— boolean — topic mode only: run key-findings extraction on retrieved content.
Hints: read-only yes · destructive no · idempotent no · open-world yes
scientific_researchread-onlyScientific research tool for academic papers and datasets. Supports two operations: - academic_search: Search for academic papers across multiple sources - dataset_discovery: Discover datasets from various repositories Sources for academic_search (all keyless, queried concurrently): - openalex ~240M works, strong full-text search, OA-aware - crossref ~140M DOI-registered works (journals, books, conference proceedings, preprints) - arxiv physics/math/CS/stats/q-bio/q-fin preprints - pubmed NCBI biomedical index - europepmc biomedical + bioRxiv/medRxiv preprints Sources for dataset_discovery: - kaggle Kaggle datasets list endpoint - huggingface HuggingFace Hub datasets - zenodo CERN's open-science repository (CC-licensed) - dataverse Harvard Dataverse (largest research-data repo) Defaults pick the highest-recall combination per operation; pass `sources=[...]` to restrict.
Parameters:
operation(required) — string — Operation type: 'academic_search' or 'dataset_discovery'query(required) — string — Search querysources— Specific sources to search (optional)categories— Categories for dataset discovery (optional)max_results— integer — Maximum results to return
Hints: read-only yes · destructive no · idempotent yes · open-world yes
social_searchread-onlySearch across social platforms and communities for discussions and content. Supported platforms (no authentication required): - reddit Reddit (JSON API) - hackernews Hacker News (Algolia-powered full-text search) - devto Dev.to (tag lookup + recent-articles filter) - producthunt Product Hunt (RSS feed + client-side filter) - medium Medium (tag/topic RSS feeds + HTML fallback) - stackoverflow Stack Exchange (defaults to stackoverflow.com) - bluesky Bluesky public posts (AT Protocol) - lobsters Lobste.rs (HTML search + hot-feed fallback) - lemmy Lemmy federated posts (default instance: lemmy.world)
Parameters:
query(required) — string — Search queryplatforms— Platforms to query in parallel (see list above)max_results— integer — Alias overriding max_results_per_platform when > 0time_filter— string — Reddit time filter (all, day, week, month, year)lemmy_instance— string — Lemmy instance to query against (default lemmy.world)reddit_subreddit— string — Reddit subreddit ("all" for site-wide)stackoverflow_site— string — Stack Exchange site id (stackoverflow, serverfault, askubuntu, superuser, etc.)max_results_per_platform— integer — Max results per platform (default: 10)
Hints: read-only yes · destructive no · idempotent no · open-world yes
news_aggregationread-onlyAggregate news from multiple keyless sources concurrently. Sources queried in parallel (all verified working, no authentication required): - Google News RSS (search, with `when:` freshness operator) - Bing News RSS (search, with age filter; uses curl subprocess because Bing rejects httpx's TLS fingerprint) - The Guardian (full Content API via public "test" key) - GDELT 2.0 Doc API (global news index; may be rate-limited to one call per 5s per IP — gracefully skipped when throttled) - DuckDuckGo News (HTML scrape fallback) Results are deduplicated by URL and fuzzy title.
Parameters:
query(required) — string — News search querycountry— string — Country code (default: "US") — honored by Google Newslanguage— string — Language code (default: "en") — honored by Google Newstime_range— string — anytime | day | week | month (applied to every source that supports native freshness filtering; ignored by DuckDuckGo which has no freshness param)max_results— integer — Maximum unique results to return (default: 10)
Hints: read-only yes · destructive no · idempotent no · open-world yes
github_searchread-onlySearch GitHub repositories without authentication. Searches public GitHub repositories using the public API. No authentication token required.
Parameters:
query(required) — string — Search query (e.g., "web framework", "machine learning")sort— string — Sort by (stars, forks, updated)language— Filter by programming language (e.g., "Python", "TypeScript")max_results— integer — Maximum results to return (default: 10)include_readme— boolean — Whether to fetch README content (slower)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
document_analysisread-onlyDownload and analyze documents of multiple types with OCR support. Supports: PDF, Word (.docx), Text (.txt, .md), Images (.jpg, .png) with OCR. Extracts text content and metadata without requiring authentication. Automatically uses OCR for scanned PDFs and images.
Parameters:
url(required) — string — URL of the document to analyze (PDF, Word, Text, etc.)max_pages— integer — Maximum pages to extract (for PDFs, default: 10)summary_length— integer — Length of text preview in output (default: 500)extract_metadata— boolean — Whether to extract document metadata
Hints: read-only yes · destructive no · idempotent yes · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.