Server data from the Official MCP Registry
Which domain officially belongs to which software product or company. Ownership only, never safety.
About
Which domain officially belongs to which software product or company. Ownership only, never safety.
Security Report
The Realurls MCP server is well-structured code with appropriate security practices for its intended purpose as a domain-verification registry. Authentication and authorization are not applicable to a read-only registry API. Code quality is solid with proper input validation, HTML escaping, and no dangerous patterns. Permissions align with the server's purpose: network HTTP access for API queries and file I/O for dataset management are standard and appropriate for a developer tool that provides domain verification data. Supply chain analysis found 1 known vulnerability in dependencies (0 critical, 1 high severity). Package verification found 1 issue (1 critical, 0 high severity).
5 files analyzed · 6 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
Unverified package source
We couldn't verify that the installable package matches the reviewed source code. Proceed with caution.
What You'll Need
Set these up before or after installing:
Environment variable: REALURLS_API
How to Install
Add this to your MCP configuration file:
{
"mcpServers": {
"io-github-zhouchungong-realurls": {
"env": {
"REALURLS_API": "your-realurls-api-here"
},
"args": [
"-y",
"realurls-api"
],
"command": "npx"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
Realurls registry
An open registry of which domain belongs to which organization. Every claim is backed by reproducible machine evidence and delivered straight into the paths AI agents actually use — MCP and a plain HTTP API.
Ownership only, never safety. We would rather say "don't know" than be wrong.
Site: https://realurls.org · API: https://api.realurls.org · MCP: npx -y @realurls/mcp · Signed dataset: latest release
中文说明见 docs/zh/README.md。
Why this exists
AI assistants and search engines increasingly answer "what is X's official site?" and "where do I download X?". In 2026 that path was attacked in public: an SEO-poisoning campaign pushed fake download sites to the top of search results (the Black Cat campaign infected roughly 278,000 machines), security vendors documented lookalike sites impersonating Claude Code and Gemini CLI, and Microsoft confirmed cases where users asking an LLM for a download link were sent to attacker-controlled domains.
The root cause is simple: there is no open, programmable, evidence-backed source of truth for "which domain is really theirs".
The blacklist side is saturated (PhishTank, Phishing.Database, openSquat…). Those answer "is this domain bad?". Realurls answers the other question: "who does this domain belong to?"
How this differs from a curated list
A list says "trust me, this is the official site". We say "here are five independent pieces of evidence, with the commands — run them yourself".
# Why we say anthropic.com belongs to Anthropic — check it yourself
curl -s https://api.github.com/orgs/anthropics | jq '{name, blog, is_verified}'
# {"name":"Anthropic","blog":"https://anthropic.com","is_verified":true}
# ↑ GitHub already performed a DNS-level domain-control check for us
The full trust model is in TRUST.md; the decision rules are in POLICY.md.
Status
✅ M0 TRUST.md / POLICY.md / policy.py / positive + adversarial regression tests
✅ M1 Evidence pipeline; `python -m src.verify <domain>` end to end
✅ Review fixes entity anchoring / fail-closed domain age / A6 first-party link / A3 list / A7 gov TLD / +6 adversarial cases
✅ M2 220-org survey → 53 entities generated by the pipeline; daily re-verification; reproducible dist/ + cosign signatures
✅ M3 api.realurls.org live; @realurls/mcp on npm; listed in the official MCP Registry
✅ M4 realurls.org evidence pages, category browsing, /builders and /verify; browser extension built (store listing pending)
✅ M5 Scale-out: D1 storage, bulk sources, sharded batch builds, AI review layer, App Store anchor (A9), owner self-attestation,
on-demand examination of anything the API is asked about, remote MCP endpoint, aggregate demand
First category was AI and developer tools. The registry is now expanding to every software company and open-source project with a real footprint, in reviewed batches. Target: 10,000+ organizations, browsable by category on realurls.org. Precision stays the only hard metric; coverage follows the evidence.
Quick start
pip install -e ".[dev]"
# The project needs no pytest plugins; isolate from any broken third-party plugin in your environment:
PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 pytest tests -q
python -m src.validate # validate entities/: schema, status recomputed from evidence, neutral wording, uniqueness
python -m src.revalidate # daily re-verification (CI runs it; locally use --dry-run --only <domain>)
python -m src.build # entities/ → dist/ (registry.json / domains.json / entities.json / domains.txt / sqlite / manifest)
# Verify one domain end to end and print the full evidence chain with reproduction commands
python -m src.verify anthropic.com
python -m src.verify claude.ai --anchor anthropic.com # propagation from a verified sibling
# Scaling: generate candidate seeds in batches, run the pipeline sharded, review, merge
python -m src.seeds --source github --min-stars 5000 --out-dir seeds --prefix gh # ~2,500 seeds per file
python -m src.build_entities seeds/gh-01.jsonl --shard 0/16 # one of 16 parallel runners
python -m src.review_ai --changed-since origin/main --dry-run # AI audit: flag-only, never promotes
The Build entities from seeds workflow runs the same thing across 16 runners and opens a bot pull request per batch; nothing reaches main before the rules regression and the 200-record manual sample pass.
from src.policy import DomainFacts, Evidence, decide
# Anchor the entity first (here: the result src/anchor.py derives from Wikidata Q116758847), then judge the domain
d = decide(
DomainFacts(domain="anthropic.com", age_days=9104,
expected_github_org="anthropics", expected_wikidata="Q116758847",
anchor_sources=("wikidata:Q116758847/P2037",)),
[
Evidence("A1", {"org": "anthropics", "org_verified": True, "blog": "https://anthropic.com"}),
Evidence("A3", {"registrar": "MarkMonitor Inc.", "remaining_days": 2584,
"locks": ["delete", "transfer", "update"]}),
Evidence("B1", {"qid": "Q116758847"}),
Evidence("B4", {"history_days": 1800}),
],
)
print(d.status, d.confidence, d.reasons)
# verified 0.9303 ['2 independent anchor(s) + 2 independent corroboration(s): meets the verified threshold']
# Without entity anchoring the same evidence is rejected — "proof of control is not proof of ownership"
d = decide(DomainFacts(domain="anthropic.com", age_days=9104), [...])
# provisional rejected=['A1: entity not anchored: …']
Repository layout
TRUST.md ← read this first: what we verify, what we don't, how to reproduce, how to dispute
POLICY.md ← human-readable mirror of the decision rules
CHANGELOG.md ← rule changes with their effect on records; API and integration changes
SECURITY.md ← threat model, including threats to this repository itself
entities/ ← data (YAML, one file per entity). Never hand-edited; written only by the pipeline
src/policy.py ← the decision engine: the single source of truth
src/collectors/ ← evidence collectors (they translate the outside world; they never judge)
tests/ ← positive cases + adversarial corpus of ways to fool the rules
api/ ← Cloudflare Worker serving api.realurls.org and realurls.org
mcp/ ← @realurls/mcp server
extension/ ← browser extension (Manifest V3)
docs/zh/ ← Chinese versions of the core documents
Contributing
You contribute leads, not data. Open an issue; a bot collects the evidence and decides whether the record qualifies. See CONTRIBUTING.md.
If you control a domain, a single DNS TXT record (A5) overrides any verdict of ours.
License
- Data (
entities/,dist/): CC BY-SA 4.0 - Code (
src/,tests/,api/,mcp/,extension/): MIT
Disclaimer
Realurls judges domain ownership only. It does not judge whether a site is safe, lawful, or any good. A domain marked verified means it really belongs to that organization — not that it is safe. For safety, rely on Google Safe Browsing, VirusTotal and similar services.
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
