get_exchange_coverage
Retrieve data coverage metrics for a crypto exchange, including earliest and latest timestamps, total records, symbol count, resolution, and completeness per data type.
Instructions
Get data coverage for a specific venue scope. Returns earliest/latest timestamps, total records, symbol count, resolution, and completeness per data type.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| exchange | Yes | Venue scope |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Result data object |
Implementation Reference
- src/index.ts:1951-1962 (registration)Registration of the 'get_exchange_coverage' MCP tool via the registerTool helper. Defines input schema (exchange enum), output schema (ObjectOutputSchema), description, and the handler that calls api().dataQuality.exchangeCoverage(params.exchange).
registerTool( "get_exchange_coverage", "Get data coverage for a specific venue scope. Returns earliest/latest timestamps, total records, symbol count, resolution, and completeness per data type.", { exchange: z.enum(["hyperliquid", "lighter", "hip3"]).describe("Venue scope"), }, ObjectOutputSchema, async (params) => { const data = await api().dataQuality.exchangeCoverage(params.exchange); return formatResponse(data); } ); - src/index.ts:1958-1962 (handler)Handler function for get_exchange_coverage. Accepts a single 'exchange' parameter (one of 'hyperliquid', 'lighter', 'hip3'), calls the SDK method dataQuality.exchangeCoverage(), and formats the response.
async (params) => { const data = await api().dataQuality.exchangeCoverage(params.exchange); return formatResponse(data); } ); - src/index.ts:1954-1957 (schema)Input schema for get_exchange_coverage: a single required 'exchange' parameter constrained to enum values 'hyperliquid', 'lighter', or 'hip3'.
{ exchange: z.enum(["hyperliquid", "lighter", "hip3"]).describe("Venue scope"), }, ObjectOutputSchema, - src/index.ts:139-141 (schema)Output schema used by get_exchange_coverage (ObjectOutputSchema): returns a single 'data' object containing coverage info.
const ObjectOutputSchema: ZodRawShape = { data: z.record(z.unknown()).describe("Result data object"), }; - src/index.ts:328-358 (helper)The generic registerTool helper used to register get_exchange_coverage. It wraps server.registerTool with API key guard and error formatting.
function registerTool( name: string, description: string, inputSchema: ZodRawShape, outputSchema: ZodRawShape, handler: (params: any) => Promise<McpContent> ): void { server.registerTool( name, { description, inputSchema, outputSchema, annotations: TOOL_ANNOTATIONS, }, async (params: any) => { if (!client) { return { content: [{ type: "text" as const, text: MISSING_KEY_MESSAGE }], isError: true, }; } try { return await handler(params); } catch (err) { const error = err instanceof OxArchiveError ? err : new OxArchiveError(String(err), 500); return formatError(error); } } ); }