com.bitcoincreditstack/mcp
REMOTE · MCP.BITCOINCREDITSTACK.COM
The Bitcoin credit markets, measured. Cross-venue rates, venue criteria, chain indicators.
Available components
Last scanned (21 hours ago)
Scores higher than 76% of remote servers
Reachable. Last reached 4 Nov 2026.
Category Finance and Payments
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security57
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not fully verified: no authorisation is required to call this server, and 28 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe. See how to fix → View diagnostics → Unverified
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability74
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 9115 tokens (~284/item across 32 items; 28 tools + 4 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
- Stability observed for 29 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 28 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 30 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 4 Nov 26 0
- Stability: pass → 0.97 functional
- 23 Oct 26 0
- Tool “get_chain_series” rewrote its description, which is the text the model reads security
- Tool “get_cost_basis” rewrote its description, which is the text the model reads security
- Tool “get_mvrv” rewrote its description, which is the text the model reads security
- Tool “get_series” rewrote its description, which is the text the model reads security
- Tool “list_chain_series” rewrote its description, which is the text the model reads security
- 22 Oct 26 0
- The server rewrote its instructions, which are the text every model session reads security
- New tool “get_balance_sheet” functional
- 20 Oct 26 0
- Schema quality: good → excellent functional
- New tool “get_fund_holdings” functional
- 19 Oct 26 0
- Tool “get_corporate_instruments” rewrote its description, which is the text the model reads security
- Tool “get_debt_by_collateral” rewrote its description, which is the text the model reads security
- “get_corporate_instruments” added an optional parameter “issuer” cosmetic
- 18 Oct 26 0
- Tool “get_corporate_instruments” rewrote its description, which is the text the model reads security
- Tool “get_credit_state” rewrote its description, which is the text the model reads security
- Schema quality: excellent → good functional
- 16 Oct 26 0
- Tool “get_corporate_instruments” rewrote its description, which is the text the model reads security
- Schema quality: good → excellent functional
- New tool “get_event_post_kit” functional
- New tool “get_events” functional
- 14 Oct 26 0
- Tool “get_credit_state_history” rewrote its description, which is the text the model reads security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Nov 2026 · Probed https://mcp.bitcoincreditstack.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.bitcoincreditstack.com | CN=YE2,O=Let's Encrypt,C=US | 28 Oct 2026 | 26 Jan 2027 | ECDSA 256 | ECDSA-SHA384 | 5ac51cc1c7da0e3857b7a5a5942408ed61f |
| SANs: api.bitcoincreditstack.com, mcp.bitcoincreditstack.com | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.bitcoincreditstack.com. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| bitcoincreditstack.com. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.bitcoincreditstack.com/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.bitcoincreditstack.com/mcp | HTTPS enforced | 301 | https://mcp.bitcoincreditstack.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
compare_venues Credit cost across venues ~240
What does credit at this tenor and LTV cost across every venue Aletheia covers? One row per venue in coverage-matrix order — no ranking, no default sort, no "best". Standard questions this tool answers (get_guide with question): SQ-C2.
| Name | Type | Req | Description |
|---|---|---|---|
| class | string | – | Restrict to one credit class. The whole matrix is every venue in the registry; one class is a fraction of it. |
| collateral | string | – | Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. |
| ltv | number | – | Loan-to-value as a decimal 0–1, not a percentage. |
| side | string | – | 'borrow' (what a borrower pays, the default) or 'lend' (what a capital provider earns). |
| tenor_days | number | – | Loan term in days to compare at. |
| venues | string | – | Comma-separated registry ids to restrict the rows to, e.g. 'aave_v3_ethereum,cefi_ledn'. |
No output schema declared.
No examples provided.
get_balance_sheet Balance sheet of the mined bitcoin ~326
Who holds the mined bitcoin, as each holder states it, and how much of it is pledged, wrapped or lent out. One line per holder (companies, spot funds, wrapped-token reserves, custodians, exchanges, governments), each with its figure or a range, its date, its source and a grade (A stated units; B units by a stated rule; C the holder's own unchecked statement; D inferred outside primary sources), or an absence with its reason, never zero. A coin is counted once, at its owner: what a custodian holds for funds or wrapped tokens is taken out of its line, and fund shares or coins held for a victim are listed, not added. Three totals (holders that disclose; with custody for owners who do not; with governments) and the remainder not attributed to a disclosed holder, described by the age of its coins and the amount each address holds, never by who holds it. Pledged, wrapped and lent-out bitcoin is a second view, never added. Governments with a figure carry their debt beside GDP and beside the dollar value of that bitcoin. Nothing is ranked. Pass as_of (YYYY-MM-DD) for a written date, or quarter (YYYY-Qn) for a quarter's last day, which is fixed once that quarter's filings are in. Returns the route's payload as served.
| Name | Type | Req | Description |
|---|---|---|---|
| as_of | string | – | A date the sheet was written (YYYY-MM-DD); the latest by default |
| quarter | string | – | A quarter (YYYY-Qn): the sheet of that quarter's last day |
No output schema declared.
No examples provided.
get_chain_series One chain, miner or price series through time ~313
Returns one series from Aletheia's vintage store, by id (see list_chain_series): every value with its date and kind, the series' unit, source and limitation, and the vintages the values came from. With as_known_on, returns the series exactly as the store held it at the end of that day (UTC), so a past answer can be reproduced. Chain series reach back to 2009 and are day-granular. Priced values (realised value, MVRV, SOPR, hashprice in USD) value each coin at the price of the day it was created: Aletheia's on-chain fixing from 2020-07-13, the legacy daily price (CoinGecko, CryptoCompare and Binance backfills) before. Such points carry coingecko_share and price_today, and the response's licence block carries the attribution: show it with them. This tool returns data; it does not advise, forecast, or characterise the market.
| Name | Type | Req | Description |
|---|---|---|---|
| as_known_on | string | – | YYYY-MM-DD: the series as the store held it at the end of that day (UTC) |
| from | string | – | First date, YYYY-MM-DD |
| id | string | yes | Series id, e.g. chain.cohort.supply_btc, chain.cohort.mvrv, miner.hpx_btc, price.btc_in_basket, fx.eur |
| to | string | – | Last date, YYYY-MM-DD |
No output schema declared.
No examples provided.
get_chart A chart of series, drawn in the house style ~378
Draws the series get_series would return for the same request (ids from list_series, the same window and as_known_on) as an SVG image in the Stack's house style: exactly the chart plan's panels, one unit each; rate axes from zero; a refused series not drawn; an absence a gap, never a zero; coverage steps marked; the sources, span, number of values, any as-known-on date and every credit printed under the chart, with the link that draws it on the site. size: 'site' (default) or 'post' (a social-post format); log: 'upper' or 'lower' draws that panel on a log axis where the plan offers one; title adds a heading. Returns the SVG as an embedded resource (image/svg+xml) and the public URL that serves the same image, so it can be shown or linked. A request whose series the plan draws none of is refused with the plan's reasons. Show the credits with the chart. This tool draws data; it does not advise, forecast or characterise the market.
| Name | Type | Req | Description |
|---|---|---|---|
| as_known_on | string | – | YYYY-MM-DD: every series as the store held it at the end of that day (UTC) |
| from | string | – | First date, YYYY-MM-DD (default: a year before `to`) |
| ids | array | yes | Series ids from list_series, e.g. ['cx.index.bsbs', 'cx.market.secured.borrow_spread_over_ust_3m'] |
| log | string | – | Draw that panel on a log axis, where the plan offers one |
| size | string | – | 'site' (default) or 'post' |
| title | string | – | A heading for the chart |
| to | string | – | Last date, YYYY-MM-DD (default: today) |
No output schema declared.
No examples provided.
get_corporate_instruments Corporate instruments (preferreds and debt) ~437
Lists the instruments of the corporate issuers in the registry (convertible notes, credit facilities, bonds, perpetual preferreds), one row per instrument, as the site's /instruments pages show them: terms, seniority, the yield a holder receives where a last regular-session trade prices it, returns, and the issuer's bitcoin holdings. The holding is the latest-dated figure read from a filing; btc_holdings_derived, beside it, is the last read plus the purchases filed since ("derived from filed purchases"), display only, never in backing_ratio, and confirmed or corrected by the next read. Corporate lending, not bitcoin-backed credit: a holder lends to the issuer with no lien on its bitcoin, except where the issuer has pledged bitcoin against a facility. btc_backing also carries the debt attributed to bitcoin, beside the filed debt: for each company holding at least 100 BTC (a subsidiary counted at its parent), bitcoin-pledged debt counts in full (no more than the pledged coins' value where the line states them), debt secured by other assets at zero, and unsecured debt and preferred stock at the company's unencumbered share of assets. It is a stated convention applied to filed figures, not a measurement; total assets, each debt line and its security are served beside it, and a company whose figure cannot be attributed says why. Income in the returns is what the terms accrue, not what was confirmed paid (returns_convention says so). Prices are IEX's, credited in the answer's attribution. Without issuer, every instrument is returned and each company's attribution is summarised: its unencumbered share, total assets, the dates of its balance sheet and debt lines, and how many debt lines it has. Pass issuer (e.g. 'strategy') for that company's instruments and its full attribution, every debt line with its security and source. Standard questions this tool answers (get_guide with question): SQ-Co1.
| Name | Type | Req | Description |
|---|---|---|---|
| issuer | string | – | A corporate issuer id (e.g. 'strategy'): its instruments and its full attribution, debt line by debt line |
No output schema declared.
No examples provided.
get_cost_basis Bitcoin supply by cost basis (one day) ~285
Returns Bitcoin's supply alive at the end of one UTC day, grouped by the BTC price on the day each coin was created, in logarithmic price buckets of a chosen width (ratio, default 1.02: each bucket spans 2%). Built from Aletheia's own node, block by block; day-granular. Creation prices are Aletheia's on-chain fixing from 2020-07-13 and the legacy daily price (CoinGecko, CryptoCompare and Binance backfills) before; each bucket states how much of it is priced from the legacy price (coingecko_btc), and the licence block carries the attribution. Coins created before 2010-07-17 have no price and form one bucket at 0. This tool returns data; it does not advise, forecast, or characterise the market. Returns: { date, ratio, unit, buckets: [{ low_usd, high_usd, btc, coingecko_btc }], limitation, licence }. Standard questions this tool answers (get_guide with question): SQ-Ch4.
| Name | Type | Req | Description |
|---|---|---|---|
| date | string | yes | The day, YYYY-MM-DD (a complete day: up to the day before the latest) |
| ratio | number | – | Bucket width as a price ratio, 1.005 to 2 (default 1.02) |
No output schema declared.
No examples provided.
get_credit_state The Bitcoin credit surface, now ~388
What does Bitcoin-collateralised credit cost and how much of it is outstanding, across the venues this dataset covers? One reading aggregated over the venue universe, not any single venue's book. Carries the term structure, outstanding quantity, valuation, collateral mix and quality composition, with the coverage block stating how many venues contributed and naming the ones that did not. No venue is weighted up, floated or reported under its own heading. ⚠ Read coverage before reading the figures. A venue absent from this reading is a declared gap, not a zero, and the rows it would have contributed are counted separately as unavailable. Corporate issuers' debt is not in this reading. get_corporate_instruments serves it, with the debt attributed to bitcoin: bitcoin-pledged debt in full, debt secured by other assets at zero, unsecured debt and preferred stock at each company's unencumbered share of assets, for companies holding at least 100 BTC (a subsidiary counted at its parent). Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. With collateral: 'eth' this returns the ether market: the same six figures at market and class level, books per loan currency (ether lent against ether is its own book, outside the headline). The collateral mix's daily history by wrapper is long; it is left out unless collateral_mix_history is true.
| Name | Type | Req | Description |
|---|---|---|---|
| collateral | string | – | Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. |
| collateral_mix_history | boolean | – | Include the collateral mix's daily history by wrapper (bitcoin only). Default false: the mix as it stands, without its history. |
No output schema declared.
No examples provided.
get_credit_state_history The Bitcoin credit surface over time ~305
How has the Bitcoin credit surface moved? The same cross-venue reading as get_credit_state, as a daily series. Each point carries the coverage that produced it, so a change in the series and a change in which venues were observable can be told apart. This is descriptive data; it does not forecast and it does not characterise a trend. ⚠ Coverage is not constant through the series. A move in a figure may be a move in the market or a venue entering or leaving observation — the per-point coverage is what distinguishes them. Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. The ether series covers the market, each class and each family from the first date the answer states (history_starts); points before the ether tree's first live snapshot are rebuilt from each venue's own contract reads. Pooled venues' debt is read once a month: between readings that figure is an absence with its reason, never a zero. The answer's steps and notes say where coverage changes.
| Name | Type | Req | Description |
|---|---|---|---|
| collateral | string | – | Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. |
| days | integer | – | How many days of history. Default 365, capped at 3650. |
No output schema declared.
No examples provided.
get_debt_by_collateral How the dollar debt is backed ~147
What backs the dollar debt against bitcoin, by collateral and by venue type (pools, isolated markets, vaults, the auction, corporate, posted cards), as the site's "How these loans are backed" panel shows it, with each observer named and the collateral rule stated. days (30 to 1500, default 30) sets the window of the series it carries. The corporate part carries the class totals; the rows for each company are get_corporate_instruments'. Standard questions this tool answers (get_guide with question): SQ-M5.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | Window in days, 30 to 1500 (default 30) |
No output schema declared.
No examples provided.
get_desk_rates Posted rates of the custodial desks ~137
Returns the rate cards the custodial lending desks post (bitcoin collateral), one row per product: the representative APR and its range, term, maximum LTV, custody and liquidation model, and the card's effective date and source. Administered rates, not market-cleared; a card older than the stated staleness is marked. Pass desk to read one desk's cards. Returns the route's payload as served. Standard questions this tool answers (get_guide with question): SQ-V6.
| Name | Type | Req | Description |
|---|---|---|---|
| desk | string | – | A desk id as the payload names it, e.g. 'ledn', 'xapo' |
No output schema declared.
No examples provided.
get_event_post_kit What to post an event on X with (text, link, chart) ~156
For one credit-market event (an id from get_events; without one, the newest events to choose from): its sentence, the link to post (X shows it as a card with the event's chart), the suggested chart and other series to set beside it (each with a page that saves it as a PNG to attach), and the rules a post follows. The assistant drafts the post from these; nothing is posted by this server. A post stays descriptive: the event's figures and dates, no forecast, no advice, no ranking and no cause the data does not state; the rules give X's length limit and how a link counts against it.
| Name | Type | Req | Description |
|---|---|---|---|
| id | integer | – | An event id from get_events |
No output schema declared.
No examples provided.
get_events Credit-market events (dated facts) ~408
Returns the credit-market events the Stack has recorded, newest first: a venue's debt, collateral or borrow rate moving past its rule from one daily reading to the next, a figure crossing a fixed level (each power of ten, and twice and five times it), a company filing a purchase, sale or total of the coin it holds, an indicator (bsbs, bcsi, the collateral share, the weekly matched change, a wrapper's reserve coverage) crossing a fixed level or moving past its threshold, and a venue first read or wound down. Each event: one sentence, the figures and their dates, the rule it met in words, and its source (the daily readings and their dates, or the filing with its link and the sentence that holds the figure). A change caused by coverage or method (a reader or pool change, a restatement, a price-only move) is not an event and is not returned. Bitcoin by default; collateral: 'eth' returns the ether events, never added to bitcoin's. Gavel's own book is included with its own-account disclosure. Descriptive: no cause, forecast or ranking. Paged: 20 events by default (limit up to 500); pass the returned `next` as cursor. Standard questions this tool answers (get_guide with question): SQ-M8.
| Name | Type | Req | Description |
|---|---|---|---|
| collateral | string | – | Events of credit secured by bitcoin (default) or by ether; never added together |
| cursor | string | – | The `next` value of a previous page |
| limit | integer | – | Events per page (default 20) |
| since | string | – | Events dated on or after this day |
| subject | string | – | A venue id (e.g. 'aave_v3_ethereum'), a tree node id or a corporate issuer id (e.g. 'strive') |
| type | array | – | Only these event types |
| until | string | – | Events dated on or before this day |
No output schema declared.
No examples provided.
get_fund_holdings Bitcoin held by spot funds ~186
Lists the spot bitcoin funds and the bitcoin each states it holds, as read from the fund's own SEC filing (10-Q or 10-K), its daily holdings file, or its periodic report, each figure with its date, its source and a quote. A fund's headline is its latest-dated figure; the other figures are served beside it. Custodians and the fund's lending statement are quoted as filed; "lending not stated" means no statement was found, not that the fund lends. A fund without a figure says why, never zero. Fund shares held by another fund or a public body are listed and not added, so each coin is counted once. Totals are given per date, and across dates only with the earliest and latest date they cover. Funds are listed by name; nothing is ranked. Returns the route's payload as served.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_guide What this server covers ~268
What does this server cover, and how much of it? The tools; the venues by registry scope, venue type, status and credit class; the credit-state reading's coverage; the indicators served, retired and not published here; the series; and the lenses — every count read from the data when asked, each with a sentence saying what it counts. Also the two venue vocabularies (venue type and credit class), how absences are returned, and where the methodology is. Call this first when you need to say how much the Stack covers. It ranks nothing and describes no venue's quality. It also routes the Stack's standard questions: with no argument it lists them (id, question, tool); with question (an id such as 'SQ-M1', or a few words) it returns the matching question whole: the call that answers it, what the answer means, the page that shows the same figure, and its limits. The match is a lookup in the published list, never a guess; words that match none return the list. Standard questions this tool answers (get_guide with question): SQ-S1, SQ-S5.
| Name | Type | Req | Description |
|---|---|---|---|
| question | string | – | A standard question's id (e.g. 'SQ-M1') or a few words from it |
No output schema declared.
No examples provided.
get_indicator Get an Indicator ~465
Returns the current value of a single Aletheia indicator by id, with its methodology reference. This server serves the venue-independent indicator set; an indicator anchored on a single venue's own rate is served by that venue's own MCP and answers here with a pointer to it. Call list_indicators first to discover valid ids. Optionally returns the historical series instead of the current value (set include_history). History is free and unmetered on the same terms as the current value. This is descriptive data; no recommendation is provided. An indicator that has no reading on this network says so explicitly rather than returning a null or a zero that could be mistaken for a value. With as_known_on, an indicator kept by vintage (list_indicators marks it as_known_on: true) is returned as it was published at the end of that day (UTC), so a figure quoted then can be reproduced. An indicator recomputed when asked has no past vintage and refuses as_known_on. Standard questions this tool answers (get_guide with question): SQ-M6, SQ-M7, SQ-C4, SQ-I2, SQ-I3, SQ-I4, SQ-I5, SQ-I6, SQ-I7, SQ-Ch3, SQ-Ch5, SQ-Co2.
| Name | Type | Req | Description |
|---|---|---|---|
| as_known_on | string | – | YYYY-MM-DD: the indicator as published at the end of that day (UTC). Only for indicators kept by vintage. |
| from | string | – | History start, ISO 8601 date. Only meaningful with include_history. |
| id | string | yes | Indicator id from list_indicators, e.g. 'intermediation-spread', 'capital-stack', 'benchmark-curves'. |
| include_history | boolean | – | If true, return the historical series instead of the current value. Not every indicator has one. |
| series | string | – | With include_history, one series of a measure (its `series[]` names them), e.g. 'cx.class.algorithmic.borrow_spread_over_ust_3m'. Default: the headline series |
| to | string | – | History end, ISO 8601 date. Only meaningful with include_history. |
| wrapper | string | – | With include_history on wrc, one wrapper's coverage history |
No output schema declared.
No examples provided.
get_lens Reading lenses ~259
Returns a READING LENS: a presentation procedure for this dataset, written for a particular kind of reader. A lens selects which tools to use and frames how their output is presented; it never concludes, never ranks, and carries no write tool — this server has none. Call with no argument to list the lenses. Call with one to get its full procedure: what to lead with, the tools in its scope, and — the part that matters most — what that lens explicitly does not do. Reading a lens before presenting anything from this dataset is the intended use. It is guidance for presentation, not data about the market, and it adds no figures of its own. Standard questions this tool answers (get_guide with question): SQ-S2.
| Name | Type | Req | Description |
|---|---|---|---|
| lens | string | – | Which lens. Omit to list all of them. 'orientation' — Orientation — what this dataset is, and what it will not tell you; 'holder' — Holder — the cost of credit against bitcoin you already hold; 'trea… |
No output schema declared.
No examples provided.
get_liquidation_map Where bitcoin-secured debt is liquidated ~356
How much bitcoin-secured dollar debt is liquidated at which bitcoin price, for the market, a class or a venue? An identity on observed positions: each bitcoin-only position at the price its OWN venue's rule liquidates it, summed into $1,000 buckets, with the debt within 10/20/30% of each venue's own mark, the debt already past its venue's test, and overflow. It does not forecast what a fall in the price would do, it does not rank venues (they are listed by name) and it gives no verdict such as "at risk". ⚠ Read coverage and not_bucketed first. Only venues read position by position are in the map (the pooled venues, Morpho on Ethereum and Base, Sky); every other venue with debt is named with its reason and is never scaled up. With history=true the bands come as a daily series: Sky from 2020-05-03, the rest from 2026-10-08 — a step there is coverage, not the market. Standard questions this tool answers (get_guide with question): SQ-M3.
| Name | Type | Req | Description |
|---|---|---|---|
| as_known_on | string | – | With history: the bands as published at the end of that day (UTC). |
| date | string | – | A day held; default the latest. |
| from | string | – | With history: the first day. |
| history | boolean | – | Return the bands through time instead of one day's buckets. |
| id | string | – | A class id (algorithmic, minted, ...) or a venue id; required below the market. |
| level | string | – | Default market. |
| to | string | – | With history: the last day. |
No output schema declared.
No examples provided.
get_market_composition What this credit market is made of ~237
What kinds of credit make up this market, and in what proportions? ⚠ These series are computed from MORPHO BLUE ONLY, on Ethereum and Base. They are not market-wide. Composition by rate type, recourse and instrument, reported as observed shares with the scope that produced them. There is no ranking of venues or instrument types and no judgement about which composition is preferable. ⚠ The scope block names the contributing venues and states why the others are absent. Read it before quoting any share. A percentage from this tool describes one venue family, not Bitcoin-collateralised credit. Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. No ether composition series is served yet; with collateral: 'eth' this says so and points to the ether figures.
| Name | Type | Req | Description |
|---|---|---|---|
| collateral | string | – | Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. |
No output schema declared.
No examples provided.
get_market_flows Credit created and retired ~139
How much credit was created and retired, and over what period? Latest, trailing 30 days, and since inception. ⚠ These series are computed from MORPHO BLUE ONLY, on Ethereum and Base. They are not market-wide. Counts and amounts as observed, with the scope, coverage and validation state that produced them. Not a forecast, not a momentum signal, and not a characterisation of demand. ⚠ Creation and retirement are GROSS and are never netted into one signed series: a day of heavy churn and a quiet day can net to the same number and are not the same market. USD-denominated debt only.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_mvrv Bitcoin MVRV Ratio ~376
Returns the current Bitcoin MVRV ratio: market capitalisation divided by realised capitalisation, where realised cap values each coin at the price it last moved. MVRV is therefore an identity on observed chain data. It states the aggregate unrealised position of the supply — how far the market values coins above or below what was last paid for them — and nothing about what follows from that. This tool returns data; it does not advise, forecast, or characterise the market. Computed nightly from Aletheia's own full node and UTXO set. Since 2026-10-05 the current price and the creation prices from 2020-07-13 are Aletheia's own on-chain BTC fixing; coins created before 2020-07-13 are valued at the legacy daily price, from CoinGecko, CryptoCompare and Binance backfills: the supply and each coin's age are Aletheia's, those prices are not, so the ratio is free, attributed use only (its licence block says so). 'mvrv_z_score' is returned alongside it: the same numerator measured in standard deviations of the historical market-cap series. Returns: { value, mvrv_z_score, as_of, inputs: { market_cap_usd, realised_cap_usd, realised_price_usd, spot_price_usd }, methodology, attribution, licence, disclaimer }. 'attribution' carries the source credit for third-party figures; show it with them. Standard questions this tool answers (get_guide with question): SQ-Ch2.
| Name | Type | Req | Description |
|---|---|---|---|
| timestamp | string | – | ISO 8601 date. Currently ignored: the upstream serves the latest computed row only. Historical MVRV, from 2009: get_chain_series with id 'chain.cohort.mvrv'. |
No output schema declared.
No examples provided.
get_series Series through time, with a chart plan ~469
Returns 1 to 13 series (ids from list_series), each on its own dates, from Aletheia's vintage store: every value with its date and kind (an absence is a kind with its reason, never a zero), the unit, source, limitation and the vintages the values came from. Default window: the last 365 days to `to`; pass `from` for the full history. With as_known_on, each series is returned as the store held it at the end of that day (UTC), so a figure quoted then can be reproduced. With the data comes a chart plan, as the site's explorer draws: panels by unit, two at most, a series joining the panel of its exact unit; a third unit is refused in the explorer's words; ether and bitcoin collateral are never drawn on one panel; each refusal names its reason. The plan carries the /explore link that draws the same chart on the site, and a text alternative per panel. plan: 'only' returns the plan without the values; plan: false the values without the plan. Values resting on the legacy daily price before 2020-07-13 (CoinGecko, CryptoCompare and Binance backfills) carry coingecko_share or price_today, and the answer's attribution names every source to credit: show them with the values. This tool returns data; it does not advise, forecast or characterise the market. Standard questions this tool answers (get_guide with question): SQ-M1, SQ-M2, SQ-M4, SQ-C1, SQ-C3, SQ-V4, SQ-S3.
| Name | Type | Req | Description |
|---|---|---|---|
| as_known_on | string | – | YYYY-MM-DD: every series as the store held it at the end of that day (UTC) |
| from | string | – | First date, YYYY-MM-DD (default: 365 days before `to`) |
| ids | array | yes | Series ids from list_series, e.g. ['cx.index.bsbs', 'cx.market.secured.borrow_spread_over_ust_3m'] |
| plan | – | – | true (default): values and the chart plan; false: values only; 'only': the plan only |
| to | string | – | Last date, YYYY-MM-DD (default: today) |
No output schema declared.
No examples provided.
get_venue One venue against the published criteria ~367
What is known about this venue, criterion by criterion? The three pillars — Price, Quality, Composition — each cell with its value and the source it came from. The criteria are published and versioned before any venue is measured against them, applied evenly to every row, and the spec version rides in this payload. There is no composite score, no stars and no reliability index: a reader weighs the criteria, and this server does not weigh them for the reader. ⚠ 'unknown' is a value, not an omission — a criterion that cannot be established from public sources says so with its reason. A class-specific 'not_applicable' and an unresearched 'unknown' are different answers and are never conflated. Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. With collateral: 'eth' the criteria come with the venue's ether figures (the six tiles and books); a venue that does not take ether says so. Standard questions this tool answers (get_guide with question): SQ-V2, SQ-V3.
| Name | Type | Req | Description |
|---|---|---|---|
| collateral | string | – | Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. |
| include | array | – | Extras the venue page shows: 'axes' (where the venue sits on the market's measured axes) and 'headline' (its six figures as the headline reads them, with the books) |
| venue_id | string | yes | Registry id, e.g. 'aave_v3_arbitrum'. Call list_venues to discover valid ids. |
No output schema declared.
No examples provided.
get_verification_bundle Verification bundle ~287
Covers one venue's contracts only: the registry's auction venue (venue_id 'gavel_arbitrum'), the one venue whose deployed contracts this dataset checks itself. It is served here as a source for that venue's quality criteria; no other venue has a bundle yet. What can be checked about the contracts, and what did the last check return? Observations with their block heights; the verdict is the reader's. Contract addresses and their implementations, the bytecode hash of each, the upgradeability position, the privileged-function map with whether each can touch user funds, the audit reference, and five structural promises — each with the check that would falsify it and what that check returned. ⚠ Read the fields, not the impression. 'match' is "unchecked" where Aletheia has not compared deployed bytecode against verified source; a promise that did not settle says so; and mainnet and testnet return different answers because they run different builds. There is no safety score, rating or verified badge in this payload, and none will be added.
| Name | Type | Req | Description |
|---|---|---|---|
| network | string | – | Network. Default 'arbitrum-one' (mainnet). Use 'arbitrum-sepolia' for the testnet deployment, which carries a far deeper book — but note the two run different contract builds, so a testnet observatio… |
No output schema declared.
No examples provided.
list_chain_series Chain, miner and price series (catalogue) ~220
Lists every series served from Aletheia's vintage store: the chain series built from one pass over every Bitcoin block on Aletheia's own node (chain.cohort.*: supply, supply by age band, long- and short-term holder supply, BTC moved, coin-days destroyed, dormancy, realised cap and price, MVRV, SOPR, supply in profit and loss, cost-basis percentiles), the miner series (miner.*: blocks, transactions, subsidy, fees, difficulty, hashrate, hashprice), the on-chain BTC/ETH/TRX price fixings and staked-ether contract rates (price.*), and the Federal Reserve H.10 exchange rates (fx.*). Returns: { count, series: [{ id, dataset, unit, kinds, first, last, latest_vintage, licence }] }. licence 'free_attributed_only' marks series with values priced before 2020-07-13 from the legacy daily price (CoinGecko, CryptoCompare and Binance backfills).
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_indicators Indicator Catalogue ~217
Returns the catalogue of Aletheia indicators measured across the Bitcoin-collateralised credit markets and the Bitcoin chain: id, name, family, units, description, and whether the indicator is currently live on this network. Three families: 'credit' (credit-market assessments), 'onchain' (commodity chain metrics such as MVRV and SOPR), and 'market' (external context — DeFi rates, stablecoin supply, macro). Use this to discover what is available, then call get_indicator with an id. This tool returns a catalogue; it does not rank indicators or advise which to use. Indicators anchored on a single venue's own rate are not served here; they are listed as withheld, with the server that serves them. Standard questions this tool answers (get_guide with question): SQ-I1.
| Name | Type | Req | Description |
|---|---|---|---|
| family | string | – | Restrict to one family. Omit to return the whole catalogue. |
| live_only | boolean | – | If true, omit indicators that are not currently live on this network. |
No output schema declared.
No examples provided.
list_onchain_indicators List On-chain Indicators ~69
Returns the catalog of available on-chain indicator tools, including tool name, indicator name, brief description, units, an example invocation, and current readiness status ('live' or 'pending'). Use this when you need to discover which tools are available for on-chain analysis without inspecting every tool definition.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
list_series Every chartable series (catalogue) ~404
Lists the series the Stack serves, across every dataset: the credit tree at every level (market, class, family, venue) and figure, for bitcoin and, separately, for ether collateral; the liquidation map's bands; the credit x on-chain measures and their sub-series; the governed indices; wrapper reserve coverage; the chain, miner, on-chain price and FX series from Aletheia's own node; the Treasury curve (H.15); SOFR and the stablecoin total. Each row: id, label, unit, group, collateral, cadence, kinds, first and last date, licence, the site page that shows it, whether it can be charted (and why not), and whether the site's explorer draws it. Paged: 100 rows by default (limit up to 500); pass the returned `next` as cursor. Narrow with dataset, group, collateral, prefix (e.g. 'credit.class.algorithmic.') or q (a word in the id or label). Then fetch values with get_series. Standard questions this tool answers (get_guide with question): SQ-Ch1, SQ-S4.
| Name | Type | Req | Description |
|---|---|---|---|
| chartable_only | boolean | – | Leave out series that cannot be drawn on a time chart |
| collateral | string | – | Series measured against bitcoin or against ether collateral; never added together |
| cursor | integer | – | The `next` value of the previous page |
| dataset | string | – | A dataset from the answer's `datasets`, e.g. credit_tree, credit_tree_eth, cx, chain_series, macro |
| group | string | – | One of the explorer's picker groups |
| limit | integer | – | Rows per page, 1 to 500 (default 100) |
| prefix | string | – | Series id prefix, e.g. 'credit.venue.aave_v3_ethereum.' or 'cx.market.' |
| q | string | – | A word to find in the id or label |
No output schema declared.
No examples provided.
list_venues Credit venues covered ~596
Which credit venues does this dataset cover, and what is known about each? Returns the registry rows matching the filters you supply. One row per venue, each with its coverage state per pillar and how many of its criteria cells have been researched. Two vocabularies, never mixed: a venue TYPE says how the venue is built (an on-chain pool, an isolated or CDP market, a custodial desk, a broker, a corporate issuer, an auction), and a credit CLASS says how its rate is set (algorithmic, minted, posted-card, auction, corporate) — the classes the Stack's pages use. Filter by either. Rows are compact by default; detail: 'full' returns every registry field and the semantics blocks. get_guide counts the venues of each type and class. Does not rank, score or order by any rate: rows are returned in the registry's own order. All filters are optional and unspecified means no constraint. ⚠ A venue's presence is not a statement about it. Coverage 'none' means nothing is ingested yet, which is a declared gap, not an observation about the venue. Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. With collateral: 'eth' only the venues that take ether as collateral are returned (a venue taking both appears under both). Standard questions this tool answers (get_guide with question): SQ-V1, SQ-V5.
| Name | Type | Req | Description |
|---|---|---|---|
| chain_id | integer | – | Restrict to venues on one EVM chain id. |
| class | string | – | Restrict to one credit class, as the Stack's pages and compare_venues use them. |
| collateral | string | – | Bitcoin by default; pass collateral: 'eth' for credit secured by ether (ether, staking and restaking tokens at their own contract rates), measured the same way and never added to bitcoin. |
| complete_attributes_only | boolean | – | Only venues with every criteria cell researched. Default false. |
| detail | string | – | 'compact' (the default): one short row per venue. 'full': every registry field, with the semantics blocks. |
| limit | integer | – | Cap the rows returned. Default 50. The response always states the unfiltered total. |
| status | string | – | Restrict by registry status, e.g. 'live', 'ingesting', 'registered', 'defunct'. A value the registry does not serve is refused with the ones it does. |
| venue_type | string | – | Restrict to one venue type, e.g. 'onchain_pooled', 'onchain_isolated', 'onchain_cdp', 'cefi_desk', 'broker', 'corporate_debt', 'auction'. A value the registry does not serve is refused with the ones… |
No output schema declared.
No examples provided.
How do I install the com.bitcoincreditstack/mcp server?
com.bitcoincreditstack/mcp is a hosted endpoint at https://mcp.bitcoincreditstack.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.bitcoincreditstack.com
claude mcp add --transport http com-bitcoincreditstack-mcp 'https://mcp.bitcoincreditstack.com/mcp'
What is the com.bitcoincreditstack/mcp server?
com.bitcoincreditstack/mcp is listed in the public MCP registry as com.bitcoincreditstack/mcp. The Bitcoin credit markets, measured. Cross-venue rates, venue criteria, chain indicators. This page covers its hosted endpoint (https://mcp.bitcoincreditstack.com/mcp).
Is the com.bitcoincreditstack/mcp server safe to use?
com.bitcoincreditstack/mcp scores 78 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the com.bitcoincreditstack/mcp server expose?
com.bitcoincreditstack/mcp exposes 28 tools: list_onchain_indicators, get_mvrv, list_chain_series, get_chain_series, get_cost_basis, and 23 more. Their descriptions and schemas cost roughly 8,435 tokens of context every time the server is loaded.
Does the com.bitcoincreditstack/mcp server require authentication?
No. We connected to com.bitcoincreditstack/mcp without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the com.bitcoincreditstack/mcp server still maintained?
com.bitcoincreditstack/mcp is still listed as active in the MCP registry. We last reached this channel on 4 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.