Node.js SDK for the Meridian Edge prediction market analytics API. Provides tools for accessing prediction market data, consensus probabilities, settlement outcomes, and platform analytics.
This MCP server exposes 15 tools for prediction market analytics. Tool naming follows verb_noun convention (status, markets, opportunities, consensus) which is good. However, critical gaps undermine quality: (1) Most tools lack input parameter descriptions, parameters like 'sport', 'limit', 'offset' are named but lack guidance on valid values, ranges, or formats. (2) Output schemas are not documented in the MCP tool definitions; TypeScript types exist in index.d.ts but are not visible to the MCP protocol layer. (3) Error handling is minimal, no recovery guidance, no categorization of retryable vs fatal errors. (4) Tool descriptions are present but generic (avg ~60 chars); they state WHAT but not WHEN to use or dependencies. (5) No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk profiles. The 'subscribe' tool is WRITE but unmarked. Baseline: 90% of A+ tools have documented return types and 100% have param descriptions, this server has neither at the MCP layer.
List cross-platform consensus probabilities
Get detailed consensus data for a single event
Get recent analytics indicators
Get details for a single market by event ID
List active prediction markets with derived analytics
List high-opportunity markets ranked by composite analytics score
Get aggregated platform performance analytics
Get settlements filtered by sport
Output schemas not documented in MCP tool definitions. TypeScript types exist in index.d.ts but are not visible to the MCP protocol layer. LLMs cannot plan downstream calls or extract required fields without documented return structures.
Parameter descriptions missing or insufficient. Parameters like 'sport', 'limit', 'offset', 'minScore', 'minPlatforms' lack guidance on valid values, ranges, or formats. Baseline: 100% of A+ tools have param descriptions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
Get recently settled markets with outcomes
Get today's market data for a specific sport
Alias for sports() — get today's data for a sport
Get platform status (no auth required)
Create a Stripe checkout session for a subscription plan
Verify the settlement outcome for a specific event
Get current weather market analytics summary
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk profiles. 'subscribe' is a WRITE operation but unmarked. Agents cannot distinguish safe reads from destructive writes.
Error handling absent. No recovery guidance, no error categorization (retryable vs fatal), no actionable error messages. Agents cannot self-correct on failures.
Tool descriptions are generic and brief (avg ~60 chars). They state WHAT but not WHEN to use, dependencies, or prerequisites. Baseline: A+ tools average 194 chars with context for selection.