get_user_staking_rewards
Retrieve staking rewards history for a Hyperliquid account to track earnings over time. Enter the account address to get detailed reward records with amounts and timestamps.
Instructions
Fetch the staking rewards history for a specific user account.
Parameters:
account_address (str): The Hyperliquid account address (e.g., '0xcd5051944f780a621ee62e39e493c489668acf4d').
ctx (Context): The MCP context object for accessing server state.
Returns:
str: A JSON string containing a list of staking reward records, each with amount and timestamp.
Returns a JSON string with an error message if the query fails.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| account_address | Yes |
Input Schema (JSON Schema)
{
"properties": {
"account_address": {
"title": "Account Address",
"type": "string"
}
},
"required": [
"account_address"
],
"type": "object"
}
Implementation Reference
- main.py:257-274 (handler)The main handler function decorated with @mcp.tool() that implements the get_user_staking_rewards tool. It queries the Hyperliquid SDK for user staking rewards and returns the result as JSON, with error handling.@mcp.tool() async def get_user_staking_rewards(account_address: str, ctx: Context) -> str: """ Fetch the staking rewards history for a specific user account. Parameters: account_address (str): The Hyperliquid account address (e.g., '0xcd5051944f780a621ee62e39e493c489668acf4d'). ctx (Context): The MCP context object for accessing server state. Returns: str: A JSON string containing a list of staking reward records, each with amount and timestamp. Returns a JSON string with an error message if the query fails. """ try: data = info.user_staking_rewards(account_address) return json.dumps(data) except Exception as e: return json.dumps({"error": f"Failed to fetch user staking rewards: {str(e)}"})