dune-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DUNE_API_KEY | Yes | Your Dune Analytics API key | |
| GITHUB_TOKEN | No | Optional GitHub token for accessing Spellbook repository | |
| DUNE_USER_HANDLE | No | Your Dune username (optional, used to auto-detect your queries) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| analyze_query_errorC | Analyze failed queries and suggest fixes (e.g. for 'Column not found'). |
| get_account_statusA | Check remaining credits and budget limits. |
| get_session_budgetB | Check remaining queries/credits for this session. |
| search_public_queriesB | Search public queries by keyword. Use this to discover table names from existing SQL. |
| get_query_detailsB | Get SQL and parameters for a query ID. |
| get_table_schemaA | |
| create_queryA | Save a new query to Dune. Returns Query ID. (Requires Paid Plan) |
| update_queryC | Update SQL/description of an existing query. (Requires Paid Plan) |
| archive_queryC | Archive/Delete a query. (Requires Paid Plan) |
| execute_queryC | Execute a query by ID. Returns Job ID. |
| get_job_statusC | Check query execution status. Polls for 30s. |
| get_job_results_summaryB | Get result preview (5 rows) and stats. |
| analyze_resultsC | |
| export_results_to_csvC | Download full query results to local CSV. |
| list_user_queriesC | List queries by user handle. |
| search_spellbookA | Search GitHub Spellbook for official tables (.sql/.yml). Zero-credit schema discovery. |
| get_spellbook_file_contentC | Fetch raw content of a Spellbook file from GitHub. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 17 tools
Most tools target distinct resources and actions, and the naming/descriptions make the query lifecycle clear. The main ambiguity is between the two credit/budget tools and to a lesser degree between search_public_queries and search_spellbook, but descriptions mostly help resolve it.
All tool names follow a consistent verb_noun snake_case pattern (get_, create_, update_, search_, execute_, export_). The verbs and objects are predictable across query, job, and schema domains, making the tool set very easy to navigate.
17 tools is on the higher side for an MCP server, but it is justified by covering query management, execution, results, schema discovery, billing, and analysis. It feels slightly heavy, but each tool addresses a distinct part of the Dune workflow and no obvious filler tools exist.
The server covers the full query lifecycle: create/update/archive, execute, poll status, and obtain results, plus schema discovery and budget management. Minor gaps exist, such as no explicit job cancellation and no tool to fetch full results as structured data in-context, but the core workflows are workable.