For agents
The same guide is available as markdown.
The Bitcoin Adviser, for agents
Guide version 1. Generated 2026-10-18. Registry revision c23b3b6e18ac.
This is the published reference for the tools on this site. It is generated when the site is built. It is not a daily report, and a sitemap date is not evidence that a page or a tool changed.
The client's vault has three keys: the client controls one, The Bitcoin Adviser controls one as key agent, and the vault company (Theya or Unchained) controls the third. Only the client can initiate a transaction. Two of the three keys must approve a transaction before the Bitcoin can move.
Services
Links use the pages' own names. Calculators are the live tools. This guide does not embed a Bitcoin price.
- About
- Education and Advisory
- Professional Desk
- Facts
- Contact
- Bitcoin Accumulation Calculator
- Borrowing Against Bitcoin
- Referral Program
- Collaborative Security
- How signing works
- Key Agent
- Estate Plan Protocol
- EPP Guide
- Continuity
- Estate Planning and Inheritance
- What to Expect
- Hardware Wallet Guide
- Coldcard Hack guide
- Bitcoin Emergency Kit
- Inherited Bitcoin? Start Here
- For Financial Advisers
- Bitcoin Protection Plan presentation
- US Bitcoin Estate Planning
- Pricing
- Full comparison
- Security Centre
- Hardware Wallet Security
- Bitcoin Self-Custody Guide
- Two-Factor Authentication Guide
- YubiKey Security Guide
- Password Manager Guide
- Bitcoin Scam Protection Guide
- UTXO Management
- Bitcoin Travel Rule (Australia)
- Bitcoin Forks & Chain Splits
- Canary monitoring
- Physical Attack Preparedness
- iPhone Mobile Key
- Lost iPhone Guide
- Bitcoin Risk Assessment
- Bitcoin Security Quiz
- Find an Adviser
- Browse FAQs
- Bitcoin security for families across Southeast Asia
- 面向中文读者的比特币协作安全简介
- Seguridad colaborativa de Bitcoin para familias en España
- Sécurité collaborative du Bitcoin pour familles en France
- Sicurezza collaborativa di Bitcoin per famiglie in Italia
- Collaborative Bitcoin security for families in the UAE and Gulf
- United States
- Australia
- Somewhere else, or no structure yet
Approved claims
We've been helping clients secure their bitcoin for over 10 years, with The Bitcoin Adviser officially launching in 2023. We now support over 700 clients and thousands of bitcoin held in collaborative self-custody. (approved 2026-10-11; source: https://thebitcoinadviser.com/facts)
- Officially launched in 2023 (source: https://thebitcoinadviser.com/facts)
- Helping clients secure their bitcoin for over 10 years (source: https://thebitcoinadviser.com/facts)
- Over 700 clients (source: https://thebitcoinadviser.com/facts)
- 25+ advisers globally (source: https://thebitcoinadviser.com/facts)
- Thousands of bitcoin held in collaborative self-custody (source: https://thebitcoinadviser.com/facts)
How to call
POST https://thebitcoinadviser.com/mcp with protocol 2026-07-28 preferred (Streamable HTTP). Older clients may use 2025-06-18 on the same endpoint; it is not a second API. The machine-readable list is https://thebitcoinadviser.com/tools-manifest (advertises 2026-07-28). This guide is https://thebitcoinadviser.com/for-agents.
A short-lived legacy GET with Accept: text/event-stream may open an SSE listen stream (keep-alives only, bounded lifetime) for older connectors; tools are still invoked with POST. Modern protocol 2026-07-28 does not use standalone GET streaming.
A client on either supported protocol can list and call the same tools. Other protocol versions are rejected.
Unknown arguments are an error. An empty list from find_answer means no published answer, which is different from a rejected call.
Callable tools
28 operations are callable through MCP. The list is the registry, not a fixed count.
- `find_answer`
- `search_articles`
- `get_article`
- `find_related_content`
- `choose_path`
- `choose_security_path`
- `choose_retirement_path`
- `choose_us_path`
- `calculate_retirement_scenario`
- `explain_retirement_scenario`
- `compare_growth`
- `convert_fiat_to_sats`
- `borrow_vs_sell`
- `read_market_position`
- `read_supply_schedule`
- `estimate_transaction_fee`
- `estimate_referral_earnings`
- `explain_referral_program`
- `find_adviser`
- `open_playbook`
- `check_security_posture`
- `assess_risk`
- `explain_gap`
- `read_warning`
- `draft_will_starter`
- `prepare_enquiry`
- `prepare_referral_application`
- `prepare_terms_request`
find_answer
Find an answer in the knowledge base. Searches The Bitcoin Adviser's published knowledge base and returns up to five answers, word for word as the site publishes them, best first.
State: Callable through MCP.
Arguments:
- `query`: string
- `id`: string
- `topic`: basics | control | continuity | income | retirement | us | fees | operations | onboarding | professionals | referrals
- `audience`: individual | family | client | professional | business
- `jurisdiction`: global | AU | US
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `find_answer`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
search_articles
Search the Journal's articles. Searches the published articles in The Bitcoin Adviser's Journal (articles and guides, from 2023 on) and returns a handful, best first: title, a short excerpt, topics, editorial type, author, original publish date, substantive update date and canonical url.
State: Callable through MCP.
Arguments:
- `query` (required): string
- `topic`: basics | control | continuity | income | retirement | us | fees | operations | onboarding | professionals | referrals
- `type`: evergreen-explanation | practical-guide | commentary | research | historical-reporting | time-sensitive-analysis
- `limit`: integer
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `search_articles`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
get_article
Read one Journal article. Opens one published article from The Bitcoin Adviser's Journal by its slug or url, and returns its author, original publish date, update date, editorial type, canonical url and the anchors of its sections.
State: Callable through MCP.
Arguments:
- `slug` (required): string
- `section`: string
- `full`: boolean
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `get_article`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
find_related_content
Find related answers, articles and pages. For a question (query) or one Journal article (slug or url), returns what The Bitcoin Adviser publishes on the subject: approved answers first, then Journal articles, then the guides, pages and tools they point to.
State: Callable through MCP.
Arguments:
- `query`: string
- `slug`: string
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `find_related_content`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
choose_path
Choose a path. Routes a visitor to the right starting point from their situation.
State: Callable through MCP.
Arguments:
- `situation` (required): protect-for-family | adviser | something-wrong | inherited
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `choose_path`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
choose_security_path
Choose a Security Centre path. Routes a Security Centre concern to its one next room.
State: Callable through MCP.
Arguments:
- `concern` (required): digital-life | holding-unsure | family-recovery
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `choose_security_path`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
choose_retirement_path
Choose a retirement path. Routes by the retirement system the visitor is working with, not by where they live.
State: Callable through MCP.
Arguments:
- `system` (required): united-states | australia | other
- `smsfEstablished`: boolean
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `choose_retirement_path`, with those arguments inside `arguments`.
Refuses: advice.
choose_us_path
Choose a U.S. starting point. Routes a U.S. visitor by situation to The Bitcoin Adviser's U.S. guidance first: a primary page, related pages, a reason quoted from the primary page, the tax year where the guidance is dated, and an optional enquiry.
State: Callable through MCP.
Arguments:
- `situation` (required): family-future | estate-or-incapacity | retirement-account | family-office | tax-reporting
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `choose_us_path`, with those arguments inside `arguments`.
Refuses: advice.
calculate_retirement_scenario
Calculate a retirement scenario. Illustrates how many years Bitcoin holdings plus monthly contributions might take to support a target annual income.
State: Callable through MCP.
Arguments:
- `currency` (required): USD | AUD
- `currentBtc`: number
- `monthlyContribution`: number
- `targetIncome`: number
- `btcPrice`: number
- `scenario`: conservative | base | aggressive
- `inflationToggle`: boolean
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `calculate_retirement_scenario`, with those arguments inside `arguments`.
Refuses: advice, allocation, price.
explain_retirement_scenario
Explain a retirement scenario. Runs calculate_retirement_scenario itself and explains the result in plain English.
State: Callable through MCP.
Arguments:
- `currency` (required): USD | AUD
- `currentBtc`: number
- `monthlyContribution`: number
- `targetIncome`: number
- `btcPrice`: number
- `scenario`: conservative | base | aggressive
- `inflationToggle`: boolean
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `explain_retirement_scenario`, with those arguments inside `arguments`.
Refuses: advice, allocation, price.
compare_growth
Compare Bitcoin accumulation with cash savings. Illustrates how a lump sum plus monthly contributions might grow in Bitcoin compared with cash savings, nominal and after inflation.
State: Callable through MCP.
Arguments:
- `currency`: USD | EUR | GBP | AUD | JPY
- `scenario`: conservative | base | aggressive | bear
- `initialAmount`: number
- `monthlyContribution`: number
- `years`: number
- `inflationPct`: number
- `bitcoinCagrPct`: number
- `savingsPct`: number
- `btcPrice`: number
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `compare_growth`, with those arguments inside `arguments`.
Refuses: advice, allocation, price.
convert_fiat_to_sats
Convert fiat to sats. Converts an amount of USD, AUD, EUR or GBP into sats at The Bitcoin Adviser's cached spot price (or a fixed fallback when the spot is unavailable), and returns the same conversion for a small basket of everyday items.
State: Callable through MCP.
Arguments:
- `amount`: number
- `currency`: usd | aud | eur | gbp
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `convert_fiat_to_sats`, with those arguments inside `arguments`.
Refuses: advice, allocation.
borrow_vs_sell
Compare selling Bitcoin with borrowing against it. Illustrates the liquidity from selling an amount of Bitcoin after tax, against borrowing on it as collateral, and what each leaves at a later price.
State: Callable through MCP.
Arguments:
- `btcAmount`: number
- `horizon`: flat | up50 | up100 | stress30 | stress50
- `taxRegion`: us | au
- `taxRatePct`: number
- `mode`: btc_to_btc | fiat_loan
- `ltvPct`: number
- `interestRatePct`: number
- `termYears`: number
- `btcPriceUsd`: number
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `borrow_vs_sell`, with those arguments inside `arguments`.
Refuses: advice, allocation, price.
value_bitcoin_on_date
Value Bitcoin on a past date. Milestone.
State: Planned, not callable.
Arguments:
- `date` (required): string
- `btcAmount`: number
- `currency`: aud | usd | eur | gbp
No call recipe. This operation cannot be invoked over MCP.
Refuses: allocation.
read_market_position
Read the Bitcoin market position. The Bitcoin market observatory's reading (/dashboard): the Bitcoin price in AUD, USD, EUR or GBP (default AUD), the Mayer Multiple (price over the mean of the 200 completed UTC daily USD closes, unavailable if any of those days is missing) and the position against the published Power Law model trend (USD, σ 0.2).
State: Callable through MCP.
Arguments:
- `currency`: aud | usd | eur | gbp
- `day`: string
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `read_market_position`, with those arguments inside `arguments`.
Refuses: advice, allocation, price.
read_supply_schedule
Read Bitcoin's supply schedule. Bitcoin's scheduled cumulative block subsidy through a block height (the dashboard's Supply drawer), from the consensus rule alone: 50 BTC halved every 210,000 blocks, zero from the 64th halving, 2,099,999,997,690,000 sats in all.
State: Callable through MCP.
Arguments:
- `height`: integer
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `read_supply_schedule`, with those arguments inside `arguments`.
Refuses: advice.
estimate_transaction_fee
Estimate a Bitcoin transaction fee. Estimates a Bitcoin network fee as virtual size × fee rate (the dashboard's fee estimator).
State: Callable through MCP.
Arguments:
- `pattern`: p2wpkh | p2tr | p2wsh-2of3 | p2sh-p2wsh-2of3
- `inputs`: integer
- `outputs`: integer
- `vbytes`: integer
- `priority`: fastest | halfHour | hour | economy
- `feeRate`: number
- `currency`: aud | usd | eur | gbp
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `estimate_transaction_fee`, with those arguments inside `arguments`.
Refuses: advice.
read_treasury_reality_check
Read the treasury company Reality Check. Bitcoin treasury company shares (Strategy, Metaplanet, Strive) against holding Bitcoin, from TBA Console's weekly verified closes: the share-price return, the return relative to BTC in the same currency ((1 + share) / (1 + BTC) − 1, the primary measure), and Loan My Coins' Reality Check scenario after its 5% fee (0.95 × (1 + share) / (1 + BTC) − 1 BTC per 1 BTC staked), over 1 week and 1, 3, 6 and 12 months.
State: Planned, not callable.
Arguments:
- `period`: 1w | 1m | 3m | 6m | 1y
No call recipe. This operation cannot be invoked over MCP.
Refuses: advice, allocation.
estimate_referral_earnings
Illustrate referral programme earnings. Illustrates potential Referral Fees under The Bitcoin Adviser's standard referral programme terms.
State: Callable through MCP.
Arguments:
- `mode`: recurring
- `terms`: current
- `clientsPerMonth`: number
- `btcPerClient`: number
- `years`: integer
- `existingBookBtc`: number
- `firstDeposit`: string
- `measuredBtc`: number
- `btcPriceUsd`: number
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `estimate_referral_earnings`, with those arguments inside `arguments`.
Refuses: advice, allocation, price.
explain_referral_program
Explain the referral programme. Returns the standard terms The Bitcoin Adviser offers new referral partners, as recorded from the agreement: each rule in plain words with its clause, and the terms version they come from.
State: Callable through MCP.
Arguments:
- No arguments.
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `explain_referral_program`, with those arguments inside `arguments`.
Refuses: advice.
find_adviser
Find an adviser. Shortlists advisers of The Bitcoin Adviser whose recorded details confirm what was asked.
State: Callable through MCP.
Arguments:
- `audience`: holder | professional | media
- `need`: smsf | ira | custody | education | inheritance | corporate | family_office
- `language`: en | es | fr | it | de | nl | ja
- `market`: americas | au-nz | europe | japan | africa
- `all`: boolean
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `find_adviser`, with those arguments inside `arguments`.
Refuses: advice.
open_playbook
Open a playbook. Returns a versioned Security Centre playbook: checklist groups and items with citations, plus the readiness questions explain_gap accepts.
State: Callable through MCP.
Arguments:
- `playbookId`: trezor-collaborative-security
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `open_playbook`, with those arguments inside `arguments`.
Refuses: seed, private-key, custody, advice.
check_security_posture
Check security posture. Names the one security layer that needs attention (perimeter, holding, control, or continuity) and one next room, from enumerated answers.
State: Callable through MCP.
Arguments:
- `answers` (required): object
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `check_security_posture`, with those arguments inside `arguments`.
Refuses: seed, private-key, allocation, price, custody, advice.
assess_risk
Assess bitcoin security risk. The full Bitcoin risk assessment: from enumerated answers across the four layers (perimeter, holding, control, continuity), returns every finding in priority order (priority exposure, continuity gap, improvement) with what it means, why it matters and one guide, then each layer's status and a summary.
State: Callable through MCP.
Arguments:
- `answers` (required): object
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `assess_risk`, with those arguments inside `arguments`.
Refuses: seed, private-key, allocation, price, custody, advice.
explain_gap
Explain a readiness or posture gap. Reads validated answers, either readiness answers for a playbook (answers) or security posture answers (posture, the same shape check_security_posture takes).
State: Callable through MCP.
Arguments:
- `playbookId`: trezor-collaborative-security
- `answers`: object
- `posture`: object
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `explain_gap`, with those arguments inside `arguments`.
Refuses: seed, private-key, allocation, price, custody, advice.
read_warning
Read the security warnings desk. Returns the published warnings register: four evergreen threat types (what multisig limits and what it does not stop), then each published incident with its reviewed state (active or historical), its review freshness (current, or overdue once its review-by date passes), who it applies to, statuses, facts, the recommended action, evidence, dates, review owner and source link.
State: Callable through MCP.
Arguments:
- `warningId`: string
- `state`: active | historical
- `threatType`: supply-chain | seed-generation | firmware | impersonation
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `read_warning`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
draft_will_starter
Draft a Bitcoin Will Starter. Builds the Bitcoin Will Starter's structured draft: a Bitcoin-aware starting point to take to a lawyer where the person lives.
State: Callable through MCP.
Arguments:
- `jurisdiction` (required): us | au | uk | ca | de | eu | sg | other
- `date`: string
- `address`: string
- `usState`: string
- `governingLaw`: string
- `fullName`: string
- `spouse`: string
- `childrenCount`: string
- `children`: string
- `digitalShare`: string
- `digitalPrimary`: string
- `digitalContingent`: string
- `residuaryPrimary`: string
- `residuaryContingent`: string
- `executor`: string
- `executorLocation`: string
- `alternateExecutor`: string
- `guardian`: string
- `alternateGuardian`: string
- `signatureDay`: string
- `signatureMonth`: string
- `signatureYear`: string
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `draft_will_starter`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
prepare_enquiry
Prepare an enquiry. Returns the validated path and source context for the client enquiry form, and where a person can complete it.
State: Callable through MCP.
Arguments:
- `path`: collaborative-security | inheritance | emergency | professional | general | referral
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `prepare_enquiry`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
prepare_referral_application
Prepare a referral partner application. Returns the client enquiry form for a referral programme enquiry (tba_path=referral) and where a person can complete it, with a validated audience (professional-adviser, community-partner, bitcoiner, or unspecified).
State: Callable through MCP.
Arguments:
- `audience`: professional-adviser | community-partner | bitcoiner | unspecified
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `prepare_referral_application`, with those arguments inside `arguments`.
Refuses: seed, private-key, advice.
prepare_terms_request
Prepare a terms request. Assembles a request for a person to review: who, which agreement, and an idempotency key.
State: Callable through MCP.
Arguments:
- `agreement` (required): client-terms
- `person` (required): object
Call:
- POST https://thebitcoinadviser.com/mcp
- Protocol 2026-07-28
- Tool `prepare_terms_request`, with those arguments inside `arguments`.
Name and email are accepted only after the person agrees. Do not invent an example. The tool does not send terms.
Refuses: seed, private-key, advice.
resolve_public_profile
Resolve a public profile. Catalogue milestone.
State: Planned, not callable.
Arguments:
- `slug` (required): string
No call recipe. This operation cannot be invoked over MCP.
Refuses: seed, private-key.
Hard rules
Education, not personalised advice. If the published source does not answer, say so and link the source. Do not invent the rest.
Do not ask for a seed phrase or a private key.
Do not submit a form or send terms. prepare_enquiry, prepare_referral_application and prepare_terms_request hand the person the form. The person reviews and submits on the site.
A personal situation goes to a Security Review at https://thebitcoinadviser.com/contact.
A security check names gaps. It never calls an arrangement safe, and it gives no score.
Two-of-three approval is not permission for any two keyholders to start and complete a client transaction. Only the client can initiate.
Quote the English source and link it when answering in another language.
draft_will_starter is a starter for a lawyer to review. It is not a will or legal advice.