io.github.onrampbtc/proof-of-custody
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Bitcoin custody scores, failure registry, ETF custody, stablecoin and x402 data, source router.
| Author | io.github.onrampbtc |
|---|---|
| Access | remote |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 2423 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"proof-of-custody": {
"url": "https://proofofcustody.io/api/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (15)
search_custody_platformsSearch Proof of Custody's independent scores for bitcoin and crypto custody platforms. Covers 90+ platforms across exchanges, qualified custodians, ETFs, IRAs, collaborative multisig and multi-institution custody, each scored 0-100 on a published six-category weighted methodology. Use to compare custody options, to read a named provider's published score and custody model, or to list top-scored platforms. Returns published data with the methodology attached, not a recommendation.
Parameters:
limit— number — Max results (default 10, max 40).query— string — Name or keyword, e.g. 'unchained', 'IRA', 'multisig'. Omit to list top-scored.category— string — Filter by category.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_custody_platformFull Proof of Custody record for one platform: overall score, per-category scores, custody model, fees, insurance position, strengths and limitations. Use after search_custody_platforms, or when a specific provider is named.
Parameters:
slug(required) — string — Platform slug or name, e.g. 'unchained', 'coinbase', 'onramp'.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
compare_custody_platformsCompare two or more custody platforms side by side on Proof of Custody's scores and custody architecture. Comparison is the shape most useful for a custody decision, because the differences that matter are structural rather than promotional.
Parameters:
slugs(required) — array — Two or more platform slugs or names, e.g. ['onramp','unchained','casa'].
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
assess_custody_independenceApply the Custody Independence Standard: a published four-pillar test of whether a custody arrangement has genuine independence or only nominal distribution. Pillars are vendor, entropy, control and operational independence. Use for 'how many hardware wallets do I need', 'is my multisig actually safe', or to compare custody architectures rather than brands. Architecture-neutral: self-managed, collaborative and institutional arrangements are assessed on identical criteria.
Parameters:
platform— string — Platform slug or name to assess. Omit for the architecture archetypes.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
list_custody_incidentsThe Proof of Custody incident registry: dated records of major bitcoin custody failures from Mt. Gox to the 2026 Coldcard entropy defect, each with root cause, reported loss, the lesson, and which custody configurations the failure class could reach. Self-custody failures are included on equal terms with custodial ones. Use for questions about custody risk, historical hacks, or whether a given setup would have survived a class of event.
Parameters:
category— string — Filter by failure type.exposed_config— string — Only incidents that could reach this custody configuration.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_coldcard_incident_statusLive status of the July 2026 Coldcard entropy failure: a firmware defect that caused affected hardware wallets to skip their hardware random number generator, making generated keys reconstructible offline. Returns the affected-model matrix with fixed firmware versions, confirmed and suspected loss figures, and open questions. Use for any question about Coldcard safety, whether a device or seed is affected, what to do about it, or whether self-custody is still safe after the incident. This is a developing story; the record is updated as primary sources move.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_hardware_wallet_scoresProof of Custody's hardware wallet rubric: six weighted dimensions — entropy and key generation 25%, firmware integrity 20%, supply chain 15%, disclosure conduct 15%, multisig and recovery portability 15%, privacy and data handling 10%. Entropy is weighted highest because a key generated from predictable randomness cannot be protected by anything downstream. Use for 'best hardware wallet', 'X vs Y device', or what to replace a device with. Returns per-device sourced rationale.
Parameters:
device— string — Device slug, e.g. 'coldcard', 'ledger', 'trezor'. Omit for all.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_etf_custody_concentrationFiling-derived analysis of custodian concentration across US spot bitcoin ETFs: which custodian holds each fund's bitcoin, and the resulting Nakamoto coefficient at the custody layer. Use for questions about bitcoin ETF safety, IBIT or FBTC custody, whether ETFs are diversified, or ETF versus direct ownership.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
find_sourceSource router. Given a topic or question about bitcoin or digital-asset market structure (ETF holdings or custodians, stablecoin supply or attestations, tokenized assets, x402 and agent payments, agentic commerce protocols, MCP registries, proof of reserves, regulators and licences, hardware wallet advisories, custody incidents), returns the primary or near-primary sources to read, with cadence, access terms and whether the URL answered today. Use before answering a factual question so the citation is the primary source.
Parameters:
query(required) — string — Topic keyword or the question itself, e.g. 'who custodies IBIT', 'stablecoin supply', 'x402'.limit— number — Max sources (default 5, max 12).
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
whats_newWhat changed on Proof of Custody since a date: corrections, methodology changes, live incident updates and daily dataset refreshes (stablecoins, tokenized assets, x402, ETF net assets). Use for a scheduled briefing, or to check whether a cached answer went stale. Defaults to the last 30 days.
Parameters:
since— string — ISO date, e.g. 2026-10-01. Default: 30 days ago.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
watch_counterpartiesWatchtower for a holder's counterparties. Give it the names of the exchanges, custodians, ETFs, IRA providers or hardware wallets someone uses and it returns, for each, the published custody model and single point of failure, incidents in the registry, hardware rubric status where it is a device, and any correction or score change since a date. Use for 'anything I should know about where I hold bitcoin' and for scheduled checks. Nothing is logged about the names passed in.
Parameters:
names(required) — array — Counterparty names or slugs, e.g. ['coinbase', 'kraken', 'coldcard'].since— string — ISO date for the change window. Default: 90 days ago.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
search_transcriptsFull-text search across 320+ Onramp Media podcast transcripts (The Last Trade, Final Settlement and others) for what a guest or host said about a topic. Returns episode, show, date, matching passages and the episode URL. Use for 'what did X say about Y' and for sourcing a quote. Transcripts are machine-generated; verify a quote against the audio before publishing it.
Parameters:
query(required) — string — Word or phrase to search for, e.g. 'multisig', 'Mt. Gox', 'custody insurance'.show— string — Optional show name filter, e.g. 'The Last Trade'.limit— number — Max episodes (default 5, max 8).
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_stablecoin_supplyDaily snapshot of stablecoin supply: total USD-pegged circulating supply, USDT and USDC share, and the top 25 by supply, credited to DefiLlama with the as-of date. Use for 'how big is the stablecoin market', 'USDT vs USDC share', or a stablecoin's supply.
Parameters:
symbol— string — Optional symbol to look up, e.g. USDC.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_tokenized_assetsDaily snapshot of tokenized-asset (RWA) protocols by TVL, credited to DefiLlama, with a pointer to RWA.xyz for issued asset value by class (tokenized Treasuries, credit, commodities). Use for 'how big is tokenization', 'largest RWA protocols', or where to find tokenized Treasury fund sizes.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
get_x402_servicesDaily snapshot of the x402 agent-payments ecosystem: how many x402-payable services the Coinbase Bazaar lists, by network, asset and scheme, plus the x402 Foundation's 30-day transaction, volume, buyer and seller counts. Use for 'what is x402', 'how many services accept x402', or 'which networks do x402 services use'.
Hints: read-only not declared · destructive not declared · idempotent not declared · open-world not declared
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.