
Aster Agent Gateway
io.github.alekskramPublished by GitHub account alekskramv0.1.3Updated Oct 24, 2026
Read-only MCP gateway to Aster DEX: 24/7 gold, oil and equity perps, funding with real intervals.
Overview
Read-only, keyless MCP gateway to Aster DEX market data: futures and spot pairs, funding rates, order books, klines, vault flows and mark-index spreads.
- What you can do
- Browse markets and symbols: futures and spot overviews, symbol universe with filters and precision rules
- Inspect market microstructure: order books, klines by last/mark/index price, recent trades
- Analyze funding: funding overview with per-market intervals and caps/floors, annualized funding screener
- Screen TradFi perps (metals, energy, equities, treasuries, forex) and rank mark-vs-index divergence
- Check open interest snapshots and vault deposit flows across Solana and optional EVM chains
- Look up public account balance, open orders and fills for a given address
- When to use it
- Useful when you want an assistant to research Aster DEX markets, compare funding across mixed 1h-to-8h intervals, or watch 24/7 TradFi perpetuals and spot pairs without writing API code or holding keys.
- Requirements
- Runs locally as a Python package via uvx (Python tooling required); stdio by default, or a local HTTP mode on port 8904. No API keys or accounts. Network access to Aster public endpoints and Solana RPC; optional ASTER_EVM_RPC_URL (or per-chain variants) for EVM vault logs.
Installation
In SourceWeft
- Open Aster Agent Gateway in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
aster-agent-gateway
[CI] [PyPI] [PyPI downloads] [MCP Catalog] [License: MIT] [Python 3.11+]
Aster lists roughly 580 futures, and about 32 of them are things you would not expect on a crypto DEX: gold, oil, treasuries, single equities and index perps that trade 24/7 while the underlying market sleeps. This MCP server puts the whole board, plus ~68 spot pairs, funding, order books, klines and vault deposit flows, in front of an AI agent. Read-only and keyless; public endpoints only (fapi.asterdex.com/fapi/v3, sapi.asterdex.com/api/v3, tapi.asterdex.com/info, Solana RPC, optional EVM RPCs), cached and rate-limited.
Use cases
Funding first, because this is where Aster is different. Intervals vary per market, 1h to 8h; annualize naively and an 8h market reads 8x too cold. The screener computes every row from its own interval and shows cap/floor next to it, so a 4,148%/yr print comes with the context that explains it.
Then the TradFi board at 3am: gold at $4,365 with live volume, oil paying longs to hold (negative funding, -0.0001%/1h when we looked), Micron up 4.8% overnight. One API, same conventions as the crypto rows.
mark_index_divergence ranks all ~756 markets by mark-vs-index spread. The morning we captured it, RTXUSDT topped both that board (505 bps rich) and the funding board at once, which is the classic pre-squeeze picture. Vault deposit flows show who parks capital where; OI snapshots are per-symbol and honest about the fact that Aster has no keyless OI history.
Full walkthroughs: examples/use-cases.md.
Quickstart
Claude Code:
stdio (default, for local agents):
or from a checkout:
Claude Desktop / Cursor config:
Hosted form, streamable HTTP on port 8904:
Codex (~/.codex/config.toml)
ZCode: register the server (copy-paste)
Tools
All 13 tools are read-only (annotated readOnlyHint: true, destructiveHint: false).
Why a gateway and not the raw API?
Aster's fapi/sapi/tapi endpoints are plain REST. The traps are in the semantics:
Rate limits
Two REST buckets, locally enforced and weight-aware:
- fapi 2400 weight/min, sapi 6000/min (header
X-MBX-USED-WEIGHT-1Mread after every call). Above 80% of a bucket the client self-throttles; 429 backs off honoringRetry-After; a 418 (repeated 429 = IP ban) triggers a 60s refusal cooldown. Depth/kline limits snap to priced tiers so callers cannot accidentally burn weight. - Solana 10 req/min, tapi 30/min, EVM 20/min local budgets (separate ledgers, fail-fast honest errors).
TTL caches: exchangeInfo 3600s, fundingInfo 600s, premiumIndex and tickers 15s, depth 5s, klines 60s, trades 10s, openInterest 30s.
Data notes
- Every numeric from the API is a STRING upstream; parsed with a
never-raising helper -
nullalways means "not available", never zero. - Every upstream failure returns an error dict
{"error", "source", "reason"}, never a traceback. - No OI history exists keyless (
/futures/data/openInterestHist404s) - the gateway says so instead of inventing data. - EVM vault logs need
ASTER_EVM_RPC_URL(or per-chainASTER_EVM_RPC_URL_{BSC,ETH,ARB}); free public RPCs reject vault queries with -32005. Unset -> honest "no RPC configured". - tapi account privacy: most accounts are private; empty results are reported as privacy, not as data.
- Cached responses carry
age_seconds/fetched_atfreshness fields.
Part of the suite
Four sibling read-only MCP gateways, one style: keyless, cached, honest degradation.
All four are on glama.ai and PyPI; any of them installs with uvx <name>.
License
MIT.
Source: README.md at commit 6f9c622
Tools
0Version history
2- v0.1.3LatestSep 23, 2026
- v0.1.2Sep 22, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
