Solana token data, PnL, risk scores, 1-second OHLCV, wallet analytics, and self-hosted swap execution via Raptor
npx skills add https://github.com/agiprolabs/claude-trading-skills --skill solanatracker-api
SolanaTracker provides comprehensive Solana token data with unique features: 1-second OHLCV resolution, wallet PnL tracking, risk scoring, bundler/sniper detection, and a self-hosted DEX aggregator (Raptor) supporting 25+ DEXes with no rate limits.
import httpx
API_KEY = os.getenv("SOLANATRACKER_API_KEY", "")
BASE = "https://data.solanatracker.io"
HEADERS = {"x-api-key": API_KEY}
# Token info with risk score, pools, holders
resp = httpx.get(f"{BASE}/tokens/{mint}", headers=HEADERS)
token = resp.json()
print(f"Risk: {token['risk']['score']}/10, Pools: {len(token['pools'])}")
# Wallet PnL
resp = httpx.get(f"{BASE}/pnl/{wallet}", headers=HEADERS)
pnl = resp.json()
print(f"Win rate: {pnl['summary']['winPercentage']}%")
x-api-key header# Full token info (metadata, pools, risk, events, holders summary)
GET /tokens/{tokenAddress}
# New tokens (paginated, pages 1-10)
GET /tokens/latest?page=1
# Trending by volume (default: past hour)
GET /tokens/trending
GET /tokens/trending/{timeframe} # 5m, 15m, 30m, 1h, 4h, 12h, 24h
# Top performers
GET /tokens/top
# Graduated from bonding curves (pump.fun → Raydium)
GET /tokens/graduated
GET /tokens/graduating
# Multiple tokens in one request
GET /tokens/multi?tokens=ADDR1,ADDR2
# Deployer's tokens
GET /tokens/deployer/{deployerAddress}
# Token by pool address
GET /tokens/pool/{poolAddress}
# All-time high
GET /tokens/{token}/ath
# Current price with liquidity and market cap
GET /price?token={address}
# Price with change percentages
GET /price?token={address}&priceChanges=true
# Historic prices (3d, 5d, 7d, 14d, 30d snapshots)
GET /price/history?token={address}
# Multiple token prices
GET /price/multi?tokens=ADDR1,ADDR2
# Candle data — supports 1s resolution (unique to SolanaTracker)
GET /chart/{token}?type=1s&time_from=UNIX&time_to=UNIX
# Timeframes: 1s, 5s, 15s, 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1mn
# Optional: currency=usd|sol|eur, removeOutliers=true, marketCap=true
# Specialized charts
GET /chart/{token}/bundlers # Bundler activity overlay
GET /chart/{token}/holders # Holder count overlay
GET /chart/{token}/insiders # Insider activity overlay
GET /chart/{token}/snipers # Sniper activity overlay
# Full wallet PnL across all tokens
GET /pnl/{wallet}
# Token-specific PnL
GET /pnl/{wallet}/{token}
# First buyers with PnL
GET /first-buyers/{token}
# Optional params: showHistoricPnL=true (1d/7d/30d), holdingCheck=true
PnL response summary fields: realized, unrealized, total, totalInvested, averageBuyAmount, totalWins, totalLosses, winPercentage, lossPercentage
# All tokens held by wallet
GET /wallet/{owner}
# Paginated wallet tokens
GET /wallet/{owner}/paginated
# Trade history
GET /wallet/{owner}/trades
# Portfolio chart over time
GET /wallet/{owner}/chart
# Paginated holder list
GET /tokens/{token}/holders?page=1
# Top 100 holders
GET /tokens/{token}/holders/top
# Top 20 holders (lighter)
GET /tokens/{token}/holders/top20
# Bundler detection
GET /tokens/{token}/bundlers
# Global top traders
GET /top-traders/all
GET /top-traders/all/paginated?page=1
# Token-specific top traders
GET /top-traders/{token}
# Optional: expandPnl=true, sortBy=total|winPercentage
Risk is included in the /tokens/{token} response:
{
"risk": {
"score": 7, // 1-10 (10 = safest)
"rugged": false,
"jupiterVerified": true,
"risks": [
{ "name": "Top 10 holders own 45%", "level": "warn" },
{ "name": "Freeze authority enabled", "level": "danger" }
]
}
}
Risk factors: sniper/insider concentration, developer holdings, bundler activity, top 10 holder %, mint/freeze authority, social presence, metadata completeness, liquidity.
GET /search?query=BONK&minLiquidity=10000&minRiskScore=5&market=raydium&sortBy=volume&limit=50
# Key filters: query, symbol, minLiquidity, maxLiquidity, minMarketCap, maxMarketCap,
# minVolume, maxVolume, hasImage, hasSocials, minHolders, maxHolders, minRiskScore,
# freezeAuthority, mintAuthority, deployer, market, sortBy, sortOrder, limit (max 500), page
> See the dedicated raptor-dex skill for complete Raptor documentation including setup, API reference, deployment guides, WebSocket streaming, and execution scripts.
Raptor is SolanaTracker's self-hosted DEX aggregator: 25+ DEXes, no rate limits, no API key, Yellowstone Jet TPU submission. GitHub | Docs
Real-time streaming via WebSocket for 30+ event types:
import websockets, json
async def stream():
uri = f"wss://datastream.solanatracker.io/{DATASTREAM_KEY}"
async with websockets.connect(uri) as ws:
# Subscribe to token trades
await ws.send(json.dumps({"type": "join", "room": f"transaction:{token_addr}"}))
# Also: price:{token}, holders:{token}, latest_tokens, graduated, etc.
async for msg in ws:
data = json.loads(msg)
if data.get("type") != "joined":
print(data)
Key channels: transaction:{token}, price:{token}, holders:{token}, latest_tokens, graduated, graduating, bundlers:{token}, insiders:{token}, snipers:{token}, wallet_transaction:{wallet}
| Need | Use |
|------|-----|
| 1-second OHLCV candles | SolanaTracker |
| Wallet PnL tracking | SolanaTracker |
| Token risk scoring | SolanaTracker |
| Bundler/sniper detection | SolanaTracker |
| Self-hosted swap execution | Raptor |
| Free no-auth quick lookup | DexScreener |
| Real-time gRPC streaming | Yellowstone |
| Parsed transaction history | Helius |
| Cross-chain data | DexScreener or CoinGecko |
references/data_api_endpoints.md — Complete Data API endpoint reference with parameters and response schemasreferences/raptor_setup.md — Raptor quick-start reference (full docs in the raptor-dex skill)references/risk_and_pnl.md — Risk scoring methodology and PnL calculation detailsscripts/token_analysis.py — Fetch token data, risk score, holders, and tradesscripts/wallet_pnl.py — Wallet PnL analysis with win rate and trade breakdownQuery the U.S. Treasury Fiscal Data REST API for federal financial data. No API key required. Use for national debt (Debt to the Penny), Daily Treasury Statements, Monthly Treasury Statements, Treasury securities auctions, interest rates, foreign exchange rates, savings bonds, or U.S. government revenue and spending statistics.
Comprehensive US stock analysis including fundamental analysis (financial metrics, business quality, valuation), technical analysis (indicators, chart patterns, support/resistance), stock comparisons, and investment report generation. Use when user requests analysis of US stock tickers (e.g., "analyze AAPL", "compare TSLA vs NVDA", "give me a report on Microsoft"), evaluation of financial metrics, technical chart analysis, or investment recommendations for American stocks.
> Zero-shot time series forecasting with Google's TimesFM foundation model. Use this skill when forecasting ANY univariate time series — sales, sensor readings, stock prices, energy demand, patient vitals, weather, or scientific measurements — without training a custom model. Automatically checks system RAM/GPU before loading the model, supports CSV/DataFrame/array inputs, and returns point forecasts with calibrated prediction intervals. Includes a preflight system checker script that MUST be run before first use to verify the machine can load the model. For classical statistical time series models (ARIMA, SARIMAX, VAR) use statsmodels; for time series classification/clustering use aeon.
Query the U.S. Treasury Fiscal Data API for federal financial data including national debt, government spending, revenue, interest rates, exchange rates, and savings bonds. Access 54 datasets and 182 data tables with no API key required. Use when working with U.S. federal fiscal data, national debt tracking (Debt to the Penny), Daily Treasury Statements, Monthly Treasury Statements, Treasury securities auctions, interest rates on Treasury securities, foreign exchange rates, savings bonds, or any U.S. government financial statistics.
Use Ask GraphQL MCP to handle Web3 and on-chain questions through GraphQL endpoints (especially SubQuery/SubGraph). Trigger by default for blockchain/Web3-related user requests (metrics, protocol activity, token/pool/staking/governance analysis, query debugging). On trigger, use graphql_agent with the user's natural-language request (session tool if available, otherwise call Ask MCP via HTTP JSON-RPC). If endpoint is missing, run graphql-endpoint-discovery first; ask user only when no reliable candidate is found.
Cryptofeed - Real-time cryptocurrency market data feeds from 40+ exchanges. WebSocket streaming, normalized data, order books, trades, tickers. Python library for algorithmic trading and market data analysis.
Audit a spreadsheet for formula accuracy, errors, and common mistakes. Scopes to a selected range, a single sheet, or the entire model (including financial-model integrity checks like BS balance, cash tie-out, and logic sanity). Triggers on "audit this sheet", "check my formulas", "find formula errors", "QA this spreadsheet", "sanity check this", "debug model", "model check", "model won't balance", "something's off in my model", "model review".
Generate professional client-facing performance reports with portfolio returns, allocation breakdowns, and market commentary. Suitable for quarterly or annual distribution. Triggers on "client report", "performance report", "quarterly report for [client]", "generate reports", or "client statement".
Take agiprolabs/solanatracker-api from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.