dune-analytics-mcp

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Supports environment variable management through .env files to securely store and access the Dune Analytics API key required for authentication.

  • Provides access to the Dune Analytics MCP server codebase hosted on GitHub, which can be cloned from the kukapay/dune-analytics-mcp repository.

  • Built on Python 3.10+, utilizing Python's capabilities to bridge Dune Analytics data to AI agents through MCP tools.

Dune Analytics MCP Server

A mcp server that bridges Dune Analytics data to AI agents.

Features

  • Tools:
    • get_latest_result: Fetch the latest results of a Dune query by ID.
    • run_query: Execute a Dune query by ID and retrieve results.
  • CSV Output: All results are returned as CSV-formatted strings for easy processing.

Prerequisites

  • Python 3.10+
  • A valid Dune Analytics API key (get one from Dune Analytics)

Installation

  1. Clone the Repository:
    git clone https://github.com/kukapay/dune-analytics-mcp.git cd dune-analytics-mcp
  2. Set Up Environment Variables: Create a .env file in the project root:
    DUNE_API_KEY=your_api_key_here
    Alternatively, set it as a system environment variable:
    export DUNE_API_KEY="your_api_key_here"

Usage

Running the Server

  • Development Mode:
    mcp dev main.py
    This starts the server with hot reloading for development.
  • Install for Claude Desktop:
    mcp install main.py --name "Dune Analytics"
    Installs the server as a service for use with Claude Desktop.

Tool Usage

  1. get_latest_result(query_id)
    • Description: Retrieves the latest results of a specified Dune query.
    • Input: query_id (int) - The ID of the Dune query.
    • Output: CSV-formatted string of the query results.
    • Example:
      get_latest_result(query_id=4853921)
  2. run_query(query_id)
    • Description: Executes a Dune query and returns the results.
    • Input: query_id (int) - The ID of the Dune query to run.
    • Output: CSV-formatted string of the query results.
    • Example:
      run_query(query_id=1215383)

Example Commands in Claude Desktop

  • "Get latest results for dune query 1215383"
  • "Run dune query 1215383"

License

This project is licensed under the MIT License - see the LICENSE file for details.

-
security - not tested
A
license - permissive license
-
quality - not tested

A mcp server that bridges Dune Analytics data to AI agents.

  1. Features
    1. Prerequisites
      1. Installation
        1. Usage
          1. Running the Server
            1. Tool Usage
              1. Example Commands in Claude Desktop
              2. License