Dune Analytics
About
Integrates with Dune Analytics API to provide direct access to blockchain data through tools for retrieving existing query results and executing on-demand queries in CSV format.
Details
- Author
- kukapay
- Repository
- kukapay/dune-analytics-mcp
- GitHub stars
- 18
- Downloads
- 514
- License
- MIT License
- Categories
- Productivity, Developer Tools, Design, AI, Search, Infrastructure, API
- Tags
- #analytics
Jump to
- 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.
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Dune AnalyticsCommand (node, npx, python, etc.)npxArguments-
Argument 1
-y -
Argument 2
@highlight/mcp-server
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
To install Dune Analytics for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @kukapay/dune-analytics-mcp --client claude
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"
- 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.
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)
get_latest_result
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.
run_query
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.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"dune analytics": {
"env": {},
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
}
}
Linux
{
"env": [],
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
Macos
{
"env": [],
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
Windows
{
"env": [],
"args": [
"/c",
"npx",
"-y",
"@highlight/mcp-server"
],
"command": "cmd"
}
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
Installing via Smithery
To install Dune Analytics for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @kukapay/dune-analytics-mcp --client claude
Manual 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.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





