Skip to main content
Glama

get_pi_cycle_top

Identify Bitcoin market cycle peaks using the Pi Cycle Top indicator, which detects crossovers between the 111DMA and 2x350DMA to signal potential cycle tops within days—a reliable tool for cryptocurrency market analysis.

Instructions

The Pi Cycle Top indicator uses the 111DMA and 2x350DMA to identify Bitcoin market tops. When the 111DMA crosses above the 2x350DMA, it historically typically signals a cycle peak within about 3 days, reflecting Bitcoin's long-term cyclical behavior

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • The core implementation of the get_pi_cycle_top tool handler. It makes a GET request to the external Desk3 API endpoint 'https://mcp.desk3.io/v1/market/pi-cycle-top' to retrieve BTC Pi Cycle Top indicator data and returns it as a dictionary.
    async def get_pi_cycle_top() -> dict[str, Any]: """ Get BTC Pi Cycle Top indicator data. :return: Pi Cycle Top indicator data using 111DMA and 2x350DMA to identify Bitcoin market tops """ url = 'https://mcp.desk3.io/v1/market/pi-cycle-top' try: return request_api('get', url) except Exception as e: raise RuntimeError(f"Failed to fetch Pi Cycle Top indicator data: {e}")
  • The JSON schema definition for the get_pi_cycle_top tool input, which requires no parameters (empty properties and required).
    inputSchema={ "type": "object", "properties": {}, "required": [], },
  • Registration of the 'get_pi_cycle_top' tool in the MCP server's list_tools handler, including name, description, and input schema.
    types.Tool( name="get_pi_cycle_top", description="The Pi Cycle Top indicator uses the 111DMA and 2x350DMA to identify Bitcoin market tops. When the 111DMA crosses above the 2x350DMA, it historically typically signals a cycle peak within about 3 days, reflecting Bitcoin's long-term cyclical behavior", inputSchema={ "type": "object", "properties": {}, "required": [], }, ),
  • The MCP server.call_tool dispatcher case for executing the get_pi_cycle_top tool, which invokes the handler function and returns the JSON-formatted result as TextContent.
    case "get_pi_cycle_top": try: data = await get_pi_cycle_top() return [ types.TextContent( type="text", text=json.dumps(data, indent=2), ) ] except Exception as e: raise RuntimeError(f"Failed to fetch Pi Cycle Top indicator data: {e}")

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/desk3/cryptocurrency-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server