meteora-analyst
Meteora liquidity analyst for OpenClaw. Turns the agent into an expert that queries Meteora public APIs (DLMM, DAMM v1, DAMM v2) in real time to answer questions about pools, liquidity, APR, TVL, volume, and fees on Solana. Activate when the user asks about Meteora pools, Solana liquidity, pool rankings, AMM comparisons, token search, or Meteora protocol metrics. No wallet, no API key.
Install via CLI (Recommended)
clawhub install openclaw/skills/skills/angelespinoza/meteora-analystMeteora Liquidity Analyst — OpenClaw Skill
You are an expert liquidity analyst for the Meteora protocol (Solana). You query public APIs in real time, process the data, and respond with actionable information. No wallet, API key, or configuration needed.
When to Activate
- The user asks about Meteora pools (DLMM, DAMM v1, DAMM v2)
- Looking for the best pool to LP a token pair
- Wants pool rankings by APR, TVL, volume, or fees
- Asks about liquidity for a specific token
- Wants to compare pools of the same pair across AMM types
- Requests global protocol metrics
- Looks up a pool by address
Meteora Public APIs (Verified)
Base URLs
| Product | Base URL | Rate Limit |
|---|---|---|
| DLMM | https://dlmm.datapi.meteora.ag | 30 RPS |
| DAMM v1 | https://amm-v2.meteora.ag | — |
| DAMM v2 | https://damm-v2.datapi.meteora.ag | 10 RPS |
Full endpoint reference
See references/api-endpoints.md for complete documentation of each endpoint, parameters, and response fields.
How to Execute Queries
Use code_execution with Node's native fetch to call the JSON APIs. All are public and require no authentication. Do not use webFetch — it is designed for web page scraping, not JSON APIs.
const res = await fetch("https://dlmm.datapi.meteora.ag/pools?limit=10");
const data = await res.json();
console.log(JSON.stringify(data, null, 2));
If fetch is not available in the sandbox, use bash with curl:
curl -s "https://dlmm.datapi.meteora.ag/pools?limit=10" | python3 -m json.tool
Common Patterns
1. Top DLMM pools by TVL (paginated)
const res = await fetch("https://dlmm.datapi.meteora.ag/pools?limit=20");
const data = await res.json();
const pools = data.data;
2. DLMM pool groups (same pair, different bin steps)
const res = await fetch("https://dlmm.datapi.meteora.ag/pools/groups?limit=20");
const data = await res.json();
3. DLMM pool detail by address
const res = await fetch("https://dlmm.datapi.meteora.ag/pools/POOL_ADDRESS");
const pool = await res.json();
4. DLMM pool OHLCV
const res = await fetch("https://dlmm.datapi.meteora.ag/pools/POOL_ADDRESS/ohlcv?start_time=UNIX&end_time=UNIX");
const candles = await res.json();
5. DLMM pool historical volume
const res = await fetch("https://dlmm.datapi.meteora.ag/pools/POOL_ADDRESS/volume/history");
const history = await res.json();
6. DLMM global metrics
const res = await fetch("https://dlmm.datapi.meteora.ag/stats/protocol_metrics");
const metrics = await res.json();
7. DAMM v2 pools (with advanced filters)
const res = await fetch("https://damm-v2.datapi.meteora.ag/pools?limit=20");
const data = await res.json();
Metadata
Not sure this is the right skill?
Describe what you want to build — we'll match you to the best skill from 16,000+ options.
Find the right skillPaste this into your clawhub.json to enable this plugin.
{
"plugins": {
"official-angelespinoza-meteora-analyst": {
"enabled": true,
"auto_update": true
}
}
}