
Comparador de luz y gas (CNMC)
io.github.nuncaeslupus由 GitHub 帳號 nuncaeslupus 發布v0.2.5更新於 Oct 27, 2026
Ofertas de luz y gas en España del comparador oficial de la CNMC, ordenadas por precio.
概覽
依價格比較西班牙 CNMC 官方比價器中的電力與瓦斯報價,可依郵遞區號、用量與功率或帳單 QR 碼查詢。
- 可以做什麼
- 依郵遞區號、用量與功率比較電力、瓦斯或兩者,回傳依價格排序的報價及多年期分析
- 讀取帳單 QR 碼中的資料,可直接傳入 QR 字串,或讀取磁碟上的 PDF、圖片檔
- 回報涵蓋範圍,列出未出現在官方比價器中的大型供應商
- 以 JSON 或文字表格輸出結果,金額可為年度或帳單期間口徑
- 適用情境
- 適合西班牙的使用者想了解哪些經 CNMC 驗證的電力或瓦斯報價對自家住宅或企業最便宜,或想把現有帳單與可選報價做比較時使用。
- 執行需求
- 以 stdio 在本機執行,透過 uvx 從 PyPI 套件 comparador-luz-gas 啟動(也可使用隨附的 Dockerfile)。從 PDF 或圖片讀取 QR 碼需安裝 facturas 附加元件及系統函式庫 libzbar0 與 poppler-utils。比價需要連線至 CNMC API 的網路;未宣告需要帳號、API 金鑰或環境變數。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Comparador de luz y gas (CNMC),將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
comparador-luz-gas
[PyPI] [CI] [License: MIT] [comparador-luz-gas MCP server – quality and maintenance score on Glama]
El comparador oficial de tarifas de luz y gas de la CNMC, como librería, CLI y servidor MCP.
El comparador de la CNMC es la única comparativa oficial de ofertas de energía en España, pero solo se usa a través de un formulario web; su API pública pide 83 parámetros por consulta. Este proyecto la reduce a tres datos (código postal, consumo, potencia) o al QR de la factura, y devuelve las ofertas en JSON ordenadas por precio, con un análisis a varios años y el aviso de qué comercializadoras grandes no están en el comparador.
Inicio rápido
O instalado: pip install comparador-luz-gas. Para leer el QR de un PDF o una imagen,
pip install "comparador-luz-gas[facturas]" y sudo apt install libzbar0 poppler-utils.
Ejemplo
Salida real (consulta del 2026-10-20; los precios cambian con el mercado):
Sin --texto imprime JSON con las claves modo, importes, consulta, cobertura,
ofertas, alternativa_por_separado y analisis. Cada oferta:
Desde Python:
Uso con agentes de IA
Servidor MCP
comparador-luz-gas mcp sirve el comparador por stdio, sin dependencias extra. Está en
el registro oficial de MCP como
io.github.nuncaeslupus/comparador-luz-gas.
Para leer facturas del disco:
"args": ["--from", "comparador-luz-gas[facturas]", "comparador-luz-gas", "mcp"].
También hay Dockerfile (docker run -i --rm comparador-luz-gas).
Los errores vuelven como {"ok": false, "error": "ArgumentoInvalido", "message": "..."}.
Desde el CLI
Un agente sin MCP puede llamar al CLI: por defecto escribe JSON en stdout. modo e
importes dicen si los importes son anuales o de un periodo de factura, para que no se
confunda un mes con un año. Un argumento inválido sale con código 2 y el mensaje en
stderr.
Cómo funciona
- Una petición a la API oficial de la CNMC (3-8 s, límite 90 s). No hay precios propios ni caché: solo cuentas sobre lo que responde la CNMC.
- Lee el QR de la factura. Desde la Resolución de la CNMC de 24/06/2021
(BOE-A-2022-16989) toda
factura de luz lleva un QR con código postal, potencias, consumo anual por franja,
periodo e importe. El formato lo fija la CNMC, así que vale para cualquier
comercializadora.
desde_qr()no tiene dependencias: una app que ya escaneó el QR le pasa la cadena. - Dos modos. Por defecto, coste estimado de 12 meses. Con
--mensual(f.consulta(mensual=True)), el coste del periodo concreto de la factura, comparable con el importe impreso. - Análisis a largo plazo (
interpretar(), claveanalisis): coste a N años (primer_anio + (N-1) × siguientes), porque el primer puesto suele ganarlo un descuento de bienvenida que se cobra una vez. Separa precio único frente a discriminación horaria, señala las ofertas solo para nuevos clientes, la permanencia y su penalización, y el PVPC frente a la mejor fija. - Cobertura. Cada respuesta lista las comercializadoras presentes y las grandes que
faltan (
cobertura.grandes_ausentes). - Anualizar.
anualizar(facturas)extrapola el consumo de varias facturas recientes en vez de usar los 12 meses rodantes del QR.
CLI
Otras opciones: --potencia (kW, 3,45 por defecto), --empresa (suministro que no es
vivienda). comparador-luz-gas --help las lista todas.
Campos de Consulta: codigo_postal (obligatorio), consumo_anual_luz,
consumo_anual_gas, potencia (3.45), suministro ("luz", "gas", "ambas"),
franjas ((punta, llano, valle); si falta, perfil 2.0TD), vivienda (True),
permanencia y servicios_adicionales (2; 1 = solo ofertas sin ellos).
Limitaciones
- No es un censo del mercado. La CNMC solo publica ofertas que las comercializadoras
le remiten y valida. Comprobado el 2026-09-23 sobre 20 códigos postales: Endesa,
TotalEnergies, Plenitude, Holaluz y EDP no tienen ofertas; Iberdrola, una de gas.
Endesa e Iberdrola solo aparecen como
Comercializadora de referencia(PVPC/TUR). El resultado es la mejor entre las verificadas por la CNMC. - Sin desglose de impuestos. Confirma con la comercializadora si el importe lleva IVA.
- La factura incluye cosas que el comparador no cuenta: servicios adicionales,
alquiler de equipos, bono social. El QR los desglosa (
impSA,finBS); réstalos antes de comparar. - Las ofertas por tramos se valoran con tu reparto punta/llano/valle actual, con los
tramos 2.0TD de la Circular 3/2020 (vigentes desde el 1/06/2021; Ceuta y Melilla usan
otros). Si piensas mover consumo, repite con
--franjas. Si vienes de una tarifa de discriminación horaria anterior, usa solo facturas posteriores a esa fecha. - Sin histórico. El catálogo no lleva fechas de alta ni caducidad, y la CNMC no publica el histórico, así que no se puede decir en qué mes conviene cambiar.
- QR escaneado: 400 dpi aguanta JPEG, giro y desenfoque; 300 dpi va bien salvo desenfoque; 200 dpi solo si está limpio; 150 dpi no se lee.
Documentación
- docs/qr-escaneado.md: lectura del QR en facturas escaneadas, con las cifras por resolución.
Desarrollo
data/har/ y data/facturas/ están en .gitignore (llevan CUPS, dirección y consumos
reales); los tests versionados usan un QR inventado.
Proyectos relacionados
- claude-arsenal — flujo de Claude Code guiado por especificaciones y cola de tareas con puertas de aceptación.
- drawspec — especificación declarativa de diagramas a SVG/PNG/texto limpio, escribible por LLMs; incluye servidor MCP.
- doc-control — permite a agentes de IA editar documentos Word como cambios controlados.
- literary-critic — análisis de manuscritos con LLM al modo de un editor profesional.
- integral-job-search — búsqueda de empleo centrada en el candidato, dentro de Claude Code.
Licencia
來源:README.md,提交 7aada70
工具
0版本歷史
4- v0.2.5最新Oct 20, 2026
- v0.2.4Oct 15, 2026
- v0.2.2Oct 15, 2026
- v0.2.1Oct 15, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分