Skip to main content
Glama
kukapay

solana-launchpads-mcp

get_daily_graduation_rate

Fetch daily graduation rates for Solana memecoin launchpads to track project success percentages by platform.

Instructions

Fetch the daily graduation rate of Solana memecoin launchpads. This tool retrieves data from a Dune Analytics query and pivots it to show the graduation rate (e.g., percentage of projects that successfully complete their goals) per day by each platform. Args: limit (int, optional): Maximum number of rows to fetch from the Dune query. Defaults to 1000. Returns: str: A markdown-formatted table of daily graduation rates by platform, or an error message if the query fails.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo

Implementation Reference

  • main.py:100-123 (handler)
    The handler function for the get_daily_graduation_rate tool. It is decorated with @mcp.tool() for registration. Fetches data from Dune query ID 5129526 using the shared get_latest_result helper, processes it into a pivot table showing graduation rates by platform and date using pandas, sorts by date descending, and returns a markdown-formatted table. Catches exceptions and returns error string.
    @mcp.tool() def get_daily_graduation_rate(limit: int = 1000) -> str: """ Fetch the daily graduation rate of Solana memecoin launchpads. This tool retrieves data from a Dune Analytics query and pivots it to show the graduation rate (e.g., percentage of projects that successfully complete their goals) per day by each platform. Args: limit (int, optional): Maximum number of rows to fetch from the Dune query. Defaults to 1000. Returns: str: A markdown-formatted table of daily graduation rates by platform, or an error message if the query fails. """ try: data = get_latest_result(5129526, limit=limit) df = pd.DataFrame(data) df['block_date'] = pd.to_datetime(df['block_date']).dt.date pivot_df = df.pivot(index="block_date", columns="platform", values="graduation_rate") pivot_df = pivot_df.sort_index(ascending=False) return pivot_df.to_markdown() except Exception as e: return str(e)
  • main.py:21-43 (helper)
    Shared utility function used by get_daily_graduation_rate (and other tools) to fetch the latest execution results from a specified Dune Analytics query ID via the Dune API, returning the rows as a list of dicts.
    def get_latest_result(query_id: int, limit: int = 1000) -> list: """ Fetch the latest results from a Dune Analytics query. Args: query_id (int): The ID of the Dune query to fetch results from. limit (int, optional): Maximum number of rows to return. Defaults to 1000. Returns: list: A list of dictionaries containing the query results, or an empty list if the request fails. Raises: httpx.HTTPStatusError: If the API request fails due to a client or server error. """ url = f"{BASE_URL}/query/{query_id}/results" params = {"limit": limit} with httpx.Client() as client: response = client.get(url, params=params, headers=HEADERS, timeout=300) response.raise_for_status() data = response.json() result_data = data.get("result", {}).get("rows", []) return result_data

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/kukapay/solana-launchpads-mcp'

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