Tutorial

Dale a Claude Code acceso a datos energéticos de EE.UU.

Instala la CLI de python-eia y añade un skill para que Claude Code pueda explorar, descargar y analizar datos de la EIA desde la terminal.

Si trabajas con datos energéticos de EE.UU. — generación eléctrica, precios del petróleo, oferta de gas natural — probablemente has escrito scripts para extraer datos de la API de la EIA. ¿Y si tu asistente de programación con IA pudiera hacerlo directamente desde la terminal?

python-eia incluye una CLI y un skill de Claude Code — un archivo markdown que enseña a Claude cómo usar la CLI. Colócalo en tu proyecto, y Claude podrá explorar el árbol de la API de la EIA, descargar datos con filtros de facetas, ejecutar expresiones de pandas y exportar resultados 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.

El skill de python-eia enseña a Claude:

  • La referencia completa de la CLI (eia routes, meta, facets, get, exec)
  • Rutas comunes de la EIA (generación eléctrica, precios del petróleo, gas natural)
  • Convenciones de facetas (filtrado key=value)
  • Formatos de salida (tabla, CSV, JSON)
  • La API de Python para flujos de trabajo más complejos

Configuración

1. Instalar la librería

pip install python-eia

2. Configurar tu API key

Regístrate para una clave gratuita en la página de la API de la EIA, luego:

Opción A — configuración persistente (recomendada):

eia config set api-key tu-clave-aquí

Esto guarda la clave en ~/.config/eia/config.toml para que no necesites exportarla en cada sesión.

Opción B — variable de entorno:

export EIA_API_KEY=tu-clave-aquí

3. Añadir el skill a tu proyecto

Copia el archivo de skill en el directorio .claude/skills/ de tu proyecto:

mkdir -p .claude/skills/eia
curl -o .claude/skills/eia/SKILL.md \
  https://raw.githubusercontent.com/datons/python-eia/main/skills/eia/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

Explorar el árbol de la API

La API de la EIA está organizada como un árbol de rutas. Claude puede navegarlo para encontrar el endpoint de datos correcto:

Tú: “¿Qué datos de electricidad hay disponibles en la API de la EIA?”

Claude ejecuta:

eia routes electricity

Inspeccionar un endpoint de datos

Tú: “¿Qué facetas y frecuencias tiene el endpoint de generación por tipo de combustible?”

eia meta electricity/rto/fuel-type-data

Descargar datos

Tú: “Descarga la generación horaria de CAISO por tipo de combustible para la primera semana de junio 2024”

eia get electricity/rto/fuel-type-data \
  --start 2024-06-01 --end 2024-06-08 \
  --frequency hourly \
  --facet respondent=CISO \
  --data value

Ejecutar expresiones de pandas

Este es el comando más potente. exec descarga datos y evalúa cualquier expresión de pandas — sin necesidad de scripts:

Tú: “¿Cuál fue la generación media por tipo de combustible de CAISO en junio pasado?”

eia exec electricity/rto/fuel-type-data \
  --start 2024-06-01 --end 2024-06-30 \
  --frequency hourly \
  --facet respondent=CISO --data value \
  -x "df.groupby('fueltype')['value'].mean().sort_values(ascending=False).round(0)"

Tú: “Expórtalo a CSV”

eia get electricity/rto/fuel-type-data \
  --start 2024-06-01 --end 2024-06-30 \
  --frequency hourly \
  --facet respondent=CISO --data value \
  --format csv --output generation.csv

Flujo de trabajo real: analizando precios del petróleo

Así es una conversación real. Haces una pregunta, Claude se encarga del resto:

Tú: “Compara los precios spot del WTI del primer semestre de 2024. Muéstrame medias mensuales y la variación mes a mes.”

Claude:

  1. Descubre el endpoint:
eia meta petroleum/pri/spt
eia facets petroleum/pri/spt series
  1. Descarga y analiza:
eia exec petroleum/pri/spt \
  --start 2024-01-01 --end 2024-06-30 \
  --facet series=RWTC --data value \
  -x "df.set_index('period').resample('M')['value'].mean().round(2)"
  1. Resume los resultados con cifras reales de los datos.

Sin scripts. Sin notebooks. Solo una pregunta y una respuesta respaldada por datos reales.

El enfoque basado en rutas

A diferencia de otras APIs energéticas con catálogos fijos de indicadores, la API de la EIA es un árbol de rutas. Cada ruta puede tener rutas hijas o ser un endpoint de datos con su propio conjunto de facetas y frecuencias.

La CLI refleja esta estructura:

  • eia routes — navegar el árbol
  • eia meta — inspeccionar un endpoint de datos
  • eia facets — listar valores de una faceta específica
  • eia get — descargar datos con filtros
  • eia exec — descargar + expresión de pandas

Este enfoque genérico significa que cualquier ruta nueva añadida a la API de la EIA funciona automáticamente — sin necesidad de actualizar la librería.

Consejos para escribir buenos prompts

  • Nombra la ruta si la conoces: “electricity/rto/fuel-type-data” ahorra pasos de exploración
  • Especifica fechas explícitamente: “junio 2024” es mejor que “el mes pasado”
  • Pide exportaciones: Claude usará --format csv --output automáticamente
  • Encadena análisis: “descarga datos de generación, agrupa por tipo de combustible, calcula medias diarias” — Claude usará exec

Conclusiones

Con el skill de python-eia, Claude Code se convierte en un analista de datos energéticos de EE.UU.:

  • eia routes — navegar todo el árbol de la API de la EIA
  • eia meta — inspeccionar endpoints, facetas, frecuencias
  • eia facets — descubrir valores de filtro disponibles
  • eia get — descargar datos con filtros de facetas
  • eia exec — ejecutar expresiones de pandas sin escribir scripts

El archivo de skill es el puente: da a Claude el conocimiento para usar estos comandos correctamente, con las rutas, facetas y convenciones adecuadas.

Recursos

Suscríbete a nuestro newsletter

Recibe insights semanales sobre datos, automatización e IA.

© 2026 Datons. All rights reserved.