ai.shumi/mcp
NPM · @SHUMI-AI/MCP · 2 COMPONENTS
Crypto market intelligence: prices, funding rates, narratives, regime, and delta-neutral research.
Available components
Last scanned (2 hours ago)
Scores higher than 99% of npm servers
Category Crypto and Web3
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security100
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 0 of 9 dependencies flagged as unhealthy. View diagnostics → Pass
Provenance & Transparency97
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Cryptographically verified build provenance (signed, bound to shumi-ai/shumi-mcp). View diagnostics → Pass
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 21 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability86
- 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 4066 tokens (~116/item across 35 items; 33 tools + 2 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 Management100
- No destabilizing schema changes in the last 30 days.Pass
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
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 33 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 35 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a current MCP spec version (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.
- 1 Nov 26 +1
- Stability: 0.97 → pass security
- 30 Oct 26 −1
- Stability: pass → 0.93 functional
- 24 Oct 26 +1
- Stability: 0.97 → pass security
- Security disclosure: unverified → fail ▼ functional
- 23 Oct 26 −1
- Security disclosure: fail → unverified ▼ functional
- Stability: pass → 0.97 functional
- 17 Oct 26 +1
- Stability: 0.97 → pass security
- 15 Oct 26 +47
- Injection markers: unverified → pass ▲ security
- Schema quality: 3579 → 4066 ▼ functional
- MCP protocol: unverified → pass ▲ functional
- Schema quality: unverified → 100 ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- Stability: unverified → 0.93 ▲ functional
- 14 Oct 26 −46
- Stability: 0.87 → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Schema quality: 100 → unverified ▼ functional
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- Package version: 1.2.1 → 1.3.0 functional
- 12 Oct 26 +1
- Security disclosure: unverified → fail ▼ functional
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 5 Nov 2026 · Analysed npm/@shumi-ai/mcp@1.3.0
Provenance Verified
A signed build attestation was found and verified, binding this exact artifact to the source repository it claims to come from.
| Result | Verified |
|---|---|
| Ecosystem | npm |
| Reason | Verified |
| Discovered via | Registry attestation endpoint |
| Source repo | shumi-ai/shumi-mcp |
| Certificate issuer | https://token.actions.githubusercontent.com |
| Certificate SAN | https://github.com/shumi-ai/shumi-mcp/.github/workflows/publish.yml@refs/heads/main |
| Rekor log index | 3250904899 |
| Predicate type | SLSA build provenance https://slsa.dev/provenance/v1 |
| Subject digest | sha512:9e11e8bc22462f053f60489f366644b678524aaca4123728bb7cbb74039649b9fcbaf5b2bfc37445a7bc9cae49ec0fd58ec766feea0299e21ca8c7252 |
Background: How many MCP packages publish verified provenance →
Dependencies 9 packages
| Packages resolved | 9 |
|---|---|
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
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 →
ask_shumi Ask Shumi (free-form) ~104
Ask Shumi any crypto-market question in natural language. Shumi classifies the query, fetches the relevant data, and returns a synthesized answer. Use this when no specific typed tool fits, or for multi-part / comparative questions.
| Name | Type | Req | Description |
|---|---|---|---|
| archetype | string | – | Specialization path (default "base"; e.g. "perp-dex"). |
| query | string | yes | The natural-language question, e.g. "is funding extreme on SOL right now?". |
| Name | Type | Req | Description |
|---|---|---|---|
| answer | string | – | The synthesized natural-language answer. Absent only when the engine produced no prose. |
| steps | – | – | Raw engine steps. Present only as a fallback when `answer` is absent. |
No examples provided.
get_basket Basket snapshots ~65
Daily snapshots of the tracked basket — composition and performance over time.
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_category Category detail ~99
Detail for one category. view=info (trend breakdown), coins (member coins), sentiment.
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| name | string | yes | Category name, e.g. "Layer 2". |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| view | string | – | Which category view to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_coin_historical Coin metrics at a past point in time ~152
Market cap, volume, open interest, funding rate and price for a coin AS OF a chosen point in the past. Returns a single snapshot, not a series: call it once per point you want to compare (e.g. amount=7 interval=d for a week ago, then again with no offset for now). Use this to answer "how has funding/open interest changed since…".
| Name | Type | Req | Description |
|---|---|---|---|
| amount | integer | – | How far back to look, in units of `interval`. Omit for the most recent snapshot. |
| interval | string | – | Unit for `amount`: h (hours) or d (days). Defaults to hours. |
| symbol | string | yes | Coin symbol, e.g. ETH. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_coin_risk Coin risk context ~133
Bundled risk context for one or more coins: price, funding APR, deterministic funding_paying_side, funding_receiving_side, carry_if_long and carry_if_short fields, daily/weekly trend, sentiment stance, and BTC correlation. Funding applies to perpetual positions only; spot positions neither pay nor receive it. Relay the carry fields exactly rather than inferring direction from crowding. The best single tool for "should I be worried about X".
| Name | Type | Req | Description |
|---|---|---|---|
| symbols | – | yes | Symbols as an array ["BTC","ETH","SOL"] or a comma-separated string "BTC,ETH,SOL". 1-15 of them. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_coin_sentiment Coin sentiment ~34
On-chain/social sentiment aggregates for a single coin.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol | string | yes | Coin symbol, e.g. BTC. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_funding_alerts Funding alerts ~74
Discrete funding-rate alert events (asset, trigger zone, funding at trigger, fired-at time).
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_funding_momentum Funding momentum ~101
Perpetual funding-rate positioning context, market-wide or for one symbol. APR is already in percent units (1.7 = 1.7%). Positive funding means longs pay and shorts receive; negative funding means shorts pay and longs receive. Funding is context only, not a standalone directional, timing, or entry signal.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol | string | – | Restrict to one symbol, e.g. BTC. Omit for the market-wide view. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_futures_signals Futures signals ~118
Perpetual-futures signal engine. view=state (currently open signals), log (recent fires), history (one asset's past signals — needs asset).
| Name | Type | Req | Description |
|---|---|---|---|
| asset | string | – | Asset symbol, e.g. BTC. Required when view="history". |
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| view | string | – | Which futures view to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_global_market Global market aggregates ~23
Global market aggregates: BTC dominance, total market cap, total volume.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_holders Token holder tracking ~128
Tracked token-holder cohorts. view=watchlist (which token contracts are tracked), movements (recent holder-count changes for one contract). Answers "is the holder base growing or bleeding?".
| Name | Type | Req | Description |
|---|---|---|---|
| contract | string | – | Token contract address. Required when view="movements". |
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| limit | integer | – | Max results. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| view | string | – | Which holder view to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_market_crossing Market trend crossing ~58
The most recent regime crossing — when one trend cohort (UP/HODL/DOWN) overtook another market-wide. Answers "has the market flipped?". Returns an empty `crossings` array plus a message when no crossing has fired.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_market_health Market health ~55
Overall market health: the UP/HODL/DOWN trend distribution and extreme movers. Set context for the full bundle.
| Name | Type | Req | Description |
|---|---|---|---|
| context | boolean | – | Include the full market-context bundle (breadth velocity, regime age, leadership). |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_market_sentiment Market sentiment ~96
Aggregate market sentiment. view=market/latest/summary (overall), narratives, categories, slopes/entity-slopes (what is trending), health (pipeline status).
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| view | string | – | Which sentiment view to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_narrative Narrative sentiment ~36
Sentiment and momentum for a single named narrative.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Narrative name, e.g. "AI coins". |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_pair_suggestions Pair / delta-neutral suggestions ~206
Pair-trading and delta-neutral funding-arbitrage intelligence. mode=suggestions (pair ideas), delta-neutral (funding arb), history (backtest), signal (state for a specific pair — needs token_a & token_b).
| Name | Type | Req | Description |
|---|---|---|---|
| dex_only | boolean | – | DEX exchanges only (delta-neutral). |
| exchange | string | – | Filter by exchange (delta-neutral). |
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| limit | integer | – | Max results. |
| mode | string | – | Which pair view to return. |
| symbol | string | – | Filter by symbol (suggestions / delta-neutral). |
| token_a | string | – | First token (required for mode="signal"), e.g. ETH. |
| token_b | string | – | Second token (required for mode="signal"), e.g. SOL. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_prices Bulk live prices ~129
Bulk live prices, optionally with 4h/24h/7d baseline overlays. Omit symbols for the full tracked set.
| Name | Type | Req | Description |
|---|---|---|---|
| baselines | boolean | – | Include 4h/24h/7d baseline price overlay. |
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| symbols | – | – | Symbols as an array ["BTC","ETH"] or a comma-separated string "BTC,ETH". Omit for all tracked coins. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_regime Market regime ~73
Market regime signals. view=active (current positions), signals (all), confidence (scores). Provide symbol to get that symbol's regime history instead.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol | string | – | If set, returns regime history for this symbol. |
| view | string | – | Which regime view to return (ignored when symbol is set). |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_rwa_asset Real-world asset detail ~143
Price, daily/weekly trend and perp funding for one real-world asset (stock, ETF, commodity, index, FX). Look up by ticker (AAPL, GOLD) or by namespaced id (xyz:AAPL). Funding belongs to the PERPETUAL CONTRACT, not the underlying — `funding.apr` is the annualized rate in percent, `funding.rate` is the raw per-hour fraction. Do not use the crypto coin tools for these.
| Name | Type | Req | Description |
|---|---|---|---|
| by | string | – | How `identifier` is interpreted. |
| identifier | string | yes | Ticker (AAPL, GOLD, SP500) or namespaced id (xyz:AAPL). |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_signal Synthesized signal ~38
Synthesized verdict for a coin, combining trend, funding, sentiment and regime.
| Name | Type | Req | Description |
|---|---|---|---|
| symbol | string | yes | Coin symbol, e.g. SOL. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_signal_quality Signal quality ~59
Signal validation envelope for an asset: Sharpe ratio, win rate, sample size, reliability tier.
| Name | Type | Req | Description |
|---|---|---|---|
| asset | string | yes | Asset symbol, e.g. BTC. |
| signal_type | string | – | Signal type (default: mean_reversion). |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_transcripts Transcript highlights ~110
Highlights mined from tracked video/podcast transcripts. view=highlights (extracted claims with the coins, sectors and macro tags they mention), sources (which channels are tracked). Answers "what are people actually saying about X?".
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| view | string | – | Which transcript view to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_unlock_calendar Unlock calendar (market-wide) ~243
Upcoming token unlocks ACROSS THE MARKET when no single coin is named: each row has date, days until, coin, tokens, USD value, % of market cap, recipients and insider (team + investor) share, with its source. Defaults: next 7 days, top 500 coins, at least 0.5 % of market cap, ranked by % of market cap. Only coins DropsTab tracks; each recipient's next release only. Answers "biggest unlocks this week?", "big VC unlocks this month?". For one coin use get_unlocks.
| Name | Type | Req | Description |
|---|---|---|---|
| days | integer | – | Window in days from today (default 7). |
| insidersOnly | boolean | – | Only unlocks with a team or investor leg. |
| limit | integer | – | Rows to return (default 15). |
| maxRank | integer | – | Only coins up to this market-cap rank (default 500). |
| minPct | number | – | Minimum size in % of market cap (default and floor 0.5). |
| sort | string | – | pct = biggest share of market cap (default), usd = biggest dollar value, date = soonest. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_unlocks Token unlock schedule ~244
Scheduled token unlocks for ONE coin: the next unlock (date, days until, tokens, USD value, % of market cap, recipients such as team/investors/ecosystem, cliff or monthly tranche), what releases over 30 and 90 days, % unlocked and locked, the final unlock date, the last unlock, and how price moved in the 7 days before and after its last 3-6 unlocks (history, not a forecast). Sources: DropsTab cross-checked with DefiLlama, each figure with its source link and fetch time; `state` says `upcoming`, `fully_unlocked`, `no_unlock_data` or `not_covered` (then `publishedSchedule` may carry the project's own vesting terms). Answers "when is ARB's next unlock?", "who gets the OP unlock?", "how did SUI trade around its unlocks?".
| Name | Type | Req | Description |
|---|---|---|---|
| coinId | string | – | Coin id (e.g. "arbitrum") when a previous result gave it; wins over the ticker when several coins share it. |
| symbol | string | yes | Coin ticker, e.g. ARB. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
get_wallets Wallet tracking ~123
Tracked wallets. view=watchlist (which wallets are tracked), movements (recent balance changes for one wallet address). Answers "what did this wallet do recently?".
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Wallet address. Required when view="movements". |
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| limit | integer | – | Max results. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| view | string | – | Which wallet view to return. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
list_categories List categories ~79
List tracked crypto categories by their exact names (e.g. "Meme", "Layer-2"), the names scan_coins expects.
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | array | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
list_narratives List narratives ~72
List the currently active market narratives (e.g. "AI coins", "DeFi summer").
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
list_rwa_assets List real-world assets ~152
List the tradable real-world assets — stocks and ETFs (AAPL, NVDA, SPY), metals and commodities (GOLD, SILVER, BRENT), stock indices (SP500, JP225) and FX. These trade as perps on Hyperliquid builder DEXes and are NOT crypto tokens; the crypto tools will not find them. Use this to answer "which stocks/commodities can I look at?".
| Name | Type | Req | Description |
|---|---|---|---|
| dex | string | – | Filter by builder-DEX slug, e.g. "xyz". |
| top | integer | – | Max assets to return (server default 200; the full universe is ~94). |
| type | string | – | Filter by asset class. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | The tool payload, unwrapped from the CLI envelope. |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
lookup_coin Look up a coin ~217
Look up a single coin and its core metrics (price, trend, metadata) by symbol, name, CoinGecko/internal id, or on-chain contract address. Read the coin's CURRENT trend from `currentTrend` ({ trend: UP|DOWN|HODL, since, days, asOf, incompleteDayExcluded }; `currentTrendWeekly` when present is the weekly one), not from the last row of `trends` — `trends` is the history of past trend runs. Quote it as "<trend> since <since> (<days> days, as of <asOf>)". Only when `currentTrend` is absent, fall back to the last `trends` row.
| Name | Type | Req | Description |
|---|---|---|---|
| by | string | – | How `identifier` is interpreted. |
| chain | string | – | Chain for contract lookups (ethereum, bsc, solana, base, …). Required when by="contract". |
| identifier | string | yes | The symbol (BTC), name (Bitcoin), id (bitcoin), or contract address. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
resolve_coin Resolve a coin (fuzzy) ~65
Fuzzily resolve a symbol, name, or contract to canonical coin candidates. Use this first when the user input is ambiguous, before calling other tools.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max candidates to return. |
| query | string | yes | Symbol, name, or contract to resolve. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | object | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
scan_coins Scan / filter coins ~520
Filter the tracked universe by trend direction, category and market-cap band, and sort the result. For movers questions ("what's pumping", "top gainers/losers today", "biggest movers") use sort_by="change24h" ("change7d" for the week) — sort_order="desc" for gainers, "asc" for losers — and quote each row's change from the row itself (`change_24h_pct` / `change_7d_pct`, or `change24h` / `change7d`). With the default marketCap sort rows are plain coin names; a change sort may return `{ rows: [...] }` with a coverage summary instead of a bare list. Pass ONE category per call; the server ignores case and punctuation ("meme", "Layer 2" and "DeFi" all work) and rejects an unknown name with close matches (list_categories has the names). There is no exchange filter yet: `exchange` is rejected with an explanation, because the only venue data behind this scan is spot listings. Do not present a scan as "coins on <exchange>". An empty result means no coin matched all the filters.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | ONE category, e.g. "Meme", "Layer 2" or "DeFi"; case and punctuation are ignored (list_categories has the names). Comma-joined values are rejected; call once per category. |
| exchange | string | – | Not supported yet: the server rejects it with an explanation (its venue data covers spot listings only, so a filtered answer would mislead). Leave unset. |
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| interval | string | – | Trend interval: 1d (daily) or 1w (weekly). |
| limit | integer | – | Max results. |
| mcap_max | number | – | Maximum market cap in USD. |
| mcap_min | number | – | Minimum market cap in USD. |
| sort_by | string | – | Sort key (default marketCap). change24h / change7d = 24h / 7d price change, for movers / "what's pumping" questions. |
| sort_order | string | – | desc (default) = largest first; asc = smallest first (e.g. biggest 24h losers). |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| trend | string | – | Filter by trend direction. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | – | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
scan_trends Scan trends ~127
Trend scanner. state=fresh (newly started), stale (longest running), aligned (multi-timeframe agreement), extreme (biggest moves), historical.
| Name | Type | Req | Description |
|---|---|---|---|
| fields | string | – | Token-saving: comma-separated top-level fields to keep. |
| interval | string | – | Trend interval: 1d (daily) or 1w (weekly). |
| limit | integer | – | Max results. |
| state | string | – | Which trend slice to return. |
| top | integer | – | Keep only the first N items (default 50). Raise for more, lower to save tokens. |
| Name | Type | Req | Description |
|---|---|---|---|
| data | array | yes | – |
| meta | – | – | Envelope metadata. Carries `_truncated` when a list was abridged to fit the response budget. |
No examples provided.
search_web Search the web ~59
Search the web for crypto information, or get a direct answer. Backed by Shumi's web-search tool.
| Name | Type | Req | Description |
|---|---|---|---|
| answer | boolean | – | Return a direct synthesized answer instead of raw search results. |
| query | string | yes | What to search for. |
| Name | Type | Req | Description |
|---|---|---|---|
| answer | string | – | The synthesized natural-language answer. Absent only when the engine produced no prose. |
| steps | – | – | Raw engine steps. Present only as a fallback when `answer` is absent. |
No examples provided.
How do I install the ai.shumi/mcp server?
ai.shumi/mcp runs locally as an npm package, launched with npx -y @shumi-ai/mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · @shumi-ai/mcp
claude mcp add ai-shumi-mcp -- npx -y @shumi-ai/mcp
What is the ai.shumi/mcp server?
ai.shumi/mcp is listed in the public MCP registry as ai.shumi/mcp. Crypto market intelligence: prices, funding rates, narratives, regime, and delta-neutral research. This page covers its npm package (@shumi-ai/mcp).
Is the ai.shumi/mcp server safe to use?
ai.shumi/mcp scores 97 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. It declares no install or post-install scripts. Its build provenance is signed and verified. 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 ai.shumi/mcp server expose?
ai.shumi/mcp exposes 33 tools: get_coin_risk, lookup_coin, resolve_coin, get_coin_sentiment, get_coin_historical, and 28 more. Their descriptions and schemas cost roughly 3,935 tokens of context every time the server is loaded.
Is the ai.shumi/mcp server still maintained?
ai.shumi/mcp is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the ai.shumi/mcp server under?
ai.shumi/mcp declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.