get_instruments_info
Retrieve detailed trading instrument specifications from Bybit, including category, symbol, status, and base coin data for informed cryptocurrency trading decisions.
Instructions
Get exchange information
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| category | Yes | Category (spot, linear, inverse, etc.) | |
| symbol | Yes | Symbol (e.g., BTCUSDT) | |
| status | No | Status | |
| baseCoin | No | Base coin |
Implementation Reference
- src/bybit-service.ts:430-440 (handler)Core handler function that executes the tool logic by calling Bybit's instruments-info API endpoint.async getInstrumentsInfo( category: string, symbol: string, status?: string, baseCoin?: string ): Promise<BybitResponse<{ list: InstrumentInfo[] }> | { error: string }> { const params: any = { category, symbol }; if (status) params.status = status; if (baseCoin) params.baseCoin = baseCoin; return this.makeBybitRequest('/v5/market/instruments-info', 'GET', params); }
- src/index.ts:457-482 (registration)Tool registration in the MCP server's ListTools handler, including name, description, and input schema.{ name: 'get_instruments_info', description: 'Get exchange information', inputSchema: { type: 'object', properties: { category: { type: 'string', description: 'Category (spot, linear, inverse, etc.)', }, symbol: { type: 'string', description: 'Symbol (e.g., BTCUSDT)', }, status: { type: 'string', description: 'Status', }, baseCoin: { type: 'string', description: 'Base coin', }, }, required: ['category', 'symbol'], }, },
- src/index.ts:938-953 (handler)MCP server dispatch handler that receives tool call and delegates to BybitService.getInstrumentsInfo.case 'get_instruments_info': { const result = await this.bybitService.getInstrumentsInfo( typedArgs.category, typedArgs.symbol, typedArgs.status, typedArgs.baseCoin ); return { content: [ { type: 'text', text: JSON.stringify(result, null, 2), }, ], }; }
- src/types.ts:219-252 (schema)Type definition for InstrumentInfo, used in the return type of getInstrumentsInfo, defining the output structure.export interface InstrumentInfo { symbol: string; contractType: string; status: string; baseCoin: string; quoteCoin: string; launchTime: string; deliveryTime: string; deliveryFeeRate: string; priceScale: string; leverageFilter: { minLeverage: string; maxLeverage: string; leverageStep: string; }; priceFilter: { minPrice: string; maxPrice: string; tickSize: string; }; lotSizeFilter: { maxOrderQty: string; maxMktOrderQty: string; minOrderQty: string; qtyStep: string; postOnlyMaxOrderQty: string; }; unifiedMarginTrade: boolean; fundingInterval: number; settleCoin: string; copyTrading: string; upperFundingRate: string; lowerFundingRate: string; }