io.github.bitcompare/mcp-server
Measured conclusion: Deep-tested. L2 outcome: tools_ok.
Crypto yield data for AI agents: lending, savings, staking, borrowing & stablecoin rates. 18 tools.
| Author | io.github.bitcompare |
|---|---|
| Access | mixed |
| Publisher key required | No |
| Measured state | Deep-tested |
| L1 liveness | alive |
| L1 latency | 871 ms |
| Last measured | 2026-10-24 |
Add to your agent
Copy this into your MCP client config:
{
"mcpServers": {
"mcp-server": {
"url": "https://api.bitcompare.net/mcp",
"transport": "streamable-http"
}
}
}
Measured tools (21)
get_ratesread-onlyList current rates across providers, optionally filtered by symbol, category, or provider. For "what is the best yield on BTC right now?" style questions, ALWAYS pass category="lending"/"borrowing"/"staking" — an unfiltered call mostly returns spot prices (category="price"), not yields.
Parameters:
limit— integer — Max results, default 100symbol— string — Filter by coin symbol, case-insensitive (e.g. "btc" or "BTC")category— string — Filter by product category. IMPORTANT for yield questions: without this filter, most returned rows are category="price" (spot prices), not yields. Pass category="lending", "borrowing", or "staking" to get APY/interest-rate data.provider— string — Filter by provider slug, case-insensitive
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_rate_by_symbolread-onlyFetch all provider rates for a specific coin symbol. Optionally filter by category — pass category="lending"/"borrowing"/"staking" for yield questions, since unfiltered results mix in spot prices (category="price").
Parameters:
symbol(required) — string — Coin symbol, case-insensitive (e.g. "btc" or "eth")category— string — Filter to a single product category. Without it, results mix spot prices (category="price") in with yields — pass "lending"/"borrowing"/"staking" for yield-only results.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_rate_historyread-onlyHistorical rate timeseries for a symbol. Recent history (~30 days) is per-tick; older history is daily granularity. Depth is clamped to your plan (up to 365 days on Pro) and bounded by how far back data has been recorded. (Current plan: up to 1825 days of history.)
Parameters:
symbol(required) — string — Coin symbol, case-insensitivedays— integer — Days of history. Clamped server-side to your plan (Free 7, Starter 30, Growth 90, Pro 365, Enterprise 1825) and bounded by available data. Points within ~30 days are per-tick; older points are daily.provider— string — Provider slug to scope to, case-insensitive
Hints: read-only yes · destructive no · idempotent yes · open-world yes
list_providersread-onlyAll rate providers, optionally filtered by product category.
Parameters:
limit— integer — Max results, default 100category— string — Filter to providers that offer this category
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_coinread-onlyFull metadata for a coin: description, links, categories, market data, developer stats.
Parameters:
coinId(required) — string — Canonical coin id or slug (e.g. "bitcoin")
Hints: read-only yes · destructive no · idempotent yes · open-world yes
list_coinsread-onlyPaginated list of coins with optional name/symbol search.
Parameters:
page— integer — Page, default 1limit— integer — Page size, default 20search— string — Search by name or symbol
Hints: read-only yes · destructive no · idempotent yes · open-world yes
top_coinsread-onlyTop N coins ordered by market capitalisation.
Parameters:
limit— integer — Number of coins, default 100
Hints: read-only yes · destructive no · idempotent yes · open-world yes
similar_coinsread-onlyCoins related to the given coin by category/sector similarity.
Parameters:
coinId(required) — string — Canonical coin id to find related coins for (e.g. "bitcoin")limit— integer — Max related coins to return, default 10
Hints: read-only yes · destructive no · idempotent yes · open-world yes
coin_historyread-onlyHistorical price timeseries for a coin. (Current plan: up to 1825 days of history.)
Parameters:
coinId(required) — string — Canonical coin id (e.g. "bitcoin")days— integer — Days of history
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_priceread-onlyCurrent aggregated price for one or more symbols, computed from multiple exchange feeds.
Parameters:
symbols(required) — Single symbol or array of symbols (e.g. "btc" or ["btc","eth"])vs— string — Quote currency, default "usd"
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_price_by_symbolread-onlyAggregated exchange price for one symbol, plus the raw per-provider prices that fed the aggregate. Use get_price for multiple symbols in one call.
Parameters:
symbol(required) — string — Single coin symbol, e.g. "btc"vs— string — Quote currency, default "usd"region— string — Optional region filter for provider selection
Hints: read-only yes · destructive no · idempotent yes · open-world yes
market_summaryread-onlyOne-call summary of total market cap, 24h volume, BTC/ETH dominance, and recent trend.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
fear_greed_indexread-onlyCurrent Fear & Greed index value and historical trend.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
top_moversread-onlyBiggest 24h gainers and losers within a rank segment.
Parameters:
limit— integer — Number of gainers and losers to return on each side, default 10segment— string — Rank segment, default "top100"
Hints: read-only yes · destructive no · idempotent yes · open-world yes
stablecoin_indexread-onlyRanked stablecoin leaderboard with stability scores, peg deviation, and market cap.
Parameters:
limit— integer — Default 50
Hints: read-only yes · destructive no · idempotent yes · open-world yes
stablecoin_peg_stabilityread-onlyPeg deviation history and stability stats for a stablecoin.
Parameters:
symbol(required) — string — Stablecoin symbol (e.g. "usdt", "usdc")period— string — Stability window, default "30d"
Hints: read-only yes · destructive no · idempotent yes · open-world yes
resolve_symbolread-onlyMap an exchange-specific or ambiguous symbol to bitcompare's canonical coin id. Useful when an exchange uses a non-standard ticker.
Parameters:
symbol(required) — string — Exchange-specific or ambiguous symbolcontext— string — Source exchange or quote currency to disambiguate (e.g. "kraken", "binance")
Hints: read-only yes · destructive no · idempotent yes · open-world yes
resolve_symbols_batchread-onlyResolve up to 100 symbols in a single request. Requires a plan with bulk endpoints enabled.
Parameters:
symbols(required) — array — Up to 100 symbols to resolve in a single requestcontext— string — Source exchange or quote currency applied to every input symbol
Hints: read-only yes · destructive no · idempotent yes · open-world yes
stablecoin_earn_benchmarkread-onlyThe Bitcompare Earn Index for stablecoins: median USDC/USDT lending APY across servable providers, with CeFi/DeFi splits, TVL-weighted variant, deltas, and an immutable daily history. Use for "what does stablecoin yield pay right now / how has it trended?" — this is the citable market reference, not a single provider quote.
Parameters:
segment— string — Restrict to one segment. Omit for the headline across overall + CeFi + DeFi.history_days— integer — Request the daily series for the last N days instead of the headline. Anonymous/free access is clamped to the most recent 90 days.
Hints: read-only yes · destructive no · idempotent yes · open-world yes
get_rate_changesread-onlyThe immutable rate-change log: every material yield move with full provenance (previous rate, raw value, multiplier, collection method, confidence, base/bonus split). Time-ascending pages via cursor. Unfiltered windows are capped at 31 days — filter by provider or symbol to walk deep history. Use for "what changed since X?" and audit trails.
Parameters:
since(required) — string — ISO date/datetime lower bound (required), e.g. "2026-08-01"limit— integer — Page size, default 100until— string — ISO upper bound, default nowcursor— string — Opaque cursor from a previous pagesymbol— string — Filter to one symbol, e.g. "USDC"category— stringprovider— string — Filter to one provider (enables deep ranges)
Hints: read-only yes · destructive no · idempotent yes · open-world yes
list_earn_productsread-onlyThe canonical earn product graph: products (provider × asset × category) with their term variants — lockups, tiers, minimum deposits, payout schedules, withdrawal notice, TVL, promo flags — each carrying collection method, confidence (0-100 with bands), verification timestamps, and geo eligibility resolved from variant overrides or provider defaults. Use for "what are the actual terms behind this rate?"
Parameters:
limit— integer — Page size, default 50offset— integersymbol— string — Filter to one symbol, e.g. "BTC"category— stringprovider— string — Filter to one provider, e.g. "nexo"min_confidence— integer — Only products with at least one variant at/above this confidence
Hints: read-only yes · destructive no · idempotent yes · open-world yes
Measured by MCPYP probing. Untested fields are omitted, never estimated. Listing is always free; MCPYP never proxies calls or stores user tokens.