# io.github.sly13/cryptoetf

> Live spot crypto ETF flows for 16 assets and their funds, CEFI index and prices.

- name: io.github.sly13/cryptoetf
- version: 1.0.12
- connection class: R0 (autonomous)
- trust: 92/100
- quality: 69/100 (needs work)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.sly13%2Fcryptoetf
- tools: https://api.protogrid.dev/v1/servers/io.github.sly13%2Fcryptoetf/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "cryptoetf": {
      "type": "http",
      "url": "https://mcp.cryptoetf.today/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 97
- freshness: 100
- provenance: 75
- drivers: +repository +website +reachable +uptime-92% +updated-4d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 69/100 (needs work)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 7 of 7 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_flows_summary (destructiveHint, idempotentHint); get_asset_flows (destructiveHint, idempotentHint); get_fund_flows (destructiveHint, idempotentHint); …
- pass `tools.token_cost`: about 1,271 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 14 tool changes in 30 days
- fail `stability.rug_pull`: 3 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: deps.dev does not know @zerosix-studio/cryptoetf-mcp@1.0.12

- tools: 7, about 1,271 tokens to load them all
- tool set hash: fde07b79b001c3da689ddcdc1ded35a8
- tools last changed: 2026-10-16T10:18:36.528Z
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.sly13/cryptoetf.svg)](https://protogrid.dev/servers/io.github.sly13/cryptoetf)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-16 `get_funds` added
  - Get the US spot crypto ETFs that have started trading, for one asset or all 16: ticker, name, issuer, exchange, listing date, sponsor fee (percent per year), current net assets (`netAssetsUsdM`, USD millions) and coins held, plus the total net assets of each asset. Net assets are a current snapshot, not a history. `netAssetsBasis` is reported (published by the issuer for `netAssetsDate`), repriced (the latest published figure moved to that day by the NAV change of other funds) or estimated (coins times price, for issuers without daily holdings). `coinsHeld` is null for issuers that do not publish holdings in coins.
- 2026-10-16 `get_fund_flows` added
  - Get daily net flows of every spot ETF on one crypto asset, fund by fund (IBIT, FBTC, ETHA, …), over the last 30 days. Each trading day lists the funds trading that day with ticker, issuer and net USD millions (positive = inflow, negative = outflow), plus `totalUsdM` for the day. `netFlowUsdM` is null when there is no figure for the fund that day, usually because it has not reported yet; 0 means no creations or redemptions. Flows are published one business day in arrears.
- 2026-10-16 `get_asset_flows` changed (description)
  - before: Get daily net ETF flow history for a single crypto asset over the last 30 days. Returns a time series of net USD millions per day (positive = inflow, negative = outflow). Figures are asset-level totals with no per-fund breakdown; per-fund tables (IBIT, FBTC, ETHA and others) are published at https://cryptoetf.today/en/<slug>-etf-flows, slug = bitcoin, ethereum, solana, xrp, hype, dogecoin, chainlink, avalanche, hedera, litecoin, bnb, polkadot, sui, near, tron or zcash.
  - after: Get daily net ETF flow history for a single crypto asset over the last 30 days. Returns a time series of net USD millions per day (positive = inflow, negative = outflow). Figures are asset-level totals; the per-fund breakdown (IBIT, FBTC, ETHA and others) is returned by get_fund_flows.
- 2026-10-16 `get_flows_summary` changed (description)
  - before: Get the latest-day net ETF inflow/outflow (USD millions) for every tracked crypto asset: BTC (Bitcoin), ETH (Ethereum), SOL (Solana), XRP, HYP (Hyperliquid), DOGE (Dogecoin), LINK (Chainlink), AVAX (Avalanche), HBAR (Hedera), LTC (Litecoin), BNB, DOT (Polkadot), SUI, NEAR, TRX (TRON) and ZEC (Zcash). Positive = inflow, negative = outflow. Flows are published one business day in arrears, so `referenceIsToday` is normally false: the figures belong to `referenceDate`, the last trading day published, not to the current date. On Mondays the freshest data is Friday's. `totalUsdM` is the sum across all assets. Figures are asset-level totals with no per-fund breakdown; per-fund tables (IBIT, FBTC, ETHA and others) are published at https://cryptoetf.today/en/<slug>-etf-flows, slug = bitcoin, ethereum, solana, xrp, hype, dogecoin, chainlink, avalanche, hedera, litecoin, bnb, polkadot, sui, near, tron or zcash.
  - after: Get the latest-day net ETF inflow/outflow (USD millions) for every tracked crypto asset: BTC (Bitcoin), ETH (Ethereum), SOL (Solana), XRP, HYP (Hyperliquid), DOGE (Dogecoin), LINK (Chainlink), AVAX (Avalanche), HBAR (Hedera), LTC (Litecoin), BNB, DOT (Polkadot), SUI, NEAR, TRX (TRON) and ZEC (Zcash). Positive = inflow, negative = outflow. Flows are published one business day in arrears, so `referenceIsToday` is normally false: the figures belong to `referenceDate`, the last trading day published, not to the current date. On Mondays the freshest data is Friday's. `totalUsdM` is the sum across all assets. Figures are asset-level totals; the per-fund breakdown (IBIT, FBTC, ETHA and others) is returned by get_fund_flows, net assets by get_funds.
- 2026-10-03 `get_cefi_index` changed (description) **meaning changed**
  - before: Get the composite CEFI (Crypto ETF Flow Index) sentiment score across all tracked assets. Scale 0–100, 50 = neutral: above 50 means net inflows dominate (risk-on), below 50 means net outflows (risk-off). Zones: 0–20 extreme fear, 20–40 fear, 40–60 neutral, 60–80 greed, 80–100 extreme greed.
  - after: Returns the composite CEFI (Crypto ETF Flow Index): a 0–100 index of money moving through US spot crypto ETFs on all 16 tracked assets. Net flows of all funds are added up in dollars, and three components are scored against the past year: flow (today's net flow, smoothed, 40%), trend (net flow over 20 trading days, 30%) and breadth (share of funds with inflows, 30%). 50 = zero net flow; a typical inflow day scores about 69, a typical outflow day about 31. Each component is on the same 0–100 scale. Zones: 0–20 extreme fear, 20–40 fear, 40–60 neutral, 60–80 greed, 80–100 extreme greed.
- 2026-10-01 `get_prices` changed (description)
  - before: Get current spot prices (USD) and 24-hour percentage change for all 13 tracked crypto assets: BTC, ETH, SOL, XRP, HYP, DOGE, LINK, AVAX, HBAR, LTC, BNB, DOT, SUI. Prices are sourced from major exchanges and refreshed frequently.
  - after: Get current spot prices (USD) and 24-hour percentage change for all 16 tracked crypto assets: BTC, ETH, SOL, XRP, HYP, DOGE, LINK, AVAX, HBAR, LTC, BNB, DOT, SUI, NEAR, TRX, ZEC. Prices are sourced from major exchanges and refreshed frequently.
- 2026-10-01 `get_asset_flows` changed (description, inputSchema)
  - before: Get daily net ETF flow history for a single crypto asset over the last 30 days. Returns a time series of net USD millions per day (positive = inflow, negative = outflow). Figures are asset-level totals with no per-fund breakdown; per-fund tables (IBIT, FBTC, ETHA and others) are published at https://cryptoetf.today/en/<slug>-etf-flows, slug = bitcoin, ethereum, solana, xrp, hype, dogecoin, chainlink, avalanche, hedera, litecoin, bnb, polkadot or sui.
  - after: Get daily net ETF flow history for a single crypto asset over the last 30 days. Returns a time series of net USD millions per day (positive = inflow, negative = outflow). Figures are asset-level totals with no per-fund breakdown; per-fund tables (IBIT, FBTC, ETHA and others) are published at https://cryptoetf.today/en/<slug>-etf-flows, slug = bitcoin, ethereum, solana, xrp, hype, dogecoin, chainlink, avalanche, hedera, litecoin, bnb, polkadot, sui, near, tron or zcash.
- 2026-10-01 `get_flows_summary` changed (description)
  - before: Get the latest-day net ETF inflow/outflow (USD millions) for every tracked crypto asset: BTC (Bitcoin), ETH (Ethereum), SOL (Solana), XRP, HYP (Hyperliquid), DOGE (Dogecoin), LINK (Chainlink), AVAX (Avalanche), HBAR (Hedera), LTC (Litecoin), BNB, DOT (Polkadot) and SUI. Positive = inflow, negative = outflow. Flows are published one business day in arrears, so `referenceIsToday` is normally false: the figures belong to `referenceDate`, the last trading day published, not to the current date. On Mondays the freshest data is Friday's. `totalUsdM` is the sum across all assets. Figures are asset-level totals with no per-fund breakdown; per-fund tables (IBIT, FBTC, ETHA and others) are published at https://cryptoetf.today/en/<slug>-etf-flows, slug = bitcoin, ethereum, solana, xrp, hype, dogecoin, chainlink, avalanche, hedera, litecoin, bnb, polkadot or sui.
  - after: Get the latest-day net ETF inflow/outflow (USD millions) for every tracked crypto asset: BTC (Bitcoin), ETH (Ethereum), SOL (Solana), XRP, HYP (Hyperliquid), DOGE (Dogecoin), LINK (Chainlink), AVAX (Avalanche), HBAR (Hedera), LTC (Litecoin), BNB, DOT (Polkadot), SUI, NEAR, TRX (TRON) and ZEC (Zcash). Positive = inflow, negative = outflow. Flows are published one business day in arrears, so `referenceIsToday` is normally false: the figures belong to `referenceDate`, the last trading day published, not to the current date. On Mondays the freshest data is Friday's. `totalUsdM` is the sum across all assets. Figures are asset-level totals with no per-fund breakdown; per-fund tables (IBIT, FBTC, ETHA and others) are published at https://cryptoetf.today/en/<slug>-etf-flows, slug = bitcoin, ethereum, solana, xrp, hype, dogecoin, chainlink, avalanche, hedera, litecoin, bnb, polkadot, sui, near, tron or zcash.
- 2026-09-30 `get_weekly_analytics` changed (description, annotations)
  - before: Get 7-day aggregated ETF flow analytics for all tracked assets. Returns total net flow, average daily flow, and count of positive vs negative days per asset. Useful for a quick momentum read without pulling the full time series.
  - after: Get 7-day aggregated ETF flow analytics for all tracked assets. Returns total net flow, the number of trading days in the window, average flow per trading day, and count of positive vs negative days per asset. Weekends are excluded. A compact momentum summary without the full daily series.
- 2026-09-30 `get_prices` changed (annotations)

Full history: https://api.protogrid.dev/v1/servers/io.github.sly13%2Fcryptoetf/changes

## Dependencies

- npm @zerosix-studio/cryptoetf-mcp@1.0.12: unknown

Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0.

## Remotes

- https://mcp.cryptoetf.today/api/mcp (streamable-http, auth none, reachable true, uptime30d 0.9150943)

## Packages

- npm @zerosix-studio/cryptoetf-mcp@1.0.12

## Tools (7)

- `get_asset_flows`: Get daily net ETF flow history for a single crypto asset over the last 30 days. Returns a time series of net USD millions per day (positive = inflow, negative = outflow). Figures are asset-level totals; the per-fund breakdown (IBIT, FBTC, ETHA and others) is returned by get_fund_flows.
- `get_cefi_index`: Returns the composite CEFI (Crypto ETF Flow Index): a 0–100 index of money moving through US spot crypto ETFs on all 16 tracked assets. Net flows of all funds are added up in dollars, and three components are scored against the past year: flow (today's net flow, smoothed, 40%), trend (net flow over 20 trading days, 30%) and breadth (share of funds with inflows, 30%). 50 = zero net flow; a typical inflow day scores about 69, a typical outflow day about 31. Each component is on the same 0–100 scale. Zones: 0–20 extreme fear, 20–40 fear, 40–60 neutral, 60–80 greed, 80–100 extreme greed.
- `get_flows_summary`: Get the latest-day net ETF inflow/outflow (USD millions) for every tracked crypto asset: BTC (Bitcoin), ETH (Ethereum), SOL (Solana), XRP, HYP (Hyperliquid), DOGE (Dogecoin), LINK (Chainlink), AVAX (Avalanche), HBAR (Hedera), LTC (Litecoin), BNB, DOT (Polkadot), SUI, NEAR, TRX (TRON) and ZEC (Zcash). Positive = inflow, negative = outflow. Flows are published one business day in arrears, so `referenceIsToday` is normally false: the figures belong to `referenceDate`, the last trading day published, not to the current date. On Mondays the freshest data is Friday's. `totalUsdM` is the sum across all assets. Figures are asset-level totals; the per-fund breakdown (IBIT, FBTC, ETHA and others) is returned by get_fund_flows, net assets by get_funds.
- `get_fund_flows`: Get daily net flows of every spot ETF on one crypto asset, fund by fund (IBIT, FBTC, ETHA, …), over the last 30 days. Each trading day lists the funds trading that day with ticker, issuer and net USD millions (positive = inflow, negative = outflow), plus `totalUsdM` for the day. `netFlowUsdM` is null when there is no figure for the fund that day, usually because it has not reported yet; 0 means no creations or redemptions. Flows are published one business day in arrears.
- `get_funds`: Get the US spot crypto ETFs that have started trading, for one asset or all 16: ticker, name, issuer, exchange, listing date, sponsor fee (percent per year), current net assets (`netAssetsUsdM`, USD millions) and coins held, plus the total net assets of each asset. Net assets are a current snapshot, not a history. `netAssetsBasis` is reported (published by the issuer for `netAssetsDate`), repriced (the latest published figure moved to that day by the NAV change of other funds) or estimated (coins times price, for issuers without daily holdings). `coinsHeld` is null for issuers that do not publish holdings in coins.
- `get_prices`: Get current spot prices (USD) and 24-hour percentage change for all 16 tracked crypto assets: BTC, ETH, SOL, XRP, HYP, DOGE, LINK, AVAX, HBAR, LTC, BNB, DOT, SUI, NEAR, TRX, ZEC. Prices are sourced from major exchanges and refreshed frequently.
- `get_weekly_analytics`: Get 7-day aggregated ETF flow analytics for all tracked assets. Returns total net flow, the number of trading days in the window, average flow per trading day, and count of positive vs negative days per asset. Weekends are excluded. A compact momentum summary without the full daily series.
