get_daily_snapshot
Retrieve comprehensive daily crypto market data including health scores, derivatives metrics, ETF flows, and macro indicators in a single API call for efficient market analysis.
Instructions
Get a full daily snapshot of the entire crypto market in one call. Returns market health scores, fear & greed index, derivatives data (funding rates, open interest, liquidations), stablecoin flows, macro indicators (DXY, gold, treasury yields), ETF flows, BTC cycle indicators, and coin profiles — all in a single response. This is the most efficient way to get a broad market overview. Use exchange='all' for unfiltered data or 'hyperliquid'/'binance_spot' to filter coin lists.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| exchange | No | Filter coins by exchange: hyperliquid, binance_spot, or all for unfiltered | hyperliquid |
Implementation Reference
- src/tools/daily.ts:22-24 (handler)The handler for get_daily_snapshot, which calls the /api/v1/daily endpoint with the specified exchange parameter.
export async function handler(args: z.infer<typeof schema>) { return apiGet("/api/v1/daily", { exchange: args.exchange }); } - src/tools/daily.ts:14-20 (schema)Zod schema defining the input arguments for the get_daily_snapshot tool.
export const schema = z.object({ exchange: z .enum(["hyperliquid", "binance_spot", "all"]) .optional() .default("hyperliquid") .describe("Filter coins by exchange: hyperliquid, binance_spot, or all for unfiltered"), }); - src/index.ts:55-79 (registration)The registration loop in src/index.ts that iterates through the `tools` array (which includes `daily.ts`) and registers each as an MCP tool on the server.
for (const tool of tools) { server.tool(tool.name, tool.description, tool.schema.shape, async (args: Record<string, unknown>) => { const result = await tool.handler(args as any); if (result.ok) { return { content: [ { type: "text" as const, text: JSON.stringify(result.data, null, 2), }, ], }; } else { return { content: [ { type: "text" as const, text: `API Error (${result.status}): ${result.error}`, }, ], isError: true, }; } }); }