RivalSearchMCP

by damionrashford

337 downloads Not rated yet

About

Advanced MCP server for comprehensive web research, content discovery, and trends analysis. Features multi-engine search, intelligent content extraction, website traversal, and real-time data streaming.

Explore

- Anti‑detection measures including Cloudflare bypass
- Rich snippets detection and multi‑engine fallback
- Real‑time progress tracking for long‑running operations
- Data export to CSV, JSON, and SQLite
- Intelligent website crawling with configurable depth and modes
- 18 tools across six core categories

Connect your MCP client to the remote server at https://RivalSearchMCP.fastmcp.app/mcp. For Cursor, add the JSON configuration to your MCP server settings; for Claude Desktop, go to Settings → Add Remote Server and enter the URL; for VS Code, add the configuration to .vscode/mcp.json; for Claude Code, use claude mcp add RivalSearchMCP --url https://RivalSearchMCP.fastmcp.app/mcp. No local installation is required.

web_search

Concurrent 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.

map_website

Map and explore websites with different modes for different use cases.

content_operations

One 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)

research_topic

End-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.

scientific_research

Scientific 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.

social_search

Search 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)

news_aggregation

Aggregate 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.

github_search

Search GitHub repositories without authentication. Searches public GitHub repositories using the public API. No authentication token required.

document_analysis

Download 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.

- web_search: Concurrent 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.
- map_website: Map and explore websites with different modes for different use cases.
- content_operations: One 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)
- research_topic: End-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.
- scientific_research: Scientific 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.
- social_search: Search 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)
- news_aggregation: Aggregate 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.
- github_search: Search GitHub repositories without authentication.

Searches public GitHub repositories using the public API.
No authentication token required.
- document_analysis: Download 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.

Deterministic research MCP server — web + social + academic + news + code + docs, all in one place. No API keys, no in-server LLM, structured outputs for agent chaining.

🆓100% Free & Open Source— No API keys or subscriptions for core tools. The hosted server includes fair-use rate limiting.

RivalSearchMCP is a FastMCP 3.x server exposing9 specialized toolsthat search, fetch, score, and compare information across:

- 5 web search engines(DuckDuckGo, Bing, Yahoo, Mojeek, Wikipedia) — concurrent, deduplicated, with TLS-fingerprint-safe fetches via Scrapling
- 9 social platforms(Reddit, Hacker News, Stack Overflow, Dev.to, Medium, Product Hunt, Bluesky, Lobste.rs, Lemmy) — no authentication
- 5 news sources(Google News, Bing News, The Guardian, GDELT, DuckDuckGo News) — with time-range filtering
- 5 academic databases(OpenAlex, CrossRef, arXiv, PubMed, Europe PMC) +4 dataset hubs(Kaggle, HuggingFace, Dataverse, Zenodo)
- GitHub repositorieswith built-in rate limiting
- Documents(PDF, Word, text, images) with OCR for images
- Website traversalwith research, docs, and mapping modes

No LLM runs inside the server.Every tool returns deterministic, auditable output — the caller's model does the synthesis. Tools that benefit from structured output (content_operations score,find_conflicts) returnToolResultwith both a human-readable markdown rendering and a parseablestructuredContentdict, so agents can chain tool outputs without regex-parsing prose.

- One connection, nine tools— no need to wire up separate MCP servers per source
- Auto-quality scoring— every result carries a tier/freshness/corroboration/citation score (0-100) and every multi-result response carries an aggregate confidence signal
- Conflict detection—content_operations find_conflictssurfaces numeric, date, and polarity disagreements across sources as a first-class signal instead of averaging them away
- Entity profiles—research_topic(mode="entity")fans out to 8 sources in parallel and returns a unified report with confidence
- Production hygiene— per-tool timeouts, rate limiting (100 req/min/session), response-size caps, error masking, middleware-level observability

Once connected, try asking your AI assistant:

"Use RivalSearchMCP to research FastAPI vs Django. Runresearch_topicon both, aggregate recent news, check Reddit and Hacker News discussions, search GitHub for activity, look for academic papers, score the top sources, and flag any conflicts between them."

RivalSearchMCP runs as aremote MCP serverhosted on FastMCP. Just follow the steps below to install, and go.

{ "mcpServers": { "RivalSearchMCP": { "url": "https://RivalSearchMCP.fastmcp.app/mcp" } } }

- Go to Settings → Add Remote Server
- Enter URL:https://RivalSearchMCP.fastmcp.app/mcp

- Add the above JSON to your.vscode/mcp.jsonfile

- Use the built-in MCP management:claude mcp add RivalSearchMCP --url https://RivalSearchMCP.fastmcp.app/mcp

# Install UV (modern Python package manager) curl -LsSf https://astral.sh/uv/install.sh | sh # Install FastMCP CLI (optional but recommended) uv tool install fastmcp
# Clone repository git clone https://github.com/damionrashford/RivalSearchMCP.git cd RivalSearchMCP # Install directly to your MCP client: fastmcp install claude-desktop server.py # For Claude Desktop fastmcp install cursor server.py # For Cursor fastmcp install claude-code server.py # For Claude Code
git clone https://github.com/damionrashford/RivalSearchMCP.git cd RivalSearchMCP # Run directly with FastMCP CLI fastmcp run server.py # Auto-detects entrypoint, uses STDIO # Or run in HTTP mode for testing fastmcp run server.py --transport http --port 8000
# Run with MCP Inspector for testing fastmcp dev server.py
git clone https://github.com/damionrashford/RivalSearchMCP.git cd RivalSearchMCP uv sync # Add to Claude Desktop or Cursor config: { "RivalSearchMCP": { "command": "uv", "args": [ "--directory", "/full/path/to/RivalSearchMCP", "run", "python", "server.py" ] } }

Every tool carriesToolAnnotations(readOnlyHint,openWorldHint,destructiveHint,idempotentHint) so MCP clients like Claude and ChatGPT can skip confirmation prompts where safe. Every tool has atimeout=ceiling so a hung source can't stall the client.

- web_search— concurrent multi-engine search across DuckDuckGo, Bing, Yahoo, Mojeek, and Wikipedia. Scrapling-backed TLS fingerprinting bypasses Cloudflare/Akamai fronting. Per-engine failures don't block the others.
- social_search— 9 platforms: Reddit, Hacker News, Stack Overflow, Dev.to, Medium, Product Hunt, Bluesky, Lobste.rs, Lemmy. No authentication.
- news_aggregation— 5 sources: Google News, Bing News, The Guardian, GDELT, DuckDuckGo News. Acceptstime_range(day/week/month/anytime).
- github_search— repository search with built-in rate limiting (60/hr unauthenticated), optional README inclusion.
- map_website— traverse a site inresearch,docs, ormapmode; returns per-page quality scores and an aggregate confidence signal.

- content_operations— one tool, six operations:retrieve,stream,analyze,extract,score,find_conflicts.

- scorerates URLs on tier / freshness / corroboration / citations (0-100) and returns both markdown + structured JSON.
- find_conflictscompares 2-10 sources for numeric / date / polarity disagreements with confidence weights.

- scientific_research— academic paper and dataset search. 5 paper providers (OpenAlex, CrossRef, arXiv, PubMed, Europe PMC) and 4 dataset hubs (Kaggle, HuggingFace, Dataverse, Zenodo).

RivalSearchMCP ships as an installable plugin for bothClaude CodeandOpenAI Codex. The plugin registers the hosted MCP server athttps://RivalSearchMCP.fastmcp.app/mcp, so users do not need to clone this repo or run a local server.

The GitHub repo is the plugin marketplace. Add the marketplace once, then install either or both plugins:

- rival-search-mcpregisters the hosted MCP server and exposes the 9 tools.
- rival-search-mcp-skillsinstalls the standalone agent skill, reference docs, and CLI helpers.

# 1. Add this repo as a marketplace claude plugin marketplace add damionrashford/RivalSearchMCP --scope user # 2. Install the plugin claude plugin install rival-search-mcp@rivalsearchmcp --scope user # Optional: install the skill-only plugin claude plugin install rival-search-mcp-skills@rivalsearchmcp --scope user

Inside Claude Code, the same flow is available with slash commands:

/plugin marketplace add damionrashford/RivalSearchMCP /plugin install rival-search-mcp@rivalsearchmcp /plugin install rival-search-mcp-skills@rivalsearchmcp

For a team/project install, use--scope projectinstead of--scope user, or add the marketplace to.claude/settings.json:

{ "extraKnownMarketplaces": { "rivalsearchmcp": { "source": { "source": "github", "repo": "damionrashford/RivalSearchMCP" } } } }

Then install one or both plugins with/plugin install rival-search-mcp@rivalsearchmcpand/plugin install rival-search-mcp-skills@rivalsearchmcp.

Once installed, Claude Code exposes the MCP tools asmcp__RivalSearchMCP__*. Example prompts:

Use RivalSearchMCP to search recent news about open source AI agents. Use RivalSearchMCP to compare FastAPI and Django across web, GitHub, and academic sources. Use RivalSearchMCP to retrieve this URL, score the source, and identify conflicting claims.
# 1. Add this repo as a marketplace codex plugin marketplace add damionrashford/RivalSearchMCP --ref main # 2. Install the plugin codex plugin add rival-search-mcp@rival-search-mcp-marketplace # Optional: install the skill-only plugin codex plugin add rival-search-mcp-skills@rival-search-mcp-marketplace

Once installed, start or refresh a Codex session and ask Codex to use RivalSearchMCP. Example prompts:

Use RivalSearchMCP to run web_search for current MCP server comparisons. Use RivalSearchMCP to research this company across news, GitHub, and social sources. Use RivalSearchMCP to find scientific papers about retrieval augmented generation.

If you already added the marketplace and want the latest plugin metadata:

plugins/rival-search-mcp/ ├── .claude-plugin/ │ └── plugin.json # Claude Code manifest ├── .codex-plugin/ │ └── plugin.json # Codex manifest └── .mcp.json # Registers https://RivalSearchMCP.fastmcp.app/mcp plugins/rival-search-mcp-skills/ ├── .claude-plugin/ │ └── plugin.json # Claude Code skill plugin manifest ├── .codex-plugin/ │ └── plugin.json # Codex skill plugin manifest └── skills/ └── rival-search-mcp/ # Agent skill, resources, and CLI helper

- .claude-plugin/marketplace.json— Claude Code
- .agents/plugins/marketplace.json— Codex

- plugins/rival-search-mcp/.claude-plugin/plugin.json— Claude Code manifest
- plugins/rival-search-mcp/.codex-plugin/plugin.json— Codex manifest
- plugins/rival-search-mcp/.mcp.json— hosted MCP server registration
- plugins/rival-search-mcp-skills/skills/rival-search-mcp/— standalone agent skill package

RivalSearchMCP ships with aClaude Code Agent Skill— a self-contained CLI that lets AI agents use all 9 tools without MCP configuration.

Copy the skill into your Claude Code skills directory:

# Project-level (available when working in this repo) cp -r skills/rival-search-mcp .claude/skills/ # Global (available in all projects) cp -r skills/rival-search-mcp ~/.claude/skills/

Claude will automatically discover the skill and use the CLI when you ask for web research, competitor analysis, or content discovery.

The CLI is self-contained with inline dependencies — just run withuv:

uv run skills/rival-search-mcp/scripts/cli.py call-tool web_search --query "your query" uv run skills/rival-search-mcp/scripts/cli.py call-tool social_search --query "AI agents" --platforms reddit uv run skills/rival-search-mcp/scripts/cli.py call-tool news_aggregation --query "tech news" --time-range week uv run skills/rival-search-mcp/scripts/cli.py list-tools
skills/rival-search-mcp/ ├── SKILL.md # Agent instructions (auto-loaded by Claude Code) ├── scripts/ │ └── cli.py # Standalone CLI with all 9 tools └── resources/ ├── search.md # web_search, social_search, news_aggregation, github_search, map_website ├── content.md # content_operations, document_analysis └── research.md # research_topic, scientific_research

- Multi-Engine Search: 5 search engines (DuckDuckGo, Bing, Yahoo, Mojeek, Wikipedia) with TLS-fingerprint-safe fetches via Scrapling
- 9-Platform Social Research: Reddit, Hacker News, Stack Overflow, Dev.to, Medium, Product Hunt, Bluesky, Lobste.rs, Lemmy
- 5-Source News Aggregation: Google News, Bing News, The Guardian, GDELT, DuckDuckGo News — with time-range filtering
- 5 Academic Databases + 4 Dataset Hubs: OpenAlex, CrossRef, arXiv, PubMed, Europe PMC + Kaggle, HuggingFace, Dataverse, Zenodo
- Deterministic Output: no LLM runs inside the server; callers' models do the synthesis
- StructuredToolResult:content_operations scoreandfind_conflictsreturn both markdown (for humans) and parseable JSON (for agent chaining)
- Auto-Quality Scoring: every multi-result tool attaches per-item quality (0-100) and an aggregate confidence signal
- Conflict Detection: finds numeric/date/polarity disagreements across sources with confidence weights
- Document Analysis: PDF / Word / text / images (images via EasyOCR, auto-downloaded)
- Production Hygiene: per-tool timeouts, sliding-window rate limiting, response-size caps, error masking, FastMCP 3.x middleware stack
- Zero Authentication: every tool works without API keys or setup.

Yes. RivalSearchMCP is free and open source under the MIT License. The core tools do not require paid APIs or subscriptions. The hosted server applies fair-use rate limiting; you can self-host if you need different limits.

No. RivalSearchMCP works completely without any API keys, authentication, or configuration. Just add the URL and use all 9 tools immediately.

RivalSearchMCP works with any MCP-compatible client including Claude Desktop, Cursor, VS Code, and Claude Code.

Yes. Clone the repo, runuv sync --extra dev, thenfastmcp run(stdio) orfastmcp run --transport http --host 0.0.0.0 --port 8000(HTTP). Full instructions are in the Getting Started section above.

Deliberately. The server returns deterministic, auditable output so the caller's model can reason over it — a consistent machine can't hallucinate the way a synthesizing one can. If you want an autonomous agent loop, run it in your client.

Contributions are welcome! Whether it's fixing bugs, adding new research tools, or improving documentation, your help is appreciated.
- Fork the Project
- Create your Feature Branch(git checkout -b feature/AmazingFeature)
- Commit your Changes(git commit -m 'Add some AmazingFeature')
- Push to the Branch(git push origin feature/AmazingFeature)
- Open a Pull Request

Found a bug, have a feature request, or want to share how you're using RivalSearchMCP? We'd love to hear from you!

- Report a bug— Help us improve by reporting issues
- Request a feature— Suggest new capabilities you'd find useful
- Share your use case— Tell us how you're using RivalSearchMCP

This is an open source project under theMIT License. If you use RivalSearchMCP, please credit it by linking back toRivalSearchMCP. SeeLICENSEfile for details.

If you find RivalSearchMCP useful, please consider giving it a star. It helps others discover the project and motivates continued development!

Search global news using natural language. Webz.io News Search API returns the most relevant articles and content, with filters for source, country, language, date, sentiment, and category.

Aggregates trending topics from over 20 sources in real-time, with customizable fields and RSS feed support.

All-in-One SEO & Web Intelligence Toolkit API from FetchSERP.

Best people search engine that reduces the time spent on talent discovery.

Access to your site's SEO data — crawl results, Search Console and Analytics, so your assistant can tell you what's broken, what's ranking, and what to fix next.

Official Tavily MCP server for AI search and content extraction, giving MCP clients web search, crawl, and extract tools.

一条工務店で家を建てた施主「ろれさん」のブログ記事と、YouTube/X/Instagram/Web から集めた約3,000件の家づくり Tips を横断検索できる MCP サーバ。すべての結果に出典URLが付きます。

Job search engine with 500k+ listings across Austria, Germany and Switzerland (alleskralle.com).

Hosted MCP server for the APITube News API: search articles from 500,000+ sources in 60+ languages, filtered by sentiment, entities, topics and source quality.

Live Austin-area MLS listings in your AI assistant — active listings, property details, schools, taxes, and neighborhood data for the Austin metro. Free remote MCP server, no install.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.