Research Scope logo

Research Scope

Plan research, score sources for freshness/COI, and enforce claim-level citations in reports.

Install Research Scope

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "research-scope": {
      "command": "npx",
      "args": [
        "-y",
        "research-scope-mcp"
      ]
    }
  }
}

Settings β†’ Developer β†’ Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-testedβ€” we haven't run this command through our automated sandbox yet. Not a red flag; we're working through the catalog.

Overview

Tools4

What Research Scope lets your agent do. Expand a tool for its parameters.

Self-reported~68 tokens of context

Security & health

What it can reach and how reliably it runs β€” from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 8d ago via OSV.dev Β· research-scope-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks β€” not a rating.

npm downloads295Package downloads in the last 30 days.
Last commit1d agoMost recent push to the default branch.
Tools exposed4Callable tools this server registers over MCP.

From the project README

research-scope-mcp

Turn a scattered source set into a decision-ready, traceable report.

research-scope-mcp is an MCP server that runs a research-to-report workflow any MCP client can drive end to end:

  1. plan_research(scope) β€” turns a research scope into a source-target plan with kill criteria ("fewer than 1 primary + 2 independent secondaries β†’ stop and report insufficient sources, don't proceed on thin evidence").
  2. fetch_and_score(source_url) β€” crawls one source and returns an explainable 0–100 quality score: primary-source detection, publication freshness, paywall and conflict-of-interest flags β€” every dimension returned with the evidence.
  3. build_report(topic, sources) β€” assembles a citation-registry report shell (claims section + numbered registry + scoring appendix) for the scored sources.
  4. check_report(report) β€” verifies every substantive claim cites β‰₯1 scored source. Orphan claims come back as an error list, not a pass.

The problem it solves: agent-written reports that sound confident but can't show where any sentence came from. This server makes scoring and citation coverage mechanically enforced, so the report is auditable by a human in 90 seconds.

Install

Terminal
npm install -g research-scope-mcp   # once published; local: npm ci && npm run build

Run over stdio (most clients):

Terminal
npx research-scope-mcp

Or over Streamable HTTP (remote deployments):

Terminal
npx research-scope-mcp --http --port 3001
# unauthenticated requests get 401 + WWW-Authenticate discovery, never a bare 403

Client config

Drop-in config snippets for Claude Code, Cursor, and a Cline-friendly llms-install.md.

Docker

Terminal
docker build -t research-scope-mcp -f docker/Dockerfile .
docker run --rm -i -p 3001:3001 research-scope-mcp --http --port 3001

Tools

ToolInputOutput
plan_researchscope, optional domain_hintssource-target plan with kill criteria
fetch_and_scoresource_url0–100 score + flags (primary, freshness, paywall, COI), registered for reporting
build_reporttopic, sources[] (must already be scored)report shell saved under data/reports/, [Sn] citation numbering
check_reportreport_id or report_pathpass/fail + orphan-claim error list

Example walkthrough

See docs/runs/ for two worked runs with inputs and outputs, and docs/notes/ for what to do when something times out or 401s.

Demo capture

npm run demo:capture (or node tools/demo-capture.mjs) replays the scripted 60-second demo flow against the shipped server β€” spawn dist/index.js over stdio with a fresh temp data dir, plan_research β†’ fetch_and_score a .gov page (real fetch) β†’ build_report, inject one cited claim plus one deliberately orphan claim, and confirm check_report refuses to bless it β€” writing each frame out as a {t, dir, msg} JSONL transcript. By default it targets docs/marketing/demo-60s/run-capture.jsonl (the transcript the product-page demo player's footer sha256 is anchored to); it refuses to overwrite that file without --force. Requires network access for the one real fetch; repo data/ is never touched.

Scoring rubric

DimensionMaxNotes
Availability & substance20extractable text length
Primary-source status32host class (gov/edu/filings) or self-published primary (press/announcement paths)
Freshness24≀30d full marks, decays to 2 at >5y, 0 if undetectable
Access12paywall/registration walls lose marks
Independence12sponsored/affiliate/partnership markers

score β‰₯ 80 β†’ A, β‰₯ 65 β†’ B, β‰₯ 45 β†’ C, else D. The rubric is inside src/scoring/score.ts and returns its evidence, so a score is auditable, not a vibe.

License

MIT. See SECURITY.md for reporting security issues.

Paid kit

This server is the free, tested core of the Research-to-Report MCP Kit (field guide, worked example packs, setup support). Available at the kit store β€” link in CHANGELOG.md updates.

Reviews

No reviews yet β€” be the first to share how it worked for you.

Frequently Asked Questions about Research Scope

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "research-scope": { "command": "npx", "args": ["-y","research-scope-mcp"] } }

Plan research, score sources for freshness/COI, and enforce claim-level citations in reports.

We don't have confirmed pricing for Research Scope. Listing it on AllMCPs is free, but that says nothing about what the server itself costs β€” check the project's own site for current pricing.

Related MCP servers

Add a badge to your READMEShow it’s listed β€” live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewResearch Scope AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/research-scope?style=directory)](https://allmcps.com/mcp/research-scope)
HTML Embed
<a href="https://allmcps.com/mcp/research-scope"><img src="https://allmcps.com/api/badge/research-scope?style=directory" alt="Research Scope on AllMCPs" /></a>