Prerequisiti
Un flusso di lavoro MCP funzionante, esprimibile come script: lo script deve eseguire il prompt MCP, acquisirne l'output e recapitarlo. Vedi come inviare report MCP di Cryptohopper a Telegram, Discord o email.
Una chiave API MCP di Cryptohopper memorizzata come variabile d'ambiente o segreto. Non codificarla mai nello script: consulta le best practice per la sicurezza delle chiavi API.
Il modello base
Tutti e tre i sistemi di pianificazione incapsulano lo stesso script. La struttura è sempre la stessa: esegui il prompt MCP → acquisisci l'output → recapitalo. Assicurati che le variabili d'ambiente siano impostate e che l'output venga acquisito in un log.
# /home/tuo/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:
# La tua chiamata alla libreria client MCP qui — che produce il testo del report.
...
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/tuo/prompts/daily_digest.txt").read()
report = run_mcp_workflow(prompt)
send_telegram(report)
Configurazione — cron (macOS / Linux)
Testa prima lo script manualmente
export CRYPTOHOPPER_MCP_KEY="..."
export TELEGRAM_BOT_TOKEN="..."
export TELEGRAM_CHAT_ID="..."
python3 /home/tuo/scripts/daily_digest.py
2. Modifica il tuo crontab
Esegui `crontab -e` e aggiungi la voce qui sotto. Cron non eredita l'ambiente della tua shell — dichiara le variabili all'inizio del crontab.
CRYPTOHOPPER_MCP_KEY=tua_chiave
TELEGRAM_BOT_TOKEN=tuo_token
TELEGRAM_CHAT_ID=tuo_chat_id
PATH=/usr/local/bin:/usr/bin:/bin
# Ogni giorno alle 08:00 ora locale
0 8 * * * /usr/bin/python3 /home/tuo/scripts/daily_digest.py >> /home/tuo/logs/daily.log 2>&1
3. Verifica
Dopo l'orario pianificato, controlla il log. Un log vuoto significa che cron non ha eseguito lo script. Errori nel log significano che è stato eseguito ma è fallito.
