54ch10-mcp
This server is a 54ch10 MCP wrapper for pre-interaction risk briefs, domain/URL intelligence, and utility tools — analytics-only, not clearance or financial advice.
brief: score (0–100, higher = more concerning), band, flags, summary, sources for EVM address, token, or URL
whois: domain registration, registrar, age, status, nameservers
dns: A/AAAA/MX/NS summary with fraud-signal flags via Cloudflare DoH
tls: TLS/CT certificate issuer, validity window, flags via crt.sh + reachability
normalize-url: canonicalize URLs (lowercase scheme/host, strip fragment, sort query)
fetch: SSRF-safe public URL fetch → status, contentType, markdown/text (200KB cap)
hash / encode: sha256|sha1|md5 hashing and base64|hex|url encoding
paste_write / paste_read: ephemeral TTL-bound paste storage for agent handoff (not a vault)
Batch URL opening (paid, cap 25) plus free/demo tier via header or /free endpoints
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@54ch10-mcp Give me a brief for the token 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
54ch10 MCP — wrap before you click
Job: pre-interact URL risk brief for agents (page_risk, whois/dns/tls, SSRF-safe fetch). Analytics-only — not financial, legal, or investment advice. Not clearance.
Page extraction: GET https://54ch10.uk/v1/fetch?url= at $0.005 (SSRF-safe). Then wrap-before-click with url.open.
npx -y github:sachio222/54ch10-mcpStanding order: https://54ch10.uk/wire.md
Install map: https://54ch10.uk/docs/install-map
Bulk UI: https://linksafu.com/bulk
Smithery: https://smithery.ai/servers/brainpowerux/54ch10-mcp
Primary URL check: url.open → GET /v1/open?q= (score 0–100, lower is better). Paid via stack (X-54ch10-Stack, $1→80) or Bearer 54k_. Free taste: empty BRIEF_API_KEY / X-54ch10-Free / /v1/open/free. Batch: url.open_batch → POST /v1/open/batch (paid-only, cap 25).
Thin Model Context Protocol wrapper around the 54ch10 live HTTPS API.
Live API base: https://54ch10.uk
URL open (primary): https://54ch10.uk/v1/open?q=...
Address/token brief (still): https://54ch10.uk/v1/brief?type=address|token&q=...
Toolkit:
/v1/whois,/v1/dns,/v1/tls,/v1/normalize-url, hash, encode, fetch, pasteBatch:
POST /v1/open/batch{"urls":[...]}— paid-only, cap 25Stack:
GET|POST /v1/stack— $1 → 80 credits, headerX-54ch10-StackFree/demo: header
X-54ch10-Free: 1or/v1/<tool>/freesiblingsOpenAPI: https://54ch10.uk/openapi.json
x402 discovery: https://54ch10.uk/.well-known/x402
Brand: 54ch10
Analytics-only — informational heuristics, not financial, legal, or investment advice. Not clearance.
MCP tools (prefer dots): url.open, url.open_batch, url.fetch, url.normalize, domain.whois, domain.dns, domain.tls, util.hash, util.encode, paste.write, paste.read. Legacy flat aliases (brief, whois, …) still work.
Field | Value |
package name |
|
version |
|
MCP registry name ( |
|
Manifest |
|
Primary install (today) |
|
Jobs (HTTP to MCP)
Standing order: https://54ch10.uk/wire.md Install map: https://54ch10.uk/docs/install-map Bulk UI: https://linksafu.com/bulk
Job | HTTP | MCP |
Open URL | GET /v1/open?q= | url.open type=url |
Address/token brief | GET /v1/brief | url.open type=address |
Bulk open paid cap 25 | POST /v1/open/batch | url.open_batch |
Stack 1 USD to 80 | GET or POST /v1/stack | BRIEF_API_KEY=stack id |
Fetch markdown | GET /v1/fetch | url.fetch |
Domain pack | whois+dns+tls | domain.* |
Related MCP server: IP Intelligence MCP Server
Install / run
Requires Node.js 18+.
Primary
npx -y github:sachio222/54ch10-mcpSee CONFIG.example.json for host config.
Env | Purpose |
BRIEF_API_BASE | API base override |
BRIEF_API_KEY | stack id OR 54k key OR empty free |
BRIEF_STACK_ID | optional stack id alias |
Smoke: https://54ch10.uk/v1/open/free?q=https://example.com
Tools
MCP tool | HTTP |
url.open type=url | GET /v1/open?q= |
url.open type=address | token |
url.open_batch | POST /v1/open/batch |
url.fetch | GET /v1/fetch |
url.normalize | GET /v1/normalize-url |
domain.whois / dns / tls | GET /v1/whois |
util.hash / util.encode | GET /v1/hash |
paste.write / paste.read | POST/GET /v1/paste |
Prompts: wrap_before_click, domain_hygiene, free_taste_demo.
url.open score 0-100 lower is better. HTTP 402 unpaid: use stack or 54k Bearer.
url.open_batch: paid-only, cap 25, concurrency ~3, inflight ~10. Bulk UI: https://linksafu.com/bulk
Auth / payments
Free: empty BRIEF_API_KEY -> X-54ch10-Free
Stack: GET|POST /v1/stack ($1 -> 80). Put stack id in BRIEF_API_KEY -> X-54ch10-Stack
Bearer: BRIEF_API_KEY starting with 54k_ -> Authorization Bearer
x402 on HTTP API (stdio wrapper does not auto-pay)
Indicative: open 0.015, batch Nx0.015, fetch 0.005. Discovery: https://54ch10.uk/.well-known/x402
Registry listing checklist
Live HTTPS; url.open -> /v1/open; open_batch; stack auth
package.json mcpName io.github.sachio222/54ch10-mcp
Public GitHub https://github.com/sachio222/54ch10-mcp
Public npmjs / official MCP Registry (blocked until npmjs)
Do not Discord/X auto-post.
Disclaimer
Informational tooling only. Not financial, investment, legal, or tax advice. Full text: https://54ch10.uk/LEGAL_DISCLAIMER.txt
Available Tools
21 toolsbriefLegacy: brief → url.openARead-onlyIdempotent
Legacy alias for url.open. Prefer url.open. type=url → GET /v1/open; address|token → GET /v1/brief. Score lower is better. HTTP 402 unpaid — stack or Bearer 54k_.
Inputs: q (required), type (required).
dnsLegacy: dns → domain.dnsARead-onlyIdempotent
Legacy alias for domain.dns (GET /v1/dns). Prefer domain.dns.
Inputs: domain (required).
domain.dnsDomain DNSARead-onlyIdempotent
GET /v1/dns — summarize DNS A/AAAA/MX/NS for a domain with fraud-signal style flags. Call with domain.whois / domain.tls for full domain hygiene after url.open. Analytics-only.
Inputs: domain (required).
domain.tlsDomain TLS/CTARead-onlyIdempotent
GET /v1/tls — summarize TLS/CT (issuer, validity, HTTPS reachability) via crt.sh + probe. Call after url.open / domain.dns when certificate age or issuer matters. Analytics-only.
Inputs: domain (required).
domain.whoisDomain WHOIS/RDAPARead-onlyIdempotent
GET /v1/whois — look up domain WHOIS/RDAP (registration, registrar, age_days, status, nameservers). Call after url.open when you need registration age / registrar signals. Analytics-only — not clearance.
Inputs: domain (required).
encodeLegacy: encode → util.encodeCRead-onlyIdempotent
Legacy alias for util.encode (GET /v1/encode). Prefer util.encode.
Inputs: q (required), format.
fetchLegacy: fetch → url.fetchARead-onlyIdempotent
Legacy alias for url.fetch. Page extraction: GET https://54ch10.uk/v1/fetch?url= at $0.005. Prefer url.fetch.
Inputs: url (required), format.
hashLegacy: hash → util.hashARead-onlyIdempotent
Legacy alias for util.hash (GET /v1/hash). Prefer util.hash.
Inputs: q (required), algo.
normalize-urlLegacy: normalize-url → url.normalizeARead-onlyIdempotent
Legacy alias for url.normalize (GET /v1/normalize-url). Prefer url.normalize.
Inputs: q (required).
paste.readRead ephemeral pasteARead-onlyIdempotent
GET /v1/paste — retrieve an ephemeral paste by id from paste.write before TTL expiry. Agent handoff only — not a vault.
Inputs: id (required).
paste_readLegacy: paste_read → paste.readARead-onlyIdempotent
Legacy alias for paste.read (GET /v1/paste). Prefer paste.read.
Inputs: id (required).
paste.writeWrite ephemeral pasteAIdempotent
POST /v1/paste — store a short ephemeral paste (KV TTL default 1h, max 24h) and return an id. Agent handoff only — not a vault. Pair with paste.read.
Inputs: content (required), ttl_seconds.
paste_writeLegacy: paste_write → paste.writeAIdempotent
Legacy alias for paste.write (POST /v1/paste). Prefer paste.write.
Inputs: content (required), ttl_seconds.
tlsLegacy: tls → domain.tlsARead-onlyIdempotent
Legacy alias for domain.tls (GET /v1/tls). Prefer domain.tls.
Inputs: domain (required).
url.fetchPage extraction (paid)ARead-onlyIdempotent
Page extraction / public URL to markdown. GET https://54ch10.uk/v1/fetch?url= at $0.005. SSRF-safe; returns status, contentType, markdown|text (200KB cap). Use after url.open when you need page body, not just risk signals. Analytics-only.
Inputs: url (required), format.
url.normalizeNormalize URLARead-onlyIdempotent
GET /v1/normalize-url — canonicalize a URL (scheme/host lowercased, fragment stripped, query sorted) before comparing or opening. Call before url.open when the URL is messy or duplicated. Analytics-only.
Inputs: q (required).
url.openOpen URL / risk briefARead-onlyIdempotent
Maps to GET /v1/open for URL checks (page_risk, whois, page). Score 0–100, lower is better. HTTP 402 when unpaid — prefer X-54ch10-Stack or Bearer 54k_ via BRIEF_API_KEY. For type=url calls /v1/open?q=; for address|token keeps GET /v1/brief?type=&q=. Call first for wrap-before-click; then domain.whois / domain.dns / domain.tls. Analytics-only.
Inputs: q (required), type (required).
url.open_batchBulk open URLs (paid)A
POST /v1/open/batch with JSON {urls:[...]}. Paid-only (stack X-54ch10-Stack or Bearer 54k_); no free path — HTTP 402 without credits. Cap 25 URLs per request. Server concurrency ~3; global inflight ~10. Prefer for allowlists; human bulk UI: https://linksafu.com/bulk. Each URL gets the same page_risk brief as GET /v1/open. Analytics-only.
Inputs: urls (required).
util.encodeEncode textARead-onlyIdempotent
GET /v1/encode — encode text as base64, hex, or url-encoding. Utility for safe transport of strings between tools.
Inputs: q (required), format.
util.hashHash textARead-onlyIdempotent
GET /v1/hash — hash UTF-8 text (sha256|sha1|md5) to hex + base64. Utility for fingerprints — not crypto advice. Analytics-only utility.
Inputs: q (required), algo.
whoisLegacy: whois → domain.whoisARead-onlyIdempotent
Legacy alias for domain.whois (GET /v1/whois). Prefer domain.whois.
Inputs: domain (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 21 tools
The set includes ten legacy aliases that duplicate primary tools exactly (brief vs url.open, whois vs domain.whois, etc.), so many tools effectively do the same thing. Even though descriptions label the aliases, an agent must choose between redundant names.
Primary tools use a clean resource.action style (url.open, domain.whois, paste.read), but this is mixed with url.open_batch, bare legacy names like brief and dns, and hyphenated normalize-url. The naming is not chaotic but it is inconsistent across the full tool set.
21 tools is borderline heavy, and roughly half are legacy duplicates of the primary 11 tools. The unique surface is reasonable, but exposing aliases as separate tools inflates the count.
The toolset covers the core URL risk workflow: normalize, open/batch, fetch, plus domain enrichment (whois/dns/tls) and small utilities. Minor gaps like no explicit domain reputation endpoint or batch result retrieval can be worked around.
Maintenance
Related MCP Connectors
Enrich, search, assess, and manage threat intelligence through 80+ typed MCP tools.
Free, read-only public-source threat intel over MCP. No account or API key.
Free MCP server of security & dev API tools -- supply-chain, CVE, DNS, WHOIS, OFAC, Cosmos SDK.
Crypto scam checks (tokens, sites, wallets), chain reads, web page to Markdown, email checks.
Related MCP Servers
AlicenseNot gradedqualityBmaintenanceWraps the ScanMalware.com API to enable phishing triage, malware scanning, and certificate inspection through natural language, allowing users to submit scans, retrieve results, and analyze threats via MCP tools.1Apache 2.0- AlicenseNot gradedqualityDmaintenanceProvides MCP tools for IP threat intelligence lookup and enrichment, including single IP lookup, bulk hunting, ASN expansion, and feed status queries.MIT
- AlicenseAqualityDmaintenanceMCP server that exposes urlscan.io as tools for security investigations, with compact results optimized for context windows. Enables pivoting on indicators, searching scans, retrieving screenshots, DOM, and scan results, and submitting URLs.6MIT
- AlicenseAqualityBmaintenanceEnables MCP clients to check URLs for scam/phishing risks, get verdicts with confidence and severity, report false positives, and monitor plan usage.311 npmMIT