MCP server exposing the Greeks options-analytics API (Greeks, GEX, Max Pain, flow) as tools for Claude Desktop, Cursor, and any MCP client
Six tools with complete input schemas and descriptions. Naming is clear and verb-prefixed (get_*). Descriptions are domain-specific and actionable (avg ~150 chars, within 10-1024 baseline). All parameters have types and descriptions. However, output schemas are not documented in the source, LLMs cannot see what fields to expect from responses. Parameter descriptions lack format constraints (e.g., 'Unix timestamp' is vague; should specify ISO 8601 or epoch seconds). No error handling guidance visible. No pagination or result-limiting documented despite tools that may return large datasets (get_greeks with expiration='all', get_gex with symbols list).
Unusual options activity detection — contracts with abnormally high volume relative to open interest, typically signalling institutional/"smart money" positioning.
Gamma & Delta Exposure (GEX/DEX) per strike, plus total Net GEX and the Gamma Flip level (strike where Net GEX crosses zero — a regime transition). Positive Net GEX = dealers long gamma (price pins); negative = moves amplified.
Black-Scholes Greeks (Delta, Gamma, Theta, Vega, Rho) plus theoretical price and mispricing for every contract in the chain.
Max Pain per expiration — the strike that minimizes total option value (where most options expire worthless), a magnet the price tends to converge toward at expiration.
Full analytics dashboard for a symbol in one call: sentiment, GEX summary, max pain, expected moves, IV surface, term structure and top unusual flow. The cheapest way to get everything for a symbol at once.
Output schemas not documented. LLMs cannot see what fields responses contain, forcing them to guess downstream field names and risk broken tool chains.
Parameter 'expiration' description is ambiguous: 'Unix expiration timestamp' does not specify epoch seconds vs milliseconds, or ISO 8601 format. Baseline rubric requires format clarity.
No pagination or result-limiting documented for tools that accept expiration='all' or multi-symbol requests (get_gex, get_greeks). Large result sets risk context window exhaustion.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2026-07-28+ | v2 |
Compact analytics snapshot for a symbol — a lighter-weight summary than the full overview, suitable for quick checks and cards.
No error handling guidance in tool descriptions. When API returns 401/402/403/429, LLMs need recovery hints (e.g., 'Check GREEKS_API_KEY' or 'Upgrade plan'). Current code has _explain_status() but it is not surfaced to LLM.
Parameter 'moneyness' in get_greeks accepts 'low,high' pair but description does not specify format, range (0.0 - 2.0?), or delimiter. LLMs may pass invalid formats.