Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

MangroveAI

REMOTE · API.MANGROVEDEVELOPER.AI

Backtest and paper-trade crypto strategies. Free API key or pay per call in USDC (x402).

61 Trust /100

Last scanned (4 hours ago)

Scores higher than 46% of remote servers

Reachable. Last reached 22 Oct 2026.

Category Crypto and Web3

Trust breakdown (7 categories)

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 Security63
Transport & Reachability100
Schema Quality & AI Usability62
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 16545 tokens (~217/item across 76 items; 76 tools + 0 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 Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage98
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 95% of tool parameters carry a description.Partial
Tool Safety75
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • 0 of 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "delete_strategy" implies "delete" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
  • An AI judge read all 76 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
  • Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail

Unverified: 1 category

A category scored 0 because we could not verify it: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

Changelog

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.

  • 22 Oct 26 61

    First indexed and scored.

Diagnostics

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 22 Oct 2026 · Probed https://api.mangrovedeveloper.ai/mcp/

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=api.mangrovedeveloper.ai CN=WR3,O=Google Trust Services,C=US 25 Sept 2026 24 Dec 2026 RSA 2048 SHA256-RSA aae04edd20fa9b940ab5455cdb70a4bd
SANs: api.mangrovedeveloper.ai
CN=WR3,O=Google Trust Services,C=US (CA) CN=GTS Root R1,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 RSA 2048 SHA256-RSA 7ff005a91568d63abc22861684aa4b5a
CN=GTS Root R1,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 19 Jun 2020 28 Jan 2028 RSA 4096 SHA256-RSA 77bd0d6cdb36f91aea210fc4f058d30d

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of api.mangrovedeveloper.ai. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
ai. present 3799 8 Verified
mangrovedeveloper.ai. 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
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
x-content-type-options nosniff
x-frame-options DENY
referrer-policy same-origin

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.mangrovedeveloper.ai/mcp/ Verified 200
http (plaintext) http://api.mangrovedeveloper.ai/mcp/ HTTPS enforced 301 https://api.mangrovedeveloper.ai:443/mcp/
MCP tools · 76 exposed · ~16,545 tokens

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 →

Tool Tokens
build_strategy_for_regime ~284

Run the Strategy Engine route in one call. Use it FIRST whenever someone asks to build or make a strategy and names no signals -- 'build me a strategy', 'build me a BTC strategy on 1h', 'make me something for ETH'. Give the asset, and the candle size only when they named one. The server reads the 180-day regime, searches the engine's completed runs once with the agreed floors (more than 10 trades, Sharpe at least 1, IRR at least 10%, beats benchmarks) in that regime, keeps the runs whose entry the regime admits, picks one at random, saves it from its own run and backtests it on the last 90 days (30 for 5m). Do not pass filters, a regime or dates: they are fixed. When nothing fits it saves and spends nothing, and you move straight to a fresh build. It does not search the marketplace. [Access: pay 0.10 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
assetstringyesAsset symbol, e.g. BTC or ETH.
candle_sizestring–Duration of one candle, e.g. 1h or 1d.

No output schema declared.

No examples provided.

classify_market_segment ~551

Classify one stretch of market: a date range, or a catalog window by file name. Explicit date ranges require daily (1d) candles; catalog windows retain their stored interval. Returns its direction band, volatility band, trend character and the three features behind them, using the same labels the sweep catalog carries. Use it for a period the person names, or to see what a window a sweep selected contains. For an asset's current conditions use get_market_regime instead. Volatility reads `unscored` when no fitted band covers the stretch's length; the bands come back with it. For an exact crypto market, supply quote_token and market_data_venue together. A date range covers crypto and the stocks, ETFs, commodities and bonds in Oracle's regime catalog: SPY, QQQ, DIA, IWM, AAPL, AMD, AMZN, COST, GOOGL, HD, JNJ, JPM, META, MSFT, NFLX, NVDA, PG, TSLA, UNH, WMT, XOM, GLD, SLV, USO, GOLD (gold futures), CRUDE (crude oil futures) and TLT. Without explicit source arguments, those tickers are read from their exchange-session daily series, even where a crypto token shares one (DIA and META are the ETF and the stock here); any other ticker is read as crypto, so a stock not named here cannot be read. Explicit market or provider arguments select the crypto history path. `venue` says which feed was read. A listed ticker needs at least 15 sessions with a close, about three weeks; anything shorter is refused as too little history. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
assetstring–Asset symbol, e.g. BTC or ETH.
candle_sizestring–Duration of one candle, e.g. 1h or 1d.
end_datestring–ISO end of the window.
market_data_venuestring–Exact venue of the requested market.
providerstring–Optional upstream override; omitted uses the existing server default.
quote_tokenstring–Quote currency of the requested market.
start_datestring–ISO start of the window, e.g. 2026-01-01.
window_filestring–A catalog window's file name, classified as it stands. Supply this or the asset with both dates, not both.

No output schema declared.

No examples provided.

delete_strategy ~48

Permanently delete a strategy by its ID. Use this only when the user explicitly asks to delete a strategy. Always confirm the strategy name and ID before deleting.

NameTypeReqDescription
strategy_idstringyes–

No output schema declared.

No examples provided.

discover_tools ~110

Discover Mangrove managed tools without executing them. Free, public read. Use detail=areas for the functional area index; summary (default) returns only names and descriptions; schema returns full live tool definitions. Select any areas and/or tool names; combined selectors form a union.

NameTypeReqDescription
areasarray–Functional area names returned by detail=areas.
detailstring–Output detail. The areas index takes no selectors.
namesarray–One or any number of exact advertised tool names.

No output schema declared.

No examples provided.

evaluate_multiple_signals_series ~226

Evaluate chart data and optional signal triggers over a specific range. [Access: pay 0.05 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chart_timeframestring–Live chart timeframe; dataset mode uses its bundled timeframe
dataset_keystring–Bundled dataset key; replaces symbol and date range
end_datestring–Live-mode chart end timestamp; required unless dataset_key is provided
market_data_venuestring–Live-data exchange; supply with quote_token
providerstring–Explicit external history provider
quote_tokenstring–Live-data quote; supply with market_data_venue
signalsarray–Up to 20 registered signals to evaluate
start_datestring–Live-mode chart start timestamp; required unless dataset_key is provided
symbolstring–Live-mode asset symbol; required unless dataset_key is provided

No output schema declared.

No examples provided.

evaluate_signal ~89

Evaluate a signal against provided market data and parameters. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
market_dataarrayyes–
parametersobject––
signal_namestringyesSignal name

No output schema declared.

No examples provided.

evaluate_strategy ~89

Evaluate a strategy against current live market data to check if entry or exit signals are active — read-only signal check, does NOT place any orders. Returns the current asset price and any order intents the signals would produce. Use this when the user asks whether a strategy should be entering or exiting right now, or wants to know the live signal state for a specific strategy.

NameTypeReqDescription
strategy_idstringyes–

No output schema declared.

No examples provided.

find_sweep_runs ~1,299

Runs from one sweep, or from every sweep this person has, filtered and sorted by the engine. LEAVE experiment_id OUT to search them all, which is how a person asking whether they have already found something like this gets an answer without spending a new search on a question that already has one. A SWEEP HAS NO WINNER: which run matters depends entirely on what was being asked, so you choose sort_by for the question in front of you -- return, risk-adjusted return, drawdown, trade count -- and say which one you sorted by whenever you report an order. Never call the top row 'the best strategy'; it is the top row by the measure you picked. Filter before you sort: a run with a handful of trades has metrics that mean nothing, so min_trades is usually the first thing to set. Every numeric filter has BOTH bounds, so a band is one question: a delta against the benchmark between 3 and 8 is min and max together, not a page fetched and thinned by hand. Readable while the sweep is still running. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
assetstring–Asset symbol, e.g. BTC or ETH.
atr_periodinteger–Only runs that used this ATR period. Needs experiment_id.
beats_benchmarksboolean–Only runs that beat all three benchmarks over the same
beats_crypto_benchmarksboolean–Only runs that beat the crypto benchmarks rather than only their own asset.
candle_sizestring–Duration of one candle, e.g. 1h or 1d.
cooldown_barsinteger–Only runs that used this cooldown. Needs experiment_id.
coveringstring–Only runs over windows covering this single date, as YYYY-MM-DD. A different question from a span.
covering_fromstring–Only runs whose window OVERLAPS this date onwards. A run is relevant to 2024 if any of it happened in 2024.
covering_tostring–Only runs whose window overlaps up to this date.
experiment_idstring–The sweep, as create_sweep returned it.
generationstring–Only runs from this engine generation, so runs made under different engine behaviour are not compared as though alike.
limitinteger–Maximum results.
market_directionstring–Only runs from windows of this market character, e.g. bear or mega_bull. Several are one comma-separated string, e.g. "bull,super_bull", and a run matching any of them counts. What a run did in one k…
max_delta_vs_assetnumber–Only runs beating their own asset by at most this much.
max_delta_vs_benchmarknumber–Only runs beating their benchmark by at most this much, so "between 3 and 8" is one question rather than a page fetched and thrown away.
max_irrnumber–Only runs at or below this annualised IRR.
max_returnnumber–Only runs at or below this total return.
max_risk_per_tradenumber–Only runs that risked this fraction per trade. Needs experiment_id.
max_sharpenumber–Only runs at or below this Sharpe ratio.
max_tradesinteger–Only runs at or below this trade count. Pairs with min_trades to ask for a band rather than a floor.
max_win_ratenumber–Only runs at or below this win rate.
min_delta_vs_assetnumber–Only runs beating buy-and-hold on their own asset by at least this much.
min_delta_vs_benchmarknumber–Only runs that beat their benchmark by at least this much. A return in a rising market is not skill.
min_irrnumber–Only runs at or above this annualised IRR.
min_returnnumber–Only runs at or above this total return.
min_sharpenumber–Only runs at or above this Sharpe ratio.
min_tradesinteger–Drop runs with fewer trades than this. Metrics from a handful of trades are noise.
min_win_ratenumber–Only runs at or above this win rate.
offsetinteger–Pagination offset in the result units documented by the tool; zero starts the first page.
orderstring–desc for best-first on that metric, asc for worst-first.
regime_compositestring–Only runs from windows with this full regime label, e.g. mega_bull_high_clean, when the three parts together matter; several comma-separated, any of them counts. Across different regime filters every…
regime_directionstring–The direction band from get_market_regime, e.g. bear. The signal searches filter by it and find_sweep_runs marks each row's regime_fit with it; save_strategy and update_strategy read the current band…
reward_factornumber–Only runs that used this reward-to-risk setting. Execution filters need experiment_id; the cross-sweep surface does not serve them.
run_indexinteger–Which run, as find_sweep_runs reported it.
run_statusstring–Only runs with this outcome, e.g. no_trades for the ones that never opened a position.
sort_bystringyesThe metric to order by, e.g. sharpe_ratio, sortino_ratio, irr_annualized, total_return, max_drawdown, total_trades. Required, because the choice IS the question being asked.
trendstring–Only runs from windows of this trend character, e.g. clean or choppy; several comma-separated, any of them counts.
trigger_namestring–Only runs whose entry trigger is this signal.
volatilitystring–Only runs from windows of this volatility band, e.g. low; several comma-separated, any of them counts.

No output schema declared.

No examples provided.

get_asset ~118

Full metadata and risk profile for one crypto asset on the Mangrove platform: approval status, risk score breakdown, regulatory status and identifiers. Use it when the user asks about a specific asset's approval or risk detail rather than a live price. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_backtest ~136

Fetch a backtest that already ran, by id, with the execution config it used. Use it instead of run_backtest whenever the user refers to a previous result, or to compare two runs -- re-running costs them a unit of their allowance and a stored run is the record of what actually happened. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
backtest_idstringyesThe run's UUID, as run_backtest returned it.

No output schema declared.

No examples provided.

get_backtest_trades ~190

The individual trades a backtest made -- entry and exit prices and times, profit or loss, and why each one closed. Use it when the user asks what a backtest actually traded; get_backtest has the summary metrics. THESE ARE SIMULATED TRADES from a backtest, not real ones -- list_trades has those. A long run is paged: pass offset to read on. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
backtest_idstringyesThe run's UUID, as run_backtest returned it.
limitinteger–Maximum results.
offsetinteger–Pagination offset in the result units documented by the tool; zero starts the first page.

No output schema declared.

No examples provided.

get_benchmark ~227

Buy-and-hold return for an asset between two dates, as a percentage. Use it whenever you state what a strategy returned: a return with nothing to compare it against does not answer whether the strategy was worth running. run_backtest already includes this for its own window, so call this for a different asset or a different period. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
assetstringyesAsset symbol, e.g. BTC or ETH.
base_tokenstring–Canonical base token; supply with quote_token and market_data_venue.
end_datestringyesISO end of the window.
market_data_venuestring–Exact venue of the requested market.
quote_tokenstring–Quote currency of the requested market.
start_datestringyesISO start of the window, e.g. 2026-01-01.

No output schema declared.

No examples provided.

get_chain_tvl ~117

Total Value Locked for a whole blockchain such as Ethereum, Base or Solana. Returns USD TVL and the top protocols on that chain. Use it when the user asks about a chain's overall DeFi footprint. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainstringyesChain name or slug, e.g. ethereum or base.

No output schema declared.

No examples provided.

get_etf_flows ~107

Crypto ETF net flows -- institutional inflows and outflows for spot BTC and ETH ETFs. Persistent net inflows are a bullish tape signal; heavy outflows bearish. Use it when the user asks about ETF flows, institutional demand or spot ETF activity. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_execution_config_schema ~132

Every execution-config parameter a strategy can carry: the platform default, what it does, the effect of raising or lowering it, its legal bounds, and whether it is a strategy-character knob, an account guardrail, gated behind another flag, or retained but unused. Call it before discussing or overriding any risk parameter, so you describe the knob that exists rather than one you remember. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_global_market ~102

Global crypto market snapshot -- total market cap, BTC dominance, total 24h volume and the 24h change. Use it when the user asks about overall market conditions or wants a macro view rather than a per-asset reading. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_influence_score ~134

Influence score for a single X/Twitter account: a 0-100 score and follower count. Use it when the user asks about a specific influencer or KOL, or wants to know how much weight an account carries in crypto conversation. It is a per-account snapshot, not a topic aggregate. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
usernamestringyesX/Twitter handle, with or without the leading @.

No output schema declared.

No examples provided.

get_lending_rates ~107

Per-pool borrow rates across DeFi lending protocols such as Aave, Compound and Morpho. Useful for rate-spread arbitrage screens and stablecoin yield analysis. Use it when the user asks about lending rates, borrow costs or DeFi yield. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_market_data ~231

Latest trade price for a selected market, plus aggregate market cap and 24h volume. Pass quote_token and market_data_venue together to honor a requested exchange. When omitted, selects a supported market and returns its quote and venue. Report the returned venue and quote; disclose price_as_of and price_stale. Use it when the user asks what an asset is doing now, or when a live price is needed to ground a recommendation. It is a spot reading from an external API and is rate limited, so call it once per asset and reuse the answer. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
market_data_venuestring–Exact venue of the requested market.
providerstring–Optional upstream override; omitted uses the existing server default.
quote_tokenstring–Quote currency of the requested market.
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_market_regime ~495

Classify an asset's regime using a lookback of 1-365 days of daily closes: the return and a bull/neutral/bear band over 90, 180 and 365 days, plus annualised volatility as a percentage, a bucket, and a z-score against the asset's own baseline; and the whole lookback in the sweep catalog's labels (direction, low/medium/high volatility for its asset class and length, and a clean/mixed/choppy trend). Use it before recommending a strategy style, because a mean-reversion design and a trend-following design suit opposite regimes. Covers crypto and the stocks, ETFs, commodities and bonds in Oracle's regime catalog: SPY, QQQ, DIA, IWM, AAPL, AMD, AMZN, COST, GOOGL, HD, JNJ, JPM, META, MSFT, NFLX, NVDA, PG, TSLA, UNH, WMT, XOM, GLD, SLV, USO, GOLD (gold futures), CRUDE (crude oil futures) and TLT. Without explicit source arguments, those tickers are read from their exchange-session daily series, even where a crypto token shares one (DIA and META are the ETF and the stock here); any other ticker is read as crypto, so a stock not named here cannot be read. Explicit market or provider arguments select the crypto history path. `venue` says which feed was read. A listed ticker needs at least 15 sessions with a close, about three weeks; anything shorter is refused as too little history. For a listed ticker the lookback is calendar days, so 365 reads about 250 sessions. For an exact crypto market, supply quote_token and market_data_venue together. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
assetstringyesAsset symbol, e.g. BTC or ETH.
lookback_daysinteger–Number of days of history to request.
market_data_venuestring–Exact venue of the requested market.
providerstring–Optional upstream override; omitted uses the existing server default.
quote_tokenstring–Quote currency of the requested market.

No output schema declared.

No examples provided.

get_marketplace_strategy ~129

One marketplace listing in full: its metrics, the signals it is built from (names only; the creator's tuning is never exposed), its backtest summary, and whether it is already in this account. Use it before describing or offering a specific listing, so what you say is what the marketplace holds. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
strategy_idstringyesThe strategy's UUID.

No output schema declared.

No examples provided.

get_ohlcv ~226

Daily OHLCV (open, high, low, close, volume) history for one crypto asset over the requested lookback (1-3650 days). Use it when the user asks for price history, chart data, or wants to reason about past price movement rather than the current spot. Supply quote_token and market_data_venue together to select an exact market, or provider for an external source; omit these overrides to select a Mangrove market. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
lookback_daysinteger–Number of days of history to request.
market_data_venuestring–Exact venue of the requested market.
providerstring–Optional upstream override; omitted uses the existing server default.
quote_tokenstring–Quote currency of the requested market.
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_onchain_series ~318

Per-bar on-chain metric time series for a token. One request returns a bar-indexed series with any combination of SmartMoneyNetflow, SmartMoneyHoldings, ExchangeNetflow, WhaleNetInflow and HolderConcentration. Interval is 1h, 4h, 1d or 1w; top_n is how many top holders HolderConcentration sums; the only provider is nansen. Native ETH is read as WETH, and the token must be deployed on the chain asked for. Prefer this over firing many point queries when the user wants a historical or trailing-window view. [Access: pay 0.05 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainstring–Chain name or slug, e.g. ethereum or base.
date_fromstring–ISO date string for the start of the window.
date_tostring–ISO date string for the end of the window.
intervalstring–Candle size, e.g. 15m, 1h, 4h, 1d.
metricsarrayyesMetric names to include in the series.
providerstring–Optional upstream override; omitted uses the existing server default.
symbolstringyesAsset symbol, e.g. BTC or ETH.
top_ninteger–Return only the first this many.

No output schema declared.

No examples provided.

get_perp_funding_rates ~98

Aggregated DeFi perpetual funding rates across venues. Positive funding means longs are paying to hold; negative means shorts are. Use it when the user asks about perp funding, crowded positioning or leverage bias. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_playground_data ~30

Return OHLCV chart data for a specific playground dataset.

NameTypeReqDescription
dataset_keystringyes–

No output schema declared.

No examples provided.

get_protocol_tvl ~123

Total Value Locked for a single DeFi protocol such as Aave, Uniswap or Curve. Returns USD TVL and a per-chain breakdown. Use it when the user asks how much capital is locked in a specific protocol. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
protocol_namestringyesProtocol slug or display name, e.g. aave or uniswap.

No output schema declared.

No examples provided.

get_signal ~74

Get complete metadata for an exact registered signal name. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
signal_namestringyesSignal name

No output schema declared.

No examples provided.

get_smart_money_dex_trades ~185

Recent DEX trades from smart-money wallets across chains. Returns a paginated list of executed trades with token, side, size and wallet metadata. Use it when the user asks what smart money is trading on DEXs, or wants a raw feed of smart-money swap activity. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainsarray–Optional list of chains to include.
filtersobject–Optional filter object passed through to the upstream provider.
order_byarray–Optional ordering list passed through to the upstream provider.
pageinteger–Page number for pagination.
per_pageinteger–Page size for pagination.

No output schema declared.

No examples provided.

get_smart_money_flows ~242

One-token flow intelligence snapshot: returns net USD flows and wallet counts for smart traders, whales, exchanges, fresh wallets and public figures together in ONE response. Use for a trailing-window category summary, including the past 24 hours (timeframe=1d). Do not fetch a separate token-flows page for each category to construct this summary. Timeframe is 5m, 1h, 6h, 12h, 1d or 7d. For explicit start/end dates or paginated flow records use get_token_flows. Native ETH is read as WETH; the token must exist on the requested chain. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainstring–Chain name or slug, e.g. ethereum or base.
symbolstringyesAsset symbol, e.g. BTC or ETH.
timeframestring–Aggregation window, e.g. 24h, 7d.

No output schema declared.

No examples provided.

get_smart_money_historical_holdings ~213

Historical snapshots of what smart-money wallets held on specific dates. Returns per-wallet-category holdings with USD values. Use it when the user wants to see how smart-money positioning has changed over time, or wants historical on-chain portfolio data for a date range. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainsarray–Optional list of chains to include.
date_fromstring–ISO date string for the start of the window.
date_tostring–ISO date string for the end of the window.
filtersobject–Optional filter object passed through to the upstream provider.
order_byarray–Optional ordering list passed through to the upstream provider.
pageinteger–Page number for pagination.
per_pageinteger–Page size for pagination.

No output schema declared.

No examples provided.

get_smart_money_holdings ~150

Current smart-money holdings: what funds and smart traders are holding right now, sorted by USD value. Use it when the user asks what smart money currently owns or has positions in. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainsarray–Optional list of chains to include.
include_labelsarray–Smart-money wallet labels; omitted uses Fund and Smart Trader.
limitinteger–Maximum results.
min_value_usdnumber–Minimum USD value to include.

No output schema declared.

No examples provided.

get_smart_money_netflows ~167

Aggregated smart-money netflows across all tokens market-wide: which tokens funds and smart traders are accumulating or distributing. Use it when the user asks what smart money is buying or selling, or wants to see market-wide on-chain trends. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainsarray–Optional list of chains to include.
include_labelsarray–Smart-money wallet labels; omitted uses Fund and Smart Trader.
limitinteger–Maximum results.
timeframestring–Aggregation window, e.g. 24h, 7d.

No output schema declared.

No examples provided.

get_smart_money_perp_trades ~172

Perpetual futures trades from smart-money wallets on Hyperliquid. Shows leveraged directional bets by sophisticated traders. Use it when the user asks about smart-money perp positions, what high-conviction traders are doing with leverage, or wants to see Hyperliquid smart-money activity. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
filtersobject–Optional filter object passed through to the upstream provider.
order_byarray–Optional ordering list passed through to the upstream provider.
pageinteger–Page number for pagination.
per_pageinteger–Page size for pagination.

No output schema declared.

No examples provided.

get_smart_money_sentiment ~167

On-chain sentiment read for a token derived from smart-money wallet net flows. Returns a sentiment label (bullish, bearish or neutral) and net USD flow direction. Use it when the user asks what smart-money sentiment is for an asset, or wants a quick bullish or bearish read from on-chain flow data. For X or Twitter social sentiment use get_social_sentiment instead. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainstring–Chain name or slug, e.g. ethereum or base.
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_social_mentions ~151

Recent X/Twitter posts about a crypto asset or topic: post text, id and time, at most 10 posts, plus how many posts the search matched. Use it when the user wants to see what is actually being said, or wants raw posts rather than an aggregated sentiment score. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
hours_backinteger–Lookback window in hours.
limitinteger–Maximum results.
topicstringyesAsset symbol, project name or free-form topic.

No output schema declared.

No examples provided.

get_social_sentiment ~233

Keyword-polarity sentiment for a crypto cashtag on X/Twitter. It fetches recent posts for $TOPIC and counts how many contain a positive and how many a negative keyword; the 0-100 score is the positive share of those polar posts. Returns the score, a bullish (70 or more), neutral or bearish (30 or less) label, and the number of posts read. When no post carried a sentiment keyword the score is null and the label is insufficient_signal: report that, not a neutral reading. Always state how many posts the reading was built from. Use it when the user asks about market mood or social sentiment for a token. The call is metered, so ask once per topic and reuse. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
hours_backinteger–Lookback window in hours.
topicstringyesAsset symbol, project name or free-form topic.

No output schema declared.

No examples provided.

get_stablecoin_metrics ~100

Global stablecoin metrics -- total supply, per-chain breakdown and the top stablecoins by market cap. Use it when the user asks about stablecoin supply, USDC or USDT dominance, or overall market liquidity. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_strategy ~134

Fetch one saved strategy in full -- its entry and exit signals, asset, timeframe and status. Accepts either strategy_id or name. Use it before discussing or changing a specific strategy so you describe what is actually stored rather than what was said earlier in the conversation. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
namestring–Its name, if the id is unknown.
strategy_idstring–The strategy's UUID.

No output schema declared.

No examples provided.

get_symbol_exchanges ~113

The exchanges that list one specific token, with per-venue metadata. Use it when the user asks where a token trades or which venues carry it, rather than for a price on any one of them. [Access: pay 0.001 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_token_dex_trades ~241

DEX trades for a specific token across all participants in a date window. Returns raw swap events with wallet, size and pool metadata; useful for post-hoc flow analysis on a single token. Native ETH is read as WETH, and the token must be deployed on the chain asked for. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainstring–Chain name or slug, e.g. ethereum or base.
date_fromstring–ISO date string for the start of the window.
date_tostring–ISO date string for the end of the window.
filtersobject–Optional filter object passed through to the upstream provider.
order_byarray–Optional ordering list passed through to the upstream provider.
pageinteger–Page number for pagination.
per_pageinteger–Page size for pagination.
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_token_flows ~296

Paginated historical flow records for one non-stablecoin token between explicit start and end dates, optionally filtered by one wallet label. Use for date-range records or pagination. For a trailing-window summary of net USD flows AND wallet counts across categories, use get_smart_money_flows, which returns the categories together in one call. Not available for stablecoins. Native ETH is read as WETH; the token must exist on the requested chain. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
chainstring–Chain name or slug, e.g. ethereum or base.
date_fromstring–ISO date string for the start of the window.
date_tostring–ISO date string for the end of the window.
filtersobject–Optional filter object passed through to the upstream provider.
labelstring–Wallet category: smart_money, exchange, whale, public_figure, or top_100_holders.
order_byarray–Optional ordering list passed through to the upstream provider.
pageinteger–Page number for pagination.
per_pageinteger–Page size for pagination.
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_token_holders ~142

On-chain token holder distribution for a token: total on-chain holder count, top-10 concentration percentage and a concentration score. Nansen aggregates across chains, so pass the symbol only and do not pass a chain argument. Use it when the user asks how many wallets hold a token, about holder count, holder concentration, whale ownership or distribution risk. [Access: pay 0.02 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

NameTypeReqDescription
symbolstringyesAsset symbol, e.g. BTC or ETH.

No output schema declared.

No examples provided.

get_token_unlocks ~103

Token unlock schedules and supply metrics -- upcoming vesting cliffs and total supply movement per token. Heavy near-term unlocks are a supply-shock signal. Use it when the user asks about unlocks, vesting or supply overhang. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_trades_for_strategy ~53

Get trade records for a specific strategy by its ID. Use this when the user asks about trades or performance for a particular named strategy.

NameTypeReqDescription
limitinteger––
strategy_idstringyes–

No output schema declared.

No examples provided.

get_treasuries ~96

DeFi protocol treasury holdings -- how much a protocol holds in its own treasury and what tokens it owns. Use it when the user asks about protocol treasuries, DAO holdings or protocol-owned liquidity. [Access: pay 0.01 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_trending ~98

The crypto assets trending right now by 24h search volume. Use it when the user asks what is popular, what the market is paying attention to, or wants a discovery view rather than a specific asset lookup. [Access: pay 0.005 USDC via x402 (PAYMENT-SIGNATURE header) OR authenticate with an API key. An x402-capable client will auto-pay; API-key clients pay nothing per call.]

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

kb_get_document ~282

Read a requested KB guide or a known source section by slug. Use directly when the user requests the document itself; no preliminary graph call is required. For a general explanation use query_knowledge op=ask, not a document-reading sequence. If a needed slug is unknown, locate it with kb_search or kb_list_documents. Use view=overview for a guide summary; view=section with a returned section_anchor for a specific passage. Content defaults to 6000 characters; offset and next_offset count characters within the selected body. Continue only when the requested material is missing, not merely because has_more is true. full=True is for explicit full-document requests. A document excerpt is educational material; executable signal identities and parameters come from the runtime registry.

NameTypeReqDescription
fullboolean–Explicit full content download; cannot combine with offset or max_chars.
max_charsinteger–Page size, default 6000, capped at 12000 and the response budget.
offsetinteger–Pagination offset in the result units documented by the tool; zero starts the first page.
section_anchorstring–Exact anchor from overview or search, required only for section view.
slugstringyesThe document slug.
viewstring–Use overview for a brief summary and headings; section for a specific topic; content for document pages.

No output schema declared.

No examples provided.

kb_get_signal_quick_reference ~253

Read the Signals Quick Reference guide when the user asks for that guide or its documented entries. This is the document-reading shortcut for kb_get_document slug=10-signals-quick-reference, not an additional validation step. Use view=overview for its outline or view=section with a known anchor for a passage. Content defaults to 6000 characters; offset and next_offset count characters within the selected body. Continue only for requested missing text. Reserve full=True for explicit downloads. For conceptual signal combinations use query_knowledge op=ask. For executable signal names and parameters needed to construct a strategy use the runtime catalogue, not this educational guide.

NameTypeReqDescription
fullboolean–Explicit full content download; cannot combine with offset or max_chars.
max_charsinteger–Page size, default 6000, capped at 12000 and the response budget.
offsetinteger–Pagination offset in the result units documented by the tool; zero starts the first page.
section_anchorstring–Exact anchor from overview or search, required only for section view.
viewstring–Use overview for a brief summary and headings; section for a specific topic; content for document pages.

No output schema declared.

No examples provided.

kb_glossary_get ~116

Return the KB glossary entry for an explicitly requested glossary definition or exact glossary term. No preliminary graph call is required for a glossary request. For a general question such as what RSI means, why it behaves that way, or which indicators complement it, start with query_knowledge op=ask. Exact lookup is case-insensitive and may return partial matches. Answer from the returned definition when sufficient; do not routinely follow it with graph or document searches.

NameTypeReqDescription
termstringyesThe term to look up, case-insensitive.

No output schema declared.

No examples provided.

kb_list_documents ~58

Reads the Mangrove Knowledge Base package: every document's slug, title and summary. For a keyword search instead of browsing use kb_search. Use this when the user wants to browse the KB or you need a slug before calling kb_get_document.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

Install

How do I install the MangroveAI MCP server?

MangroveAI is a hosted endpoint at https://api.mangrovedeveloper.ai/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 · api.mangrovedeveloper.ai

# add to Claude Code
claude mcp add --transport http mangrovetechnologies-mangroveai 'https://api.mangrovedeveloper.ai/mcp/'
Common questions

What is the MangroveAI MCP server?

MangroveAI is an MCP server listed in the public MCP registry as io.github.MangroveTechnologies/mangroveai. Backtest and paper-trade crypto strategies. Free API key or pay per call in USDC (x402). This page covers its hosted endpoint (https://api.mangrovedeveloper.ai/mcp/).

Is the MangroveAI MCP server safe to use?

MangroveAI scores 61 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 MangroveAI MCP server expose?

MangroveAI exposes 76 tools: delete_strategy, update_strategy_status, get_trades_for_strategy, list_positions, evaluate_strategy, and 71 more. Their descriptions and schemas cost roughly 16,545 tokens of context every time the server is loaded.

Does the MangroveAI MCP server require authentication?

No. We connected to MangroveAI without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the MangroveAI MCP server still maintained?

MangroveAI is still listed as active in the MCP registry. We last reached this channel on 22 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.