get_hip3_summary
Get combined HIP-3 market summary for a coin: mark price, oracle price, mid price, funding rate, and open interest in one call.
Instructions
Get combined HIP-3 market summary for a coin in a single call. Symbols are CASE-SENSITIVE (e.g. 'km:US500'). Returns mark price, oracle price, mid price, funding rate, and open interest.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | HIP-3 coin symbol (CASE-SENSITIVE). 125+ markets across 6 builders: xyz, flx, hyna, km, vntl, cash. Examples: 'km:US500', 'xyz:GOLD', 'hyna:BTC', 'vntl:SPACEX', 'flx:TSLA', 'cash:NVDA'. Use get_hip3_instruments to list all. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | Result data object |
Implementation Reference
- src/index.ts:933-940 (registration)Tool registration for 'get_hip3_summary' using the registerCurrentTool helper pattern. Accepts a 'coin' parameter (HIP-3 case-sensitive symbol), delegates to api().hyperliquid.hip3.summary(coin) on the SDK, and returns a single object output.
// HIP-3 Summary registerCurrentTool( "get_hip3_summary", "Get combined HIP-3 market summary for a coin in a single call. Symbols are CASE-SENSITIVE (e.g. 'km:US500'). Returns mark price, oracle price, mid price, funding rate, and open interest.", (coin) => api().hyperliquid.hip3.summary(coin), Hip3CoinParam, normalizeHip3Coin ); - src/index.ts:57-62 (schema)Input schema for the HIP-3 coin parameter used by get_hip3_summary. A case-sensitive string describing the coin symbol format.
const Hip3CoinParam = z .string() .describe( "HIP-3 coin symbol (CASE-SENSITIVE). 125+ markets across 6 builders: xyz, flx, hyna, km, vntl, cash. Examples: 'km:US500', 'xyz:GOLD', 'hyna:BTC', 'vntl:SPACEX', 'flx:TSLA', 'cash:NVDA'. Use get_hip3_instruments to list all." ); - src/index.ts:138-142 (schema)Output schema for get_hip3_summary — a single object with a 'data' field containing the market summary.
// For tools that return a single object (current snapshots, orderbooks, data quality) const ObjectOutputSchema: ZodRawShape = { data: z.record(z.unknown()).describe("Result data object"), }; - src/index.ts:372-384 (helper)Helper function 'registerCurrentTool' that wraps the actual tool registration logic for get_hip3_summary. It normalizes the coin using normalizeHip3Coin (case-sensitive pass-through) and calls the SDK function.
// Pattern 2: Current snapshot (coin only) function registerCurrentTool( name: string, description: string, sdkCall: (coin: string) => Promise<unknown>, coinSchema: z.ZodString, normFn: (coin: string) => string ): void { registerTool(name, description, { coin: coinSchema }, ObjectOutputSchema, async (params) => { const data = await sdkCall(normFn(params.coin)); return formatResponse(data); }); } - src/index.ts:300-302 (helper)Coin normalization helper for HIP-3 symbols. Returns the coin as-is because HIP-3 symbols are case-sensitive (unlike Hyperliquid perps which get uppercased).
function normalizeHip3Coin(coin: string): string { return coin; // Case-sensitive }