Skip to main content
Glama
mektigboy

Hyperliquid MCP Server

by mektigboy

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 symbol

      • interval (string): Time interval (e.g., '15m', '1h')

      • startTime (number): Start time in milliseconds since epoch

      • endTime (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 tools
get_all_midsA

Get mid prices for all coins on Hyperliquid

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness4/5

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.

Parameters4/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
coinYesThe symbol of the token to get candlestick data for
intervalYesTime interval (e.g., '15m', '1h')
startTimeYesStart time in milliseconds since epoch
endTimeNoEnd time in milliseconds since epoch (optional)

TDQS

B3.3/5.0
Behavior2/5

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.

Conciseness4/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose5/5

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.

Usage Guidelines3/5

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

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolNoThe symbol of the token to get the price of
requiredNo

TDQS

C2.9/5.0
Behavior2/5

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.

Conciseness5/5

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.

Completeness2/5

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.

Parameters3/5

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.

Purpose4/5

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.

Usage Guidelines2/5

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.

  1. 3 tool updates
    • First observedget_all_mids
    • First observedget_candle_snapshot
    • First observedget_l2_book

TDQS

B3.2/5.0

Scored across 3 tools

Disambiguation5/5

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.

Naming Consistency5/5

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.

Tool Count3/5

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.

Completeness2/5

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

ActivityInactive
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    B
    maintenance
    MCP 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.
    100
    64 npm
    12
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A Model Context Protocol (MCP) server for the Hyperliquid decentralized exchange, enabling AI assistants to perform trading operations, manage accounts, and retrieve market data.
    307 PyPI
    3
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    MCP 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.
    -