Hyperliquid MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Hyperliquid MCP Serverget candle snapshot for ETH with 1h interval from yesterday"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Hyperliquid MCP Server
An MCP server implementation that integrates the Hyperliquid SDK.
Tools
get_all_mids
Retrieve mid prices for all coins on Hyperliquid
No required inputs
get_candle_snapshot
Get historical candlestick data for any token
Inputs:
coin(string): Token symbolinterval(string): Time interval (e.g., '15m', '1h')startTime(number): Start time in milliseconds since epochendTime(number, optional): End time in milliseconds since epoch
get_l2_book
Access the L2 order book for any token
Inputs:
symbol(string): Token symbol
Usage with Claude Desktop
Add this to your claude_desktop_config.json:
NPX
{
"mcpServers": {
"brave-search": {
"command": "npx",
"args": ["-y", "@mektigboy/server-hyperliquid"]
}
}
}Related MCP server: 0xarchive-mcp
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Available Tools
3 toolsget_all_midsA
Get mid prices for all coins on Hyperliquid
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It states a read-only 'get' action, but does not disclose response format, data freshness, pagination, or any potential side effects. The description is minimal and adds little beyond the tool's name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no wasted words. It perfectly front-loads the action and resource, making it easy for an agent to parse quickly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple (no params, no output schema), and the description fully conveys the tool's purpose. While it doesn't detail the return structure, the simplicity of the operation makes that a minor gap. The description adequately covers what an agent needs to know for selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters, making schema coverage 100% by default. The description's phrase 'for all coins' matches the lack of filtering parameters, so no additional parameter explanation is needed. A baseline of 4 is appropriate for a zero-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and resource ('mid prices for all coins on Hyperliquid'), making the purpose immediately clear. It distinguishes itself from siblings like get_l2_book or get_candle_snapshot by focusing on mid prices across all coins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies a clear use case—fetching mid prices for all coins—but does not explicitly contrast this with alternatives like get_l2_book or get_spot_meta. It provides context but no explicit 'when to use' or 'when not to use' guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_candle_snapshotB
Get candlestick data for a token on Hyperliquid
| Name | Required | Description | Default |
|---|---|---|---|
| coin | Yes | The symbol of the token to get candlestick data for | |
| interval | Yes | Time interval (e.g., '15m', '1h') | |
| startTime | Yes | Start time in milliseconds since epoch | |
| endTime | No | End time in milliseconds since epoch (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states 'Get candlestick data', which implies a read operation but does not disclose the response format, whether data is historical or live, any rate limits, or how the snapshot is constructed. This lack of behavioral context leaves the agent uncertain about side effects and return expectations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, front-loaded with the action and resource. It is efficient with no wasted words, though it is terse enough to omit context that could be valuable. The structure is straightforward, but the brevity slightly reduces its effectiveness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given there is no output schema and no annotations, the description is insufficiently complete. It does not explain the structure of the returned data, time range handling, or any restrictions. The tool has four parameters, and the description only gives a high-level purpose without covering operational aspects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides descriptions for all four parameters (100% coverage), so the description adds no additional parameter semantics. The description's mention of 'a token' aligns with the 'coin' parameter but does not add meaningful detail beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'get' and identifies the resource as 'candlestick data for a token on Hyperliquid', which clearly distinguishes it from sibling tools dealing with orders, positions, or market metadata. The tool name and description align, leaving no ambiguity about the function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives, and does not mention exclusions or alternative tools. Usage must be inferred from the tool name and the phrase 'candlestick data', making it implied rather than explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_l2_bookC
Get the L2 book of a token on Hyperliquid
| Name | Required | Description | Default |
|---|---|---|---|
| symbol | No | The symbol of the token to get the price of | |
| required | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves data ('Get'), implying a read-only operation, but doesn't specify whether it's real-time or historical, rate limits, authentication needs, or what an L2 book entails (e.g., bid/ask levels). This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero wasted words. It front-loads the core purpose and includes essential context ('on Hyperliquid'), making it highly concise and well-structured for quick understanding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (financial data retrieval), lack of annotations, no output schema, and incomplete parameter documentation, the description is insufficient. It doesn't explain what an L2 book contains, the response format, or behavioral traits like latency or data freshness, leaving the agent with critical gaps for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 50% (one parameter documented, one not). The description adds no parameter details beyond the schema, which already documents 'symbol' as 'The symbol of the token to get the price of'. Since the schema handles half the parameters adequately, the baseline score of 3 applies, as the description doesn't compensate for the undocumented parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and the resource ('L2 book of a token'), specifying the domain ('on Hyperliquid'). It distinguishes from siblings by focusing on order book data rather than mid prices or candle snapshots. However, it doesn't explicitly differentiate from potential similar tools beyond the given siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like get_all_mids or get_candle_snapshot. It lacks context about use cases, prerequisites, or exclusions, leaving the agent to infer usage based solely on tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
get_all_mids - First observed
get_candle_snapshot - First observed
get_l2_book
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: get_all_mids retrieves mid prices for all coins, get_candle_snapshot provides candlestick data for a specific token, and get_l2_book fetches the L2 order book for a token. There is no overlap or ambiguity in functionality, making tool selection straightforward for an agent.
All tool names follow a consistent verb_noun pattern with 'get_' as the prefix, followed by a descriptive noun phrase (e.g., get_all_mids, get_candle_snapshot, get_l2_book). This uniformity enhances readability and predictability across the tool set.
With only 3 tools, the server feels thin for a trading or market data domain, which typically involves more operations like placing orders, checking balances, or managing positions. While the tools are well-defined, the count is borderline low for comprehensive coverage of such a scope.
The tool set is severely incomplete for a trading platform server, as it lacks essential operations such as order placement, account information retrieval, trade execution, or portfolio management. This creates significant gaps that will likely cause agent failures in real-world trading scenarios.
Maintenance
Related MCP Connectors
Hosted Hyperliquid MCP server: query OHLCV, funding and positioning data in plain language with a free API key.
Real-time crypto market data: candles, tickers, orderbooks across 13+ exchanges via MCP.
MCP server with quote and live cryptocurrency price tools, local and cloud-deployed transports.
MCP server for OpenMM — exposes market data, account, trading, and strategy tools to AI agents
Related MCP Servers
- AlicenseAqualityFmaintenanceAn MCP server that provides real-time data and insights from the Hyperliquid perp DEX for use in bots, dashboards, and analytics.1729MIT
- AlicenseBqualityBmaintenanceMCP server for querying historical and real-time crypto market data across Hyperliquid, Hyperliquid HIP-3, and Lighter.xyz - orderbooks, trades, candles, funding, open interest, liquidations, and data quality metrics.10064 npm12MIT
- AlicenseNot gradedqualityCmaintenanceA Model Context Protocol (MCP) server for the Hyperliquid decentralized exchange, enabling AI assistants to perform trading operations, manage accounts, and retrieve market data.3MIT
- FlicenseNot gradedqualityCmaintenanceMCP server for Hyperliquid perpetual DEX with 48 tools for trading, monitoring, risk management, and security. Enables real-time market data, order management, risk validation, and automated trading strategies.-