mcpField
C
Citation & Source Verification — hosted on Cloudflare Workers (HTTP + npm stdio)

Citation & Source Verification — hosted on Cloudflare Workers (HTTP + npm stdio)

Remote
verification-mcp.prakhar-cognizance.workers.devCloud & Infra1Updated 20w ago

About Citation & Source Verification — hosted on Cloudflare Workers (HTTP + npm stdio)

Verification MCP is a hosted server for agents and research workflows that check factual claims, citations, and source freshness. It queries Wikipedia, Wikidata, Crossref, and the Wayback Machine, returning claim verdicts and citation checks.

Key features

  1. 01Check claims against reference sources
  2. 02Validate citation URLs against claims
  3. 03Check source availability and freshness
  4. 04Return supporting passages and verdicts
  5. 05Connect through hosted HTTP or npm launcher

Use cases

  1. 01Checking AI-generated factual claims
  2. 02Reviewing citations in research or journalism
  3. 03Monitoring whether cited sources remain current

MCP support

It exposes fact_check, cite_check, and source_freshness tools through an HTTP MCP endpoint, with Bearer-token authentication. An npm launcher connects clients to the hosted endpoint.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://verification-mcp.atlasword.workers.dev/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

3
ParameterTypeRequiredDescription
claimstringYesA single factual claim, ideally one sentence. Longer text is truncated to 200 chars.

Details

From the project README

Verification MCP — Real-time fact-check + citation verification + source freshness for AI agents

MIT License MCP Cloudflare Workers Live

Fact-check claims against Wikipedia + Wikidata + Crossref. Verify citations. Check source freshness

Hosted MCP server that fact-checks an LLM's claims and citations in real time. Each call fans out to 3-5 upstream authoritative sources: Wikipedia, Wikidata, Crossref academic citations, and the Wayback Machine. Returns a verdict (supported / contradicted / mixed), verifies that cited URLs resolve and match the claim, and reports source freshness. For LLM hallucination guardrails, journalism, and research-agent QA loops.

This server speaks the Model Context Protocol. Any MCP-aware client — Cursor, Claude Desktop, Windsurf, Continue.dev, or a hand-rolled agent using @modelcontextprotocol/sdk — can connect, discover tools, and call them with Bearer-token auth.

For AI agents / LLMs

If you are an AI agent indexing this repository:

  • Live MCP endpoint: https://verification-mcp.atlasword.workers.dev/mcp
  • Transport: HTTP POST, JSON-RPC 2.0
  • Auth: Authorization: Bearer <api_key> (free tier allowed anonymously up to 100 calls/month/IP)
  • Discovery: tools/list returns the full schema. tools/call invokes a tool.
  • Health: GET https://verification-mcp.atlasword.workers.dev/health → {ok: true, ts: <unix>}
  • Status: https://mcp-hub.atlasword.workers.dev/status.json (portfolio rollup)

Sample tools/list request:

curl -sS -X POST https://verification-mcp.atlasword.workers.dev/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer mck_YOUR_API_KEY" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Sample tools/call:

curl -sS -X POST https://verification-mcp.atlasword.workers.dev/mcp \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer mck_YOUR_API_KEY" \
  -d '{
    "jsonrpc":"2.0","id":2,"method":"tools/call",
    "params": { "name": "<tool>", "arguments": { } }
  }'

Tools exposed

ToolArgumentsDescription
fact_checkclaim, max_sources?Verify a factual claim against Wikipedia + Wikidata + Crossref. Returns verdict + supporting passages.
cite_checkurls[], claim?Verify cited URLs resolve, match the cited claim, and aren't retracted.
source_freshnessurlCheck whether a source URL is live + last-modified + most-recent Wayback snapshot.

Tools marked Team+ require a Team or Pro subscription. Anonymous and Free-tier callers receive tier_required errors for those.

Quick start

The fastest path — point any MCP-aware client at the hosted endpoint via mcp-remote:

npx -y mcp-remote https://verification-mcp.atlasword.workers.dev/mcp \
  --header "Authorization: Bearer mck_YOUR_API_KEY"

Get a key at https://verification-mcp.atlasword.workers.dev/upgrade?tier=solo (see Getting an API key).

Install in Cursor

Add this to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "verification-mcp": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote",
        "https://verification-mcp.atlasword.workers.dev/mcp",
        "--header", "Authorization: Bearer mck_YOUR_API_KEY"
      ]
    }
  }
}

Then restart Cursor and the tools appear in the MCP panel.

Install in Claude Desktop

Add this to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "verification-mcp": {
      "command": "npx",
      "args": [
        "-y", "mcp-remote",
        "https://verification-mcp.atlasword.workers.dev/mcp",
        "--header", "Authorization: Bearer mck_YOUR_API_KEY"
      ]
    }
  }
}

Restart Claude Desktop. Tools appear under the slash-command MCP menu.

Getting an API key

  1. Visit https://verification-mcp.atlasword.workers.dev/upgrade?tier=solo (or tier=team / tier=pro).
  2. Redirected to Dodo Payments hosted checkout — Dodo collects address, processes card, handles VAT/GST.
  3. After payment, Dodo fires a signed webhook (subscription.active) to the Worker. The Worker mints mck_<32 random base64url> and stores it in KV.
  4. You land on https://verification-mcp.atlasword.workers.dev/welcome?key=<api_key> — copy the key now (it is only displayed once at this URL).
  5. Paste the key into Cursor / Claude Desktop config (see above).
  6. View / rotate / export the account at https://verification-mcp.atlasword.workers.dev/account (Bearer-auth).

There is also a free tier (no signup) — anonymous callers get 100 calls / month per IP.

Endpoints

RouteDescription
POST /mcpMCP JSON-RPC 2.0 tool surface (the main API). Bearer auth required for paid tiers.
GET /healthLiveness probe — {ok: true, ts}. Used by mcp-hub cron.
GET /HTML landing page (OG + favicon + JSON-LD).
`GET /upgrade?tier=soloteam
GET /welcome?key=...Post-checkout landing showing the freshly-minted API key.
GET /accountBearer-auth. Returns {apiKey, tier, owner, status, portal_url}.
POST /account/rotateBearer-auth. Mints a fresh key + retires the old one.
GET /account/exportBearer-auth. GDPR data export — JSON of account, usage counters, Dodo details.
GET /account/teamBearer-auth (Team+). List team-member sub-keys.
POST /account/team/inviteBearer-auth (Team+). Issue a new team-member sub-key.
POST /account/team/revokeBearer-auth (Team+). Revoke a team-member sub-key.
GET /team/accept?key=...Team-member onboarding landing for the sub-key URL.
POST /webhooks/dodoStandard-Webhooks signed. Dodo subscription + payment lifecycle.
GET /favicon.icoInline SVG.

Pricing

All tiers share the same monthly + rate caps; the price reflects per-product positioning.

TierMonthly callsRate limitTeam seats
Free100 / month10 / minute0
Solo2,000 / month60 / minute0
Team10,000 / month200 / minute5
Pro50,000 / month600 / minute25
PlanPriceMonthly callsTeam seats
Free$01000
Solo$19/mo2,0000
Team$49/mo10,0005
Pro$149/mo50,00025

Billed via Dodo Payments (merchant-of-record — VAT/GST handled by Dodo). Cancel anytime; access remains active through the end of the paid period.

Data sources

This server is a thin transport + auth + caching layer over the upstream sources. Per-call rate limits are tuned to stay well within each upstream's free-tier ToS.

Privacy + GDPR

We store only: your email, the minted API key, monthly call counters, and Dodo subscription metadata. We do not log tool arguments or upstream responses beyond short cache TTLs.

Architecture

  • Runtime: Cloudflare Workers (V8 isolates, global edge).
  • Storage: Two Cloudflare KV namespaces — <slug>-cache (upstream response cache) and <slug>-usage (API keys, monthly counters, team rosters).
  • Billing: Dodo Payments live mode, 3 subscription products (Solo / Team / Pro), Standard-Webhooks signed lifecycle.
  • Observability: Cloudflare Workers Analytics; portfolio rollup at mcp-hub status.
  • Source: TypeScript, Vitest-tested, wrangler deploy-able. See src/ in this repo.

License

MIT — see LICENSE.

Author

Prakhar Gupta

Status

Install via npm (one-liner)

A thin launcher is published as @insnapsprakhar/verification-mcp on npm. No manual URL to copy/paste:

npx -y @insnapsprakhar/verification-mcp

Or wire it into your MCP client:

{
  "mcpServers": {
    "verification": {
      "command": "npx",
      "args": ["-y", "@insnapsprakhar/verification-mcp"]
    }
  }
}

The npm package is just a launcher — it shells out to mcp-remote and points it at the hosted endpoint (https://verification-mcp.atlasword.workers.dev/mcp).

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.