Zum Hauptinhalt springen

So planst du Cryptohopper MCP Workflows mit Cron, dem Taskplaner und GitHub Actions

Lerne, wie du Cryptohopper MCP Workflows mit Cron, Windows Task Scheduler oder GitHub Actions planst – inklusive Setup-Skripten, Env-Var-Tipps und gängigen Fixes.

Verfasst von Isaac

Voraussetzungen


Das Grundmuster

Alle drei Planungs-Systeme umschließen dasselbe Skript. Die Struktur ist immer: MCP-Abfrage ausführen → Ausgabe erfassen → liefern. Stelle sicher, dass Umgebungsvariablen gesetzt sind und die Ausgabe in eine Protokolldatei geschrieben wird.

# /home/you/scripts/daily_digest.py

import os
import requests

API_KEY = os.environ["CRYPTOHOPPER_MCP_KEY"]
TELEGRAM_TOKEN = os.environ["TELEGRAM_BOT_TOKEN"]
TELEGRAM_CHAT_ID = os.environ["TELEGRAM_CHAT_ID"]

def run_mcp_workflow(prompt: str) -> str:
# Dein MCP-Client-Bibliotheksaufruf hier – der den Berichtstext erstellt.
...

def send_telegram(text: str) -> None:
requests.post(
f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage",
json={"chat_id": TELEGRAM_CHAT_ID, "text": text, "parse_mode": "Markdown"},
).raise_for_status()

if __name__ == "__main__":
prompt = open("/home/you/prompts/daily_digest.txt").read()
report = run_mcp_workflow(prompt)
send_telegram(report)

Einrichtung – cron (macOS / Linux)

  1. Teste das Skript zuerst manuell

export CRYPTOHOPPER_MCP_KEY="..."
export TELEGRAM_BOT_TOKEN="..."
export TELEGRAM_CHAT_ID="..."
python3 /home/you/scripts/daily_digest.py

2. Bearbeite deine crontab

Führe crontab -e aus und füge den folgenden Eintrag hinzu. Cron übernimmt nicht die Umgebung deiner Shell – deklariere Variablen am Anfang der crontab.

CRYPTOHOPPER_MCP_KEY=dein_key
TELEGRAM_BOT_TOKEN=dein_token
TELEGRAM_CHAT_ID=deine_chat_id
PATH=/usr/local/bin:/usr/bin:/bin

# Täglich um 08:00 Ortszeit
0 8 * * * /usr/bin/python3 /home/you/scripts/daily_digest.py >> /home/you/logs/daily.log 2>&1

3. Verifizieren

Überprüfe nach der geplanten Zeit die Protokolldatei. Eine leere Protokolldatei bedeutet, dass cron das Skript nicht ausgeführt hat. Fehler in der Protokolldatei bedeuten, dass es ausgeführt wurde, aber fehlgeschlagen ist.

bashtail -50 /home/you/logs/daily.log

Einrichtung – Aufgabenplanung (Windows)

  1. Teste das Skript von Powershell aus

$env:CRYPTOHOPPER_MCP_KEY = "..."
$env:TELEGRAM_BOT_TOKEN = "..."
$env:TELEGRAM_CHAT_ID = "..."
python C:\Users\you\scripts\daily_digest.py

2. Lege einen Trigger fest

Konfiguriere unter Trigger den Zeitplan (täglich um 08:00, wöchentlich usw.).

3. Konfiguriere die Aktion

Unter Aktionen: Programm/Skript → python (oder voller Pfad zu python.exe). Argumente hinzufügen → C:\Users\you\scripts\daily_digest.py. Im Verzeichnis starten → C:\Users\you\scripts.

4. Umgebungsvariablen verwalten
Zwei Optionen: als systemweite Variablen über Systemsteuerung → System → Umgebungsvariablen festlegen oder sie mit der Bibliothek python-dotenv aus einer .env-Datei laden.

5. Verifizieren

Überprüfe das Ergebnis des letzten Laufs der Aufgabe in der Aufgabenplanung. 0x0 bedeutet Erfolg; alles andere ist ein Fehler.


Einrichtung – GitHub Actions (Cloud-gehostet)

  1. Erstelle ein GitHub-Repository für deine geplanten Workflows

    Füge dein Skript zum Repo hinzu. Committe keine Geheimnisse.

  2. Füge Repository-Geheimnisse hinzu

    Gehe zu Einstellungen → Geheimnisse und Variablen → Aktionen und füge hinzu: CRYPTOHOPPER_MCP_KEY, TELEGRAM_BOT_TOKEN, TELEGRAM_CHAT_ID.

  3. Erstelle die Workflow-Datei

# .github/workflows/daily_digest.yml

name: Tägliche Zusammenfassung

on:
schedule:
- cron: "0 7 * * *" # Täglich 07:00 UTC
workflow_dispatch: # Ermöglicht manuelles Auslösen

jobs:
run:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: pip install -r requirements.txt
- name: Scan zusammenfassen
env:
CRYPTOHOPPER_MCP_KEY: ${{ secrets.CRYPTOHOPPER_MCP_KEY }}
TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
run: python scripts/daily_digest.py

GitHub Actions-Zeitpläne verwenden UTC – konvertiere deine lokale Zeit entsprechend. Überwache die Ausführungen im Actions-Tab des Repos; GitHub sendet dir eine E-Mail, wenn eine geplante Ausführung fehlschlägt.


Auswahl des Speicherorts für die Planung

Option

Am besten geeignet für

Nachteil

cron

Lokale/persönliche Workflows auf einem stets laufenden Rechner

Beendet sich, wenn dein Laptop in den Ruhezustand wechselt

Aufgabenplanung

Persönliche Workflows unter Windows

Umständliche Benutzeroberfläche, Verwaltung von Umgebungsvariablen ist hakelig

GitHub Actions

Zuverlässig, cloud-basiert, für die meisten persönlichen Zwecke kostenlos

Ausführungen können bei hoher Auslastung von GitHub verzögert werden

VPS + systemd/cron

Produktionsreife Zuverlässigkeit

Du verwaltest den Server

Für die meisten Benutzer ist GitHub Actions die richtige Standardwahl: kostenlos, zuverlässig und die Protokolle sind auffindbar, wenn etwas schiefgeht.


Fehlerbehebung

Cron-Job wird nicht ausgeführt

Überprüfe grep CRON /var/log/syslog (Linux) oder log show --predicate 'process == "cron"' (macOS). Die häufigste Ursache ist ein fehlender PATH oder fehlende Umgebungsvariablen – cron läuft in einer minimalen Umgebung.

Cron läuft, aber das Skript schlägt sofort fehl

Fast immer eine fehlende Umgebungsvariable. Lass das Skript eine klare Fehlermeldung ausgeben und frühzeitig beenden, wenn eine erforderliche Umgebungsvariable fehlt – lass es nicht stillschweigend innerhalb des MCP-Aufrufs fehlschlagen.

Geplante Aufgabe wird zu einer anderen Zeit als erwartet ausgeführt

Zeitzonen. Cron verwendet die Zeitzone des Geräts; GitHub Actions verwendet UTC. Teste den Zeitplan zu einer vorhersagbaren Zeit, bevor du die echte Kadenz festlegst.

Protokolldatei ist leer, obwohl das Skript ausgeführt wird

Die Umleitung erfasst nicht stderr. Verwende >> log 2>&1 – die doppelten Pfeile hängen an; ein einzelner > überschreibt jeden Lauf und verliert die vorherige Ausgabe.

GitHub Actions-Zeitplan wird übersprungen

GitHub drosselt geplante Workflows während hoher Last und überspringt gelegentlich Läufe. Für Workflows, die zuverlässig ausgeführt werden müssen, verwende einen zweiten Planungsmechanismus als Backup oder zahle für einen dedizierten Runner. Für die meisten Workflows sind gelegentliche Überspringungen tolerierbar.

Geplante Ausführungen verbrauchen dein Kontingent schneller als erwartet

Jede Ausführung kostet. Überwache die Nutzung über die Anleitung zur Überwachung deiner Cryptohopper MCP-Ausgaben. Eine wöchentliche Summenprüfung des MCP-Nutzungsendpunkts fängt schnell außer Kontrolle geratene Zeitpläne ab.

Du wünschst dir eine Planungspräzision unterhalb einer Minute

Keiner dieser Planer bietet eine zuverlässige Präzision unterhalb einer Minute, und du brauchst sie selten wirklich. Wenn du glaubst, es zu brauchen, tritt einen Schritt zurück – der Workflow lässt sich wahrscheinlich besser als ereignisgesteuerter Webhook gestalten.


Hat dies deine Frage beantwortet?