Dale a Claude Code acceso a datos eléctricos de Europa
Instala la CLI de python-entsoe y añade un skill para que Claude Code pueda consultar precios, demanda, generación y transmisión de 30+ países europeos.
Si trabajas con datos del mercado eléctrico europeo, probablemente has escrito scripts para extraer precios, generación o flujos transfronterizos de la plataforma ENTSO-E Transparency. ¿Y si tu asistente de programación con IA pudiera hacerlo directamente desde la terminal?
python-entsoe incluye una CLI y un archivo skill para Claude Code — un documento markdown que enseña a Claude cómo usar la CLI. Colócalo en tu proyecto y Claude podrá consultar precios day-ahead, comparar mix de generación entre países, analizar flujos de transmisión y ejecutar expresiones pandas — todo sin que escribas una sola línea de código.
¿Qué es un skill de Claude Code?
Un skill es un archivo markdown que Claude Code lee automáticamente cuando es relevante para tu pregunta. Contiene instrucciones, referencias de comandos y convenciones — todo lo que Claude necesita para usar una herramienta correctamente.
Si quieres aprender más sobre skills, consulta nuestro tutorial del skill de python-esios que cubre el concepto en profundidad. Aquí nos centraremos en lo específico de ENTSO-E.
El skill de python-entsoe enseña a Claude:
- La referencia completa de comandos CLI en 5 namespaces (precios, demanda, generación, transmisión, balance)
- Códigos de país para 30+ países europeos y zonas de oferta
- Referencia de tipos PSR para consultas de generación (solar, eólica, nuclear, gas, etc.)
- Formatos de salida (tabla, CSV, JSON) y el comando
execpara expresiones pandas ad-hoc
Configuración
1. Instalar la librería
pip install python-entsoe Esto instala la librería Python y el comando entsoe en la terminal.
2. Configurar la clave API
Solicita una clave API gratuita en la plataforma ENTSO-E Transparency, luego:
Opción A — configuración persistente (recomendada):
entsoe config set api-key tu-clave-aquí Esto guarda la clave en ~/.config/entsoe/config.toml para que no necesites exportarla en cada sesión.
Opción B — variable de entorno:
export ENTSOE_API_KEY=tu-clave-aquí 3. Añadir el skill al proyecto
Copia el archivo skill en el directorio .claude/skills/ de tu proyecto:
mkdir -p .claude/skills/entsoe
curl -o .claude/skills/entsoe/SKILL.md \
https://raw.githubusercontent.com/datons/python-entsoe/main/skills/entsoe/SKILL.md Eso es todo. La próxima vez que abras Claude Code en este proyecto, descubrirá el skill automáticamente.
Qué puede hacer Claude ahora
Consultar precios day-ahead
Tú: “¿Cuáles fueron los precios de electricidad en Francia la semana pasada?”
Claude ejecuta:
entsoe prices day-ahead -s 2024-06-01 -e 2024-06-08 --country FR Out9 lines
┌─────────────────────────┬──────────┬──────────┬────────────┐
│ timestamp │ value │ currency │ price_unit │
├─────────────────────────┼──────────┼──────────┼────────────┤
│ 2024-06-01 00:00:00 │ 28.54 │ EUR │ MWH │
│ 2024-06-01 01:00:00 │ 24.12 │ EUR │ MWH │
│ 2024-06-01 02:00:00 │ 21.30 │ EUR │ MWH │
│ ... │ ... │ ... │ ... │
└─────────────────────────┴──────────┴──────────┴────────────┘
Showing 50 of 168 rowsComparar países
Tú: “Compara los precios day-ahead entre Francia y España para la primera semana de junio”
entsoe prices day-ahead -s 2024-06-01 -e 2024-06-08 --country FR --country ES Las consultas multi-país añaden una columna country, para que Claude pueda agrupar, pivotar o comparar los datos.
Analizar el mix de generación
Tú: “¿Cuál es la generación solar y eólica en Alemania esta semana?”
entsoe generation actual -s 2024-06-01 -e 2024-06-08 --country DE_LU --psr solar --psr wind_onshore El flag --psr acepta nombres legibles (solar, wind_onshore, gas, nuclear) o códigos ENTSO-E (B16, B19).
Consultar flujos transfronterizos
Tú: “Muéstrame los flujos físicos de Francia a España”
entsoe transmission flows -s 2024-06-01 -e 2024-06-08 --from FR --to ES Los comandos de transmisión usan --from y --to en lugar de --country.
Ejecutar expresiones pandas
Aquí está la jugada maestra. El comando exec descarga datos y evalúa cualquier expresión pandas — sin necesidad de scripts:
Tú: “¿Cuáles fueron los precios medios diarios en Francia la semana pasada?”
entsoe exec prices day-ahead -s 2024-06-01 -e 2024-06-08 -c FR \
-x "df.groupby(df['timestamp'].dt.date)['value'].mean().round(2)" Tú: “Muéstrame estadísticas descriptivas”
entsoe exec prices day-ahead -s 2024-06-01 -e 2024-06-08 -c FR -x "df.describe()" Tú: “Expórtalo a CSV”
entsoe prices day-ahead -s 2024-06-01 -e 2024-06-08 --country FR \
--format csv --output prices.csv Flujo real: comparando precios entre Francia y España
Así es como se ve una conversación real. Haces una pregunta, Claude se encarga del resto:
Tú: “Compara los precios medios diarios de electricidad entre Francia y España en junio 2024. ¿Qué país fue más caro en promedio?”
Claude:
- Descarga los datos:
entsoe exec prices day-ahead -s 2024-06-01 -e 2024-06-30 -c FR -c ES \
-x "df.groupby(['country', df['timestamp'].dt.date])['value'].mean().round(2).unstack(0)" \
--format csv --output /tmp/fr_es_prices.csv - Analiza:
entsoe exec prices day-ahead -s 2024-06-01 -e 2024-06-30 -c FR -c ES \
-x "df.groupby('country')['value'].describe().round(2)" - Resume: “Francia promedió 32.15 EUR/MWh mientras que España promedió 28.90 EUR/MWh en junio 2024. Francia fue más cara 22 de 30 días, con la mayor diferencia el 15 de junio (45.20 vs 18.30 EUR/MWh) durante un período de poco viento.”
Sin scripts. Sin notebooks. Solo una pregunta y una respuesta respaldada por datos reales.
Los 5 namespaces de un vistazo
| Namespace | Comandos | Qué cubre |
|---|---|---|
prices | day-ahead | Precios del mercado day-ahead |
load | actual, forecast | Demanda total del sistema y previsiones |
generation | actual, forecast, capacity, per-plant | Generación, previsiones, capacidad instalada |
transmission | flows, exchanges, capacity | Flujos físicos transfronterizos, intercambios programados, NTC |
balancing | prices, volumes | Precios y volúmenes de desequilibrio |
Todos los comandos soportan --format table|csv|json y --output archivo.csv.
Consejos para escribir buenos prompts
- Sé específico con las fechas: “junio 2024” es mejor que “el mes pasado” — Claude conoce los flags exactos
--starty--end - Usa códigos de país: “FR” es inequívoco; “Francia” también funciona pero los códigos son más rápidos
- Nombra el tipo PSR: “generación solar” activa el flag correcto
--psr solar - Pide exportaciones: Claude usará
--format csv --outputautomáticamente - Encadena análisis: “descarga datos de generación, calcula totales diarios por tipo, encuentra el día con más solar” — Claude encadena llamadas
exec
Conclusiones
Con el skill de python-entsoe, Claude Code se convierte en un analista del mercado eléctrico europeo:
entsoe prices day-ahead— precios day-ahead para cualquier paísentsoe load actual|forecast— datos de demanda del sistemaentsoe generation actual|forecast|capacity|per-plant— desglose completo de generación con filtrado por tipo PSRentsoe transmission flows|exchanges|capacity— datos transfronterizosentsoe balancing prices|volumes— datos de desequilibrioentsoe exec— ejecuta expresiones pandas sobre cualquier consulta sin escribir scripts
El archivo skill es el puente: le da a Claude el conocimiento para usar estos comandos correctamente, con los flags, códigos de país y convenciones adecuados.
Recursos
- GitHub: datons/python-entsoe
- PyPI: python-entsoe
- Tutorial del skill de python-esios — cubre los conceptos de skills en profundidad
- Plataforma ENTSO-E Transparency
- Documentación de skills de Claude Code