accueil / serveurs / Dev & Code / io.github.donnywin85/arb-dex-mcp
io.github.donnywin85/arb-dex-mcp
serveur MCP (Model Context Protocol)
Aucun comportement malveillant détecté au test comportemental.
Est-ce que io.github.donnywin85/arb-dex-mcp est sûr ?
Au dernier audit MCP Hub, le serveur MCP « io.github.donnywin85/arb-dex-mcp » est classé « Vérifié ». Aucun comportement malveillant détecté au test comportemental. Le verdict est réévalué en continu ; consultez la fiche pour l'état à jour.
Méthode : MCP Hub analyse la description de chaque outil (couche 1) et, pour le verdict fort, exécute le serveur dans une micro-VM isolée avec leurres et réseau bloqué (couche 2). On publie des noms et des compteurs, jamais le contenu brut renvoyé par un outil.
Versions auditées & empreintes
Vérifiez la version que vous utilisez : son empreinte doit correspondre à celle listée ici — sinon vous n'utilisez pas la version auditée.
Vous utilisez ce serveur ? Suivez-le (créez un compte) pour être alerté dès qu'une nouvelle version paraît ou que le verdict change.
Les 6 outils
- get_chains≈ 202 tokens
List every blockchain this API covers, with its chain ID, native asset, default trading pair, the token tickers it prices, and the DEX venues it reads (both Uniswap-v2-style pools and Uniswap-v3-style concentrated-liquidity pools). Call this first to discover valid `chain` values for the other tools. With a RapidAPI key you get the full per-chain token and venue lists; without one it falls back to the free public snapshot, which names the chains but not their token universes, and says so in the response. Paid route: needs your own RapidAPI key in RAPIDAPI_KEY (free tier available at https://rapidapi.com/donnydev/api/multi-chain-dex-prices-liquidity).
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "get_chains", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_pairs≈ 311 tokens
Show what is queryable on a single chain: the token tickers the API prices, the DEX venues it reads, and the chain default pair. A `pair` for get_prices is written as TOKEN_A/TOKEN_B from these tickers (first symbol is the base, second is the quote) — any ERC-20 contract address on the chain also works in place of a ticker. This returns the token universe, not a fixed enumerated pair list: the API prices whatever pair of these you ask for that has live pool liquidity, and returns 404 when no pool exists. Without a RapidAPI key it falls back to the free snapshot and returns only the pairs actually measured in the latest scan of that chain, labelled as such. Paid route: needs your own RapidAPI key in RAPIDAPI_KEY (free tier available at https://rapidapi.com/donnydev/api/multi-chain-dex-price
Paramètres, retour & exemple (1)
Paramètreschain· string · requis · bsc | polygon | arbitrum | base | avalanche | optimism
Chain key. One of: bsc, polygon, arbitrum, base, avalanche, optimism. Numeric chain IDs are not accepted here — use the key.
Exemple d'appel{"name": "get_pairs", "arguments": {"chain": "bsc"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_prices≈ 431 tokens
Live price of one trading pair at EVERY DEX venue on a chain that holds a pool for it, read directly from pool state at a stated block number. Returns per-venue price (quote token per 1 base token), pool reserves, pool TVL in USD and the venue fee tier; plus the best bid/ask venues, the raw mid spread in basis points, aggregate liquidity, and the cross-DEX gross spread with its optimal trade size. Use this when you need the actual number a swap would price against on a specific venue, or to compare one pair across venues. For ranking opportunities across a whole chain, use get_spreads instead. Spreads are GROSS — before gas, MEV and slippage beyond the optimal size — and are not a profit estimate or trade advice. Paid route: needs your own RapidAPI key in RAPIDAPI_KEY (free tier available
Paramètres, retour & exemple (3)
Paramètresfee· integer · optionnel
Optional Uniswap-v3 fee tier in hundredths of a bip (100, 500, 2500, 3000, 10000). Restricts the v3 probe to that single tier instead of sweeping all of them. Omit to sweep every tier.pair· string · requis
Pair as BASE/QUOTE, e.g. "WBNB/USDT". The first symbol is the base (the USD-priceable side). A raw 0x… ERC-20 address may replace either ticker. Call get_pairs for the tickers a chain knows.chain· string · requis · bsc | polygon | arbitrum | base | avalanche | optimism
Chain key. One of: bsc, polygon, arbitrum, base, avalanche, optimism. Numeric chain IDs are not accepted here — use the key.
Exemple d'appel{"name": "get_prices", "arguments": {"pair": "texte", "chain": "bsc"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_spreads≈ 420 tokens
Sweep a whole chain and rank its cross-venue price dislocations, each with the buy venue, sell venue, spread in basis points, the optimal trade size, and the gross USD that size would capture. Ranking is by GROSS USD AT THE OPTIMAL SIZE, not by headline basis points — a 160bps spread against a $1,470 pool is worth about a cent, and the payload says so per row (`capturable`, `warning`, `shallowestSideTvlUsd`). Venues below the liquidity floor are excluded because a spread against a dust pool is an artefact, not an opportunity. Numbers are GROSS: before gas, MEV and any slippage beyond the optimal size. Not a profit estimate and not trade advice. With a RapidAPI key and live=true this runs a fresh on-chain sweep (slow, ~30s, most current). Otherwise it serves the free hourly public snapshot,
Paramètres, retour & exemple (4)
Paramètreslive· boolean · optionnel
true = run a fresh on-chain sweep now (requires RAPIDAPI_KEY, takes ~30s). false/omitted = the free public snapshot, rebuilt hourly.chain· string · requis · bsc | polygon | arbitrum | base | avalanche | optimism
Chain key. One of: bsc, polygon, arbitrum, base, avalanche, optimism. Numeric chain IDs are not accepted here — use the key.limit· integer · optionnel
Live sweeps only. Maximum rows, 1..40. Default 15.minSpreadBps· number · optionnel
Live sweeps only. Minimum spread in basis points to report. Default 10.
Exemple d'appel{"name": "get_spreads", "arguments": {"chain": "bsc"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_history_summary≈ 239 tokens
Describe the coverage of this API's own measurement archive before you query it: how many rows exist, how many distinct pairs are tracked, which chains have been seen, the first and last observation timestamps, the span in hours, and the retention policy. Call this FIRST to find out whether a window you care about is even covered — the archive only holds what the service measured while it was running, and a missing hour stays a gap rather than being interpolated. `rowsByEra` breaks the archive down by how much detail each row carries: older rows may hold digest totals only, newer ones full per-pair sweeps, so an early row answers fewer questions than a recent one. Every row was recorded live from on-chain reads; nothing is estimated or backfilled. Paid route: needs your own RapidAPI key in
Paramètres, retour & exemple (0)
Exemple d'appel{"name": "get_history_summary", "arguments": {}}Exemple de retour{"content": [{"type": "text", "text": "…"}]} - get_history≈ 404 tokens
Time series for a single pair from this API's measurement archive: per-venue price and liquidity points, and the GROSS cross-venue spread computed from those same measured venues, over a 24h, 7d or 30d window. Use this to see how a dislocation behaved over time — whether a spread persisted or was a single-sample artefact — which the live tools (get_prices, get_spreads) cannot tell you because they only see now. Coverage is whatever was measured: sampling is once per digest build (roughly hourly), each venue reports its own observation count, and gaps mean the service was not running then. They are never interpolated or backfilled. Call get_history_summary first to see which chains and how much span exist. Spreads are GROSS — before gas, MEV and slippage beyond the optimal size — and are no
Paramètres, retour & exemple (3)
Paramètrespair· string · requis
Pair as BASE/QUOTE, e.g. "WETH/USDC" (a BASE-QUOTE dash form is accepted too). Only pairs the service has actually measured are in the archive — get_history_summary lists what is tracked.chain· string · requis · bsc | polygon | arbitrum | base | avalanche | optimism
Chain key. One of: bsc, polygon, arbitrum, base, avalanche, optimism. Numeric chain IDs are not accepted here — use the key.window· string · optionnel · 24h | 7d | 30d
Look-back window: 24h, 7d or 30d. Default 24h.
Exemple d'appel{"name": "get_history", "arguments": {"pair": "texte", "chain": "bsc"}}Exemple de retour{"content": [{"type": "text", "text": "…"}]}
Badge pour votre README
Ce serveur a passé le pentest comportemental. Le badge porte son nom et renvoie à cette fiche — la preuve, c'est la fiche (verdict live qu'on contrôle), pas l'image.
[](https://dokore.fr/serveur/io.github.donnywin85--arb-dex-mcp)
<a href="https://dokore.fr/serveur/io.github.donnywin85--arb-dex-mcp"><img src="https://dokore.fr/badge/io.github.donnywin85--arb-dex-mcp.svg" alt="Vérifié par MCP Hub" height="20"></a>
Réévalué en continu : si le comportement change, le verdict tombe et le badge disparaît. Un badge qui ne pointe pas vers une fiche dokore.fr ne prouve rien. Comment ça marche
C'est votre serveur ?
Revendiquez-le sur l'espace créateur (preuve GitHub, domaine ou npm) pour afficher le badge « propriétaire vérifié » et lancer un pentest comportemental à la demande afin d'obtenir le badge « Vérifié ».
Source
arb-dex-mcp@1.0.1