DuneLink
Eine moderne Brücke, die Dune Analytics-Daten über das Model Control Protocol (MCP) mit intelligenten Agenten verbindet.
Überblick
DuneLink ermöglicht die nahtlose Integration von Blockchain-Datenanalysen in Ihre KI-Anwendungen. Durch die Nutzung der leistungsstarken Abfragefunktionen von Dune Analytics mit dem Model Control Protocol ermöglicht dieser Dienst LLMs und anderen KI-Systemen den Zugriff auf On-Chain-Daten durch einfache, natürlichsprachliche Interaktionen.
Related MCP server: Bankless Onchain MCP Server
Kernkompetenzen
Datenabruftools
Werkzeug | Beschreibung | Anwendungsfall |
| Ruft vorberechnete Abfrageergebnisse ab | Schneller Zugriff auf vorhandene Daten |
| Führt eine Abfrage bei Bedarf aus | Echtzeit-Datenanalyse |
Datenformat
Alle Daten werden im CSV-Format zurückgegeben und bieten:
Universelle Kompatibilität
Einfaches Parsen durch die meisten Datenanalysetools
Für Menschen lesbare Ausgabe
Erste Schritte
Systemanforderungen
Python 3.10 oder höher
Gültiger Dune Analytics API-Schlüssel ( Holen Sie sich Ihren hier )
Schnelle Einrichtung
Klonen und Navigieren
git clone https://github.com/olaxbt/dune-query-mcp.git cd dunelinkUmgebungs-Setup
# Create virtual environment python -m venv .venv # Activate it source .venv/bin/activate # Linux/Mac # or .venv\Scripts\activate # Windows # Install dependencies pip install -r requirements.txtAPI-Zugriff konfigurieren
# Copy example config cp .env.example .env # Edit with your API key echo "DUNE_API_KEY=your_key_here" > .env
Verwendung
Ausführen des Dienstes
DuneLink bietet zwei Ausführungsmöglichkeiten:
Als MCP-Dienst
python run.pyDadurch wird der MCP-Dienst auf dem Standardport 8000 gestartet.
Als Webserver
python flask_app.pyDies ermöglicht den Zugriff auf die Weboberfläche und die REST-API-Endpunkte.
Integration mit Anwendungen
MCP-Client-Integration
from mcp.client import Client
# Connect to DuneLink
client = Client("http://localhost:8000")
# Get latest results for a query
csv_data = client.call("get_latest_result", query_id=1234567)
# Execute a query
query_results = client.call("run_query", query_id=1234567)REST-API
Endpunkt | Verfahren | Beschreibung |
| ERHALTEN | Dienstintegritätsprüfung |
| ERHALTEN | Aktuelle Ergebnisse abrufen |
| POST | Ausführen einer Abfrage |
Beispiel für einen REST-Aufruf:
curl -X GET http://localhost:5000/dune/query/1234567/latestArchitektur
dunelink/
├── app/ # Application core
│ ├── __init__.py # Flask & MCP setup
│ ├── routes/ # API endpoint definitions
│ │ └── dune_routes/ # Dune Analytics routes
│ │ └── templates/ # Web interface
│ └── templates/ # Web interface
├── config/ # Configuration files
├── logs/ # Runtime logs
├── flask_app.py # Web server entry point
├── run.py # MCP server entry point
└── requirements.txt # DependenciesErweiterte Konfiguration
Umgebungsvariablen
Variable | Zweck | Standard |
DUNE_API_KEY | Authentifizierung für Dune API | Keine (Erforderlich) |
HAFEN | Server-Port | 8000 |
Leistungsoptimierung
Für die Ausführung von Abfragen mit hohem Volumen:
# Set a higher timeout for long-running queries
export DUNE_QUERY_TIMEOUT=600 # 10 minutes in secondsFehlerbehebung
Häufige Probleme und Lösungen:
Problem | Lösung |
API-Schlüsselfehler | Stellen Sie sicher, dass |
Timeout-Fehler | Erhöhen Sie das Timeout für komplexe Abfragen |
Probleme beim CSV-Parsing | Überprüfen Sie, ob die Abfrage korrekte Tabellendaten zurückgibt |
Beitragen
Beiträge sind willkommen! Bitte folgen Sie diesen Schritten:
Forken Sie das Repository
Erstellen Sie einen Feature-Zweig:
git checkout -b feature/amazing-featureÜbernehmen Sie Ihre Änderungen:
git commit -am 'Add some amazing feature'Pushen zum Zweig:
git push origin feature/amazing-featureÖffnen einer Pull-Anfrage
Lizenz
Dieses Projekt wird unter der MIT-Lizenz veröffentlicht. Weitere Informationen finden Sie in der Datei LICENSE .
Danksagung
Erstellt mit FastMCP
Abfragefunktionalität unterstützt durch Dune Analytics
This server cannot be installed
Resources
Looking for Admin?
Admins can modify the Dockerfile, update the server description, and track usage metrics. If you are the server author, to access the admin panel.