get_rainbow_chart
Visualize Bitcoin market sentiment using a logarithmic growth curve with color bands to identify potential buy or sell areas based on historical valuation patterns.
Instructions
The Bitcoin Rainbow Chart uses a logarithmic growth curve with a color band to illustrate market sentiment and highlight potential buy or sell areas. It is not suitable for short-term predictions, but helps to identify overvaluation or undervaluation from history
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/desk3_service/server.py:187-196 (handler)The core handler function that implements the get_rainbow_chart tool by calling the Desk3 API endpoint for Bitcoin Rainbow Chart data.async def get_rainbow_chart() -> dict[str, Any]: """ Get Bitcoin Rainbow Price Chart data. :return: Bitcoin Rainbow Chart data using logarithmic growth curve with color bands to illustrate market sentiment """ url = 'https://mcp.desk3.io/v1/market/rainbow' try: return request_api('get', url) except Exception as e: raise RuntimeError(f"Failed to fetch Bitcoin Rainbow Chart data: {e}")
- src/desk3_service/server.py:654-662 (schema)Tool schema registration in list_tools(), defining name, description, and empty input schema (no parameters required).types.Tool( name="get_rainbow_chart", description="The Bitcoin Rainbow Chart uses a logarithmic growth curve with a color band to illustrate market sentiment and highlight potential buy or sell areas. It is not suitable for short-term predictions, but helps to identify overvaluation or undervaluation from history", inputSchema={ "type": "object", "properties": {}, "required": [], }, ),
- src/desk3_service/server.py:850-860 (registration)Tool execution handler in the MCP server's call_tool method, which invokes the get_rainbow_chart function and returns JSON response.case "get_rainbow_chart": try: data = await get_rainbow_chart() return [ types.TextContent( type="text", text=json.dumps(data, indent=2), ) ] except Exception as e: raise RuntimeError(f"Failed to fetch Bitcoin Rainbow Chart data: {e}")