Epsilon
by epsilon.exchange in Markets & finance
Non-custodial limit, stop-loss and DCA trading on Epsilon (Robinhood Chain) for AI agents
https://api.epsilon.exchange/mcp
Last 30 days
- Uptime
- 100%
- Response time
- 163 ms typical, 163 ms slowest 5%
- Last check
- 3 h ago
- Next check
- in 2 h
How to call it
Add it to any MCP client that supports remote servers.
{
"mcpServers": {
"epsilon": {
"type": "http",
"url": "https://api.epsilon.exchange/mcp"
}
}
}22 tools
- cancel_order
Ask the user to approve cancelling one of their open orders (hash from list_orders). Returns an approval link; the cancellation is signed by the user's wallet in the Epsilon app. Orders already filled cannot be cancelled.
- check_order
Check whether a resting order (limit, stop, DCA, trailing) for this pair and size would be executable: oracle support, liquidity, minimum size. Run this before signing any resting order; it does not price the trade — get_route does. Amounts are RAW token units.
- get_approval
Status of an approval you created: pending (user hasn't decided), submitted (with orderHash or txHash — then use get_order to follow fills), rejected, failed, or expired (links live 30 minutes). Poll no more than every few seconds.
- get_error_catalog
Machine-readable catalog of every error code the Epsilon API returns, with meanings and retry guidance. Consult it when any other tool returns an error code you need to interpret or decide whether to retry.
- get_example
Full source code of one Epsilon integration example, by id from list_examples. No API key required.
- get_grant
The signed-in account's agent grant for this channel, if any: the embedded wallet it signs with, per-order and daily caps, what remains today, allowed order kinds, and whether the Epsilon signer is actually granted on the wallet. Call it before placing to know whether an order wi
- get_market_stats
Market-level numbers for Epsilon (Robinhood Chain DEX). scope=overview (default) is the best first call: top tokens by 30-day volume, 24h volume, and engine-wide order/fill stats in one response. scope=engine returns only order counts by status, fill counts and volume aggregates;
- get_me
The signed-in Epsilon account behind this session: account id, handle, linked wallets (embedded first), the scopes this client was granted, and which client is connected. Call it first after sign-in to learn the wallet address other tools need. Requires an OAuth session (connect
- get_order
One Epsilon order by hash: status (pending/active/filled/cancelled/expired), parameters, and its fills. Use list_orders to find orders by wallet first; use get_orderbook for the market's resting orders on a pair.
- get_orderbook
The market's open (pending/active) limit orders on both sides of a token pair, largest first — liquidity you can rest against. For one wallet's own orders use list_orders instead.
- get_quote
Best executable quote for swapping tokenIn → tokenOut on Epsilon (Robinhood Chain, id 4663): expected output and price. Use this for a quick price check; use get_route when you need the venue split, fee legs or minimum output for an order you will sign. Amounts are RAW token unit
- get_route
Full routing breakdown for a swap: best venue split, expected and minimum output, price impact (ppm), and the feeLegs a signed order must embed (pass orderType for a resting order so the right fee cell is served). Use get_quote for a plain price; use check_order to learn whether
- list_examples
List runnable Epsilon integration examples (Python cron DCA, LangChain tools, Vercel AI SDK tools, Telegram bot). Fetch full source with get_example. No API key required.
- list_fills
Executed trades (swaps and order fills) on Epsilon, newest first, optionally for one wallet — the trade history. For resting/open orders use list_orders. Amounts are RAW token units.
- list_orders
A wallet's Epsilon orders filtered by status and/or type — the portfolio view, newest first. Use get_order for one order's fills; use list_fills for executed trades.
- place_dca_order
Ask the user to approve a DCA program: sell amount of tokenIn for tokenOut in `executions` equal slices, one every `every` (15m, 1h, 1d…). Optionally gated by triggerPrice (only sells at or below it). Keeper-executed after signing; always returns an approval link — DCA is never e
- place_limit_order
Place a resting limit order: sell amount tokenIn for tokenOut once the market reaches limitPrice (tokenOut per tokenIn) or better. Keeper-executed — it keeps working with the chat closed. If the user granted this client an agent grant and the order fits its caps, it is queued wit
- place_market_order
Ask the user to approve a market swap of amount tokenIn → tokenOut at the best current route. Returns an approval link, not a fill: the user signs in the Epsilon app. Use get_quote first to tell the user what to expect. For a price-conditional order use place_limit_order or place
- place_stop_order
Place a stop-loss: sell amount tokenIn for tokenOut if the price falls to triggerPrice (tokenOut per tokenIn). Keeper-executed. Queued under an active agent grant that covers it, otherwise returns an approval link (status needs_approval). Use place_limit_order to sell ABOVE the m
- place_trailing_order
Ask the user to approve a trailing stop: sell amount tokenIn for tokenOut when price drops trailPercent below its running high since placement. Keeper-executed after signing; always returns an approval link — trailing stops are never executed under an agent grant. For a fixed lev
- search_docs
Search the Epsilon developer documentation (API, auth, order signing, webhooks, rev-share, SDKs, MCP). Returns the most relevant doc sections. No API key required.
- search_tokens
Resolve a token symbol or name to its address and decimals — call this FIRST when the user names a token; every other tool takes addresses. volume30dUsd disambiguates same-symbol tokens: the real one has volume.
Security scan
- No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.
Recent checks
| When | Result | HTTP | Time |
|---|---|---|---|
| 3 h ago | Passed | 200 | 163 ms |