Back to Directory/Monitoring & Observability

io.github.blocklens/blocklens-mcp-server

Bitcoin on-chain analytics — 109 metrics: MVRV, SOPR, NUPL, HODL Waves, CDD, cycles & more

Monitoring & ObservabilityJavaScriptv0.4.3

blocklens-mcp-server

MCP (Model Context Protocol) server for Blocklens Bitcoin on-chain analytics. Connect your AI agent to 127 on-chain metrics computed from raw blockchain data — no API wrappers, no delays.

Quick Start

Remote Access (No Install)

Connect directly to the hosted endpoint — no packages, no local setup:

Claude.ai (Browser): Settings → Connectors → Add → URL: https://mcp.blocklens.co

Claude Desktop / Cursor / Windsurf (via mcp-remote):

{
  "mcpServers": {
    "blocklens": {
      "command": "npx",
      "args": ["mcp-remote", "https://mcp.blocklens.co"]
    }
  }
}

Any MCP HTTP client: POST to https://mcp.blocklens.co (Streamable HTTP transport)

Local Install

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "blocklens": {
      "command": "npx",
      "args": ["-y", "blocklens-mcp-server"],
      "env": {
        "BLOCKLENS_API_KEY": "blk_your_key_here"
      }
    }
  }
}

Config file location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
Cursor / Windsurf

Add to your MCP config (.cursor/mcp.json):

{
  "blocklens": {
    "command": "npx",
    "args": ["-y", "blocklens-mcp-server"],
    "env": {
      "BLOCKLENS_API_KEY": "blk_your_key_here"
    }
  }
}
Demo Mode (No API Key)

Works without an API key — you get 60 days of history for basic-tier metrics. Get an API key at blocklens.co/api-keys for full access.

Available Tools (15)

ToolDescription
list_metricsList all 127 available metrics with categories and tiers
search_metricsSearch metrics by keyword
get_metricGet full definition of a single metric
get_categoriesList metric categories with counts
get_pricesBTC daily OHLC, market cap, volume, drawdown, realized volatility (1W–1Y)
get_holder_supplyLTH/STH supply breakdown, circulating supply
get_holder_valuationRealized cap/price, MVRV, thermo cap, delta cap, balanced price, investor cap
get_holder_profitNUPL, realized/unrealized P/L, SOPR — LTH/STH breakdowns (Pro tier)
get_cohort_metricsAge cohort supply, realized cap, realized price (12 age brackets)
get_utxo_historyUTXO set breakdown by age cohort
get_coindaysCoin Days Destroyed, liveliness, vaultedness, dormancy, dormancy flow
get_blockchainBlock height, blocks mined
get_cycle_performanceCycle performance indexed from lows, ATHs, halvings
get_latest_metricsLatest snapshot across all categories
render_chartRender any metric as PNG with annotations and templates

Metrics Coverage (127 total)

Market Data (27 metrics)

Price, OHLC, volume, market cap, drawdown from ATH, 6 realized volatility windows (1W, 2W, 1M, 3M, 6M, 1Y), cycle performance, and individual cycle tracks from lows, ATHs, and halvings.

Supply (16 metrics)

Circulating supply, LTH/STH supply, cost basis distribution heatmap, and 12 age cohort supplies (<24h through 10y+) for HODL Waves analysis.

Valuation (41 metrics)

Realized cap, realized price, MVRV (aggregate + LTH/STH), thermo cap, delta cap, average cap, balanced price, investor cap, market cap/thermo cap ratio, and 24 age cohort realized prices and caps.

Profitability (12 metrics)

NUPL, unrealized/realized P/L, SOPR — each with aggregate, LTH, and STH breakdowns.

Coin Days (11 metrics)

Coin Days Destroyed (CDD), binary CDD, supply-adjusted CDD, liveliness, vaultedness, dormancy, dormancy flow, net coin days, coin days accumulated, transferred price, transfer volume.

ETF Analytics (11 metrics)

Total BTC holdings, AUM, net/cumulative flows, cumulative money flow, ETF realized price, US Spot ETF realized price, US Spot cumulative money flow, BTC dominance, US BTC holdings, ETF premium average.

Blockchain (2 metrics)

Block height, blocks mined.

Chart Rendering

The render_chart tool generates PNG charts inline in the conversation.

Quick examples:

render_chart({ metric: "price", days: 365 })
render_chart({ template: "mvrv_ratio" })
render_chart({ metrics: ["lth_supply", "sth_supply"], style: "area" })
render_chart({ metric: "dormancy_flow", overlay: "price" })
render_chart({ template: "realized_volatility", days: 730 })

Annotations — reference lines and areas:

render_chart({
  metric: "lth_mvrv",
  reference_lines: [
    { "y": 3.5, "label": "Overheated", "stroke": "#ef4444", "dash": "3 3" }
  ],
  reference_areas: [
    { "y1": 0, "y2": 0.85, "label": "Undervalued", "fill": "#22c55e", "fill_opacity": 0.15 }
  ]
})

Example Prompts

  • "What's Bitcoin's current MVRV ratio and what does it say about valuation?"
  • "Show me realized volatility — is short-term vol higher than long-term?"
  • "Chart dormancy flow with price overlay for the last 2 years"
  • "Compare LTH and STH supply trends over 90 days"
  • "Are long-dormant coins waking up? Check liveliness and CDD"
  • "Show cycle performance from each halving — are we tracking historical patterns?"
  • "What's the current NUPL level? Is the market in euphoria or fear?"

Access Tiers

TierHistoryMetricsDaily Requests
Demo (no key)60 daysBasic (grade 0)Unlimited
Pro ($50/mo)UnlimitedAll grade 0–110,000
Enterprise ($900/mo)UnlimitedAll grade 0–2100,000

Links

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y blocklens-mcp-server

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-blocklens-blocklens-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "blocklens-mcp-server"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

blocklens-mcp-servernpm

Compatible MCP Clients

io.github.blocklens/blocklens-mcp-server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More