MCP server for Lighter protocol integration, providing tools for trading, position management, and wallet operations on Lighter derivatives protocol
lighter-mcp has 19 tools with mixed quality. Tool schemas are explicitly defined in schema/index.ts with Zod validation, which is good for structure. However, descriptions are inconsistent, some tools have solid descriptions (e.g., 'Create and execute a market order on the Lighter protocol...'), while others are minimal (e.g., 'Say hello', 'Hello World'). Critical issues: (1) Private key parameters are exposed as tool parameters in 10+ tools (create_market_order, create_limit_order, close_position, cancel_order, add_tp_sl_orders, withdraw, get_positions, fetch_balance, fetch_referral_points), violating secret-injection pattern. (2) Tool naming uses underscores but some descriptions lack clarity on when to use them vs similar tools (e.g., fetch_balance vs get_positions both retrieve user data). (3) Error handling and output schemas are not documented in the tool definitions themselves, we see Zod input schemas but no output schema documentation. (4) Some tools combine multiple responsibilities (e.g., system_setup is vague; getUserAddresses + chooseWallet should clarify their relationship). (5) Three non-functional demo tools (hello_world, hello://world, hello) dilute signal and suggest incomplete cleanup. Baselines: avg tool description ~150 chars (median ~80 for the portfolio), within acceptable range, but several edge cases fall below 20 chars ('Say hello', 'Hello World'). Tool composition is reasonable for a trading protocol, tools are mostly single-responsibility, but secret exposure is a critical flaw that would block production deployment.
Add Take Profit (TP) and Stop Loss (SL) orders to an existing position. This tool creates limit orders that will automatically close the position when the specified price levels are reached.
Cancel an existing order on the Lighter protocol using SignerClient from lighter-ts-sdk. This tool cancels a specific order by its order index.
Choose a wallet, you can get user addresses with getUserAddresses
Close an open position on the Lighter protocol using SignerClient from lighter-ts-sdk. This tool closes an existing position for the specified market.
Create and execute a limit order on the Lighter protocol using SignerClient from lighter-ts-sdk. This tool creates a limit order transaction, signs it, and submits it to the blockchain.
Private keys exposed as tool parameters in 10+ tools (create_market_order, create_limit_order, close_position, cancel_order, add_tp_sl_orders, withdraw, fetch_balance, fetch_referral_points, get_positions). Agent traces and logs will contain sensitive cryptographic material.
Output schemas are not documented. Tool definitions show Zod input schemas but no specification of what fields are returned. LLMs cannot plan downstream calls or extract the right data without knowing response structure.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 46 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 46 | - | v1 |
Create and execute a market order on the Lighter protocol using SignerClient from lighter-ts-sdk. This tool creates a market order transaction with USD position margin, signs it, and submits it to the blockchain.
Deposit USDC to Lighter protocol account
Deposit Ethereum to a specified address
Fetch user balance on Lighter protocol
Fetch current funding rates for specified ticker on Lighter protocol
Fetch market price and order book data for a specific ticker on Lighter protocol
Fetch referral points for a user on Lighter protocol
Get user addresses, you can choose a wallet with chooseWallet
Get all open positions for a user on Lighter protocol
Say hello
Hello World
Provide a hello prompt
System setup tool for Lighter MCP
Withdraw USDC from Lighter protocol account
Three demo/placeholder tools (hello_world, hello://world, hello) lack meaningful descriptions and dilute the toolset. Descriptions are under 20 chars ('Say hello', 'Hello World'), scoring 0-35 on description rubric.
System setup tool is vague. Description is 'System setup tool for Lighter MCP' (29 chars). No parameter documentation or explanation of what setup occurs or when to invoke it.
Error handling and recovery guidance not visible in tool definitions. No documentation of what errors tools return, which are retryable, or what the LLM should do next on failure.
Parameter descriptions lack constraints for numeric fields. E.g., leverage is 1-100 and api_key_index has minimum 0, but these are in schema, not clearly in description text. LLMs may not reliably parse Zod constraints.