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
Clone the Repository:
git clone https://github.com/kukapay/dune-analytics-mcp.git cd dune-analytics-mcp
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
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)
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.