Skip to main content
Glama
README.md
# 🏢 CE3X-MCP-Server (Certificación Energética con IA)

| 🏗️ Perfil & ConTech | 📈 Repositorio & Enlaces |
| :--- | :--- |
| ![Profesión](https://img.shields.io/badge/Profesi%C3%B3n-Arquitectos%20T%C3%A9cnicos-2e7d32?logo=micro%3Abit&logoColor=white&style=plastic) <br> ![Role](https://img.shields.io/badge/Role-BIM%20%26%20ConTech-007ACC?logo=bim360&style=plastic) <br> ![Location](https://img.shields.io/badge/Location-A%20Coru%C3%B1a%20%F0%9F%8C%8A-005B94?logo=lighthouse&logoColor=white&style=plastic) <br> ![Sector](https://img.shields.io/badge/Sector-ConTech%20%7C%20AECO-E65100?logo=construct3&style=plastic) <br> ![Protocol](https://img.shields.io/badge/Protocol-Model%20Context%20Protocol-8A2BE2?logo=anthropic&style=plastic) <br> ![Engine](https://img.shields.io/badge/Engine-FastMCP%20%26%20Typst-10b981?logo=python&style=plastic) <br> ![Normativa](https://img.shields.io/badge/Normativa-CTE%20DB--HE%20%7C%20RD%20390%2F2021-d97706?style=plastic) <br> ![Language](https://img.shields.io/badge/Language-Python%203.11-3776AB?logo=python&logoColor=white&style=plastic) | [![PyPI Version](https://img.shields.io/pypi/v/ce3x-mcp-server?color=blue&logo=pypi&logoColor=white&style=plastic)](https://pypi.org/project/ce3x-mcp-server/) <br> [![PyPI Descargas](https://img.shields.io/pypi/dm/ce3x-mcp-server?color=10b981&label=Descargas%2Fmes&logo=pypi&logoColor=white&style=plastic)](https://pypi.org/project/ce3x-mcp-server/) <br> [![Versión](https://img.shields.io/github/v/release/jmcaamanog/CE3X-MCP-Server?label=Version&color=3b82f6&logo=github&style=plastic)](https://github.com/jmcaamanog/CE3X-MCP-Server/releases/latest) <br> [![Stars](https://img.shields.io/github/stars/jmcaamanog/CE3X-MCP-Server?style=plastic&label=Stars&color=f59e0b&logo=github)](https://github.com/jmcaamanog/CE3X-MCP-Server/stargazers) <br> [![Glama MCP](https://img.shields.io/badge/Glama.ai-MCP%20Server-8A2BE2?logo=glama&logoColor=white&style=plastic)](https://glama.ai/mcp/servers/jmcaamanog/CE3X-MCP-Server) <br> [![Glama Score](https://glama.ai/mcp/servers/jmcaamanog/CE3X-MCP-Server/badges/score.svg)](https://glama.ai/mcp/servers/jmcaamanog/CE3X-MCP-Server) <br> [![Licencia](https://img.shields.io/badge/Licencia-MIT-8b5cf6.svg?style=plastic)](./LICENSE) <br> [![LinkedIn](https://img.shields.io/badge/LinkedIn-0077B5?style=plastic&logo=linkedin)](https://www.linkedin.com/in/jmcaamanog/) <br> [![Web](https://img.shields.io/badge/Web-jmcaamanog.pages.dev-005B94?style=plastic)](https://jmcaamanog.pages.dev) |

<div align="center">

[![CE3X-MCP-Server MCP server – quality and maintenance score on Glama](https://glama.ai/mcp/servers/jmcaamanog/CE3X-MCP-Server/badges/card.svg)](https://glama.ai/mcp/servers/jmcaamanog/CE3X-MCP-Server)

</div>

### Servidor MCP para CE3Xv3.2 para Claude, Gemini y ChatGPT.
*Diseñado bajo la perspectiva técnica de un Arquitecto Técnico & BIM Manager para dotar al sector AECO de una herramienta libre, rigurosa y ultrarrápida.*

---

## ⚡ Enlaces y Accesos Rápidos

| 🌟 Recurso | 🚀 Acción / Enlace | 📝 Descripción |
| :--- | :--- | :--- |
| **Estructura de Visita** | **[Guía 5 Carpetas](./docs/ESTRUCTURA_CARPETA_VISITA.md)** | Arquitectura canónica para organizar fotos, planos, notas y certificados. |
| **Estudio de Conectores** | **[Conexiones](./docs/ESTUDIO_INTEGRAL_CONECTORES_CE3X_MCP.md)** | Mapeo pantalla a pantalla, botón a botón y ensayos de CE3X a conectores de IA. |
| **Documento de Análisis** | **[Análisis CE3X & MCP](./docs/analisis_ce3x_mcp_framework.md)** | Análisis exhaustivo del software, manuales técnicos y arquitectura modular. |
| **Plantilla de Campo** | **[Plantilla de Datos](./docs/PLANTILLA_TOMA_DATOS_CEE.md)** | Formulario estructurado para visitas de campo y dictado por voz. |
| **Guía para tu IA** | **[Instrucciones para la IA](./docs/GUIA_PROMPTS_Y_INSTRUCCIONES_IA.md)** | System prompts y protocolo de primer contacto para Claude, Gemini y Cursor. |
| **Historial de Versiones** | **[Changelog](./CHANGELOG.md)** | Registro detallado de versiones y mejoras implementadas. |
| **Código de Conducta** |  **[Código de Conducta](./CODE_OF_CONDUCT.md)** | El manual del buen rollo y convivencia comunitaria. |
| **Guía de Contribución** | **[Cómo Contribuir](./CONTRIBUTING.md)** | Pautas para reportar bugs, proponer ideas y enviar Pull Requests. |
| **Instalador 1-Clic** | **[Instalador Windows](./instalar_en_claude_desktop.bat)** | Script autoejecutable para configurar Claude Desktop y Cursor. |
| **Skills para Claude/GPT/Gemini** | **[Guía de Skills](./docs/GUIA_SKILL_CLAUDE_GPT_GEMINI.md)** | Manual operativo para que cualquier IA razone como un Arquitecto Técnico. |
| **Paquete PyPI Oficial** | **[PyPI](https://pypi.org/project/ce3x-mcp-server/)** | Distribución oficial en el Python Package Index (`pip install ce3x-mcp-server`). |
| **Glama MCP Registry** | **[Glama.ai](https://glama.ai/mcp/servers/jmcaamanog/CE3X-MCP-Server)** | Directorio oficial de servidores MCP e Inspector web interactivo. |
| **Notas de Release v1.0** | **[Release Notes v1.0](./docs/RELEASE_NOTES_v1.0.md)** | Manifiesto de capacidades, paquetes wheel y distribución oficial. |
| **Seguridad** | **[Política de Seguridad](./SECURITY.md)** | Divulgación responsable y reporte de vulnerabilidades. |
| **Repositorio GitHub** | **[GitHub jmcaamanog](https://github.com/jmcaamanog/CE3X-MCP-Server)** | Código fuente, issues y lanzamientos oficiales. |

---

## 👥 Perfiles y Modos de Uso para Cualquier Profesional

| Perfil / Modo | Icono | Descripción del Flujo | Entrada Requerida | Entregables Generados |
| :--- | :---: | :--- | :--- | :--- |
| **Modo Express (Datos Mínimos)** | ⚡ | **Certificación ultrarrápida en segundos** interactuando por chat. La IA infiere automáticamente la envolvente y el clima normativo oficial. | Referencia Catastral (o municipio) + año + superficie + climatización básica. | Archivo `.cex`, XML oficial v3.0 homologado y **PDF oficial de 15 páginas**. |
| **Modo Técnico Documental** | 📐 | **Extracción multimodal asistida por IA**. Lee planos arquitectónicos en PDF y fotos de placas de características de equipos térmicos. | Plano de distribución en PDF/imagen + fotos o fichas técnicas de caldera/aerotermia. | Desglose completo de estancias, fachadas, ventanas, potencias y rendimientos estacionales (SCOP/COP). |
| **Modo BIM & Auditoría NextGen** | 🏗️ | **Conexión directa con modelos BIM** y justificación automática de subvenciones públicas y deducciones IRPF. | Archivo BIM `.ifc` (Revit, Archicad, CYPE) o proyecto de rehabilitación. | Cubicación BIM con `IfcOpenShell`, cálculo solar satelital PVGIS, salto a letra A y **Dictamen NextGen (RD 853/2021)**. |

---

## 🚀 Guía Rápida para Usuarios Noveles (Empieza en 3 Pasos)

> [!IMPORTANT] 📥
> ### 🎯 ¿No quieres lidiar con consolas, comandos ni archivos JSON?
> Sigue estos 3 pasos inmediatos para tener la herramienta funcionando en 1 minuto:
> 
> 1. **Doble Clic al Instalador:** Haz doble clic sobre [`instalar_en_claude_desktop.bat`](./instalar_en_claude_desktop.bat) en la raíz del repositorio. Configurará Claude Desktop y Cursor automáticamente sin tocar nada de código.
> 2. **Abre Claude Desktop o Cursor:** El servidor `ce3x` aparecerá conectado y listo para usar con sus **27 herramientas oficiales**.
> 3. **Escribe en el chat:**  
>    > *"Certifica la vivienda de la carpeta `ejemplos/visita_vivienda_ejemplo`"*  
>    *(Verás cómo la IA organiza las fotos, planos y notas, y genera la carpeta `CERTIFICADO/` con los archivos oficiales).*
>
> ---
>
> 📦 **¿Prefieres usar PyPI / `uvx` directamente sin clonar nada?**  
> Copia estas 4 líneas en tu archivo de configuración de Claude Desktop o Cursor:
> ```json
> "ce3x": {
>   "command": "uvx",
>   "args": ["ce3x-mcp"]
> }
> ```

---

## 🔌 Configuración Inmediata en Clientes de IA

### 1. Claude Desktop (`claude_desktop_config.json`)
Abre tu configuración de Claude Desktop (`%APPDATA%\Claude\claude_desktop_config.json` en Windows o `~/Library/Application Support/Claude/claude_desktop_config.json` en macOS) y añade el paquete oficial de PyPI:

```json
{
  "mcpServers": {
    "ce3x": {
      "command": "uvx",
      "args": [
        "--from",
        "ce3x-mcp-server",
        "ce3x-mcp"
      ]
    }
  }
}
```

### 2. Cursor IDE (`.cursor/mcp.json` o Settings > MCP)
En Cursor, ve a **Settings > MCP Servers** (o añade en tu archivo `.cursor/mcp.json`):

```json
{
  "mcpServers": {
    "ce3x": {
      "command": "uvx",
      "args": [
        "--from",
        "ce3x-mcp-server",
        "ce3x-mcp"
      ]
    }
  }
}
```

### 3. Antigravity IDE / Gemini (`~/.gemini/config/mcp_config.json`)
```json
{
  "mcpServers": {
    "ce3x": {
      "command": "uvx",
      "args": [
        "--from",
        "ce3x-mcp-server",
        "ce3x-mcp"
      ]
    }
  }
}
```

### 4. Instalación Local para Desarrollo (Opcional con `pip`)
Si prefieres tener el repositorio clonado y trabajar en local:

```bash
git clone https://github.com/jmcaamanog/CE3X-MCP-Server.git
cd CE3X-MCP-Server
python -m venv .venv
.venv\Scripts\activate
pip install -e .
```

Y en tu archivo de configuración MCP indicas el intérprete local:

```json
{
  "mcpServers": {
    "ce3x": {
      "command": "C:\\ruta\\al\\repositorio\\.venv\\Scripts\\python.exe",
      "args": [
        "-I",
        "-m",
        "ce3x_mcp.server"
      ],
      "env": {
        "PYTHONPATH": "C:\\ruta\\al\\repositorio\\src"
      }
    }
  }
}
```

---

## 🌟 Características Principales (ConTech & AI Cert)

| Módulo | Icono | Funcionalidades Destacadas |
| :--- | :---: | :--- |
| **Ingesta Catastral Automática** | 🏛️ | Conexión directa con la **Sede Electrónica del Catastro (OVC)** para extraer datos oficiales, año de edificación, superficie y dirección con solo la Referencia Catastral. |
| **Motor Normativo CTE DB-HE** | 📐 | Determinación automática de **zonas climáticas CTE (α1 a E1)** con corrección por altitud y asignación de transmitancias límite e históricas (NBE-CT-79, CTE 2006/2013/2019). |
| **Exportación a CE3X (.cex)** | 💾 | Generación y lectura nativa de archivos de proyecto **.cex** para abrir, auditar y recalcular en la interfaz oficial de CE3X v3.2. |
| **XML Oficial de Registro** | 📑 | Creación de archivos XML normalizados conforme a la especificación **DatosEnergeticosDelEdificio v3.0**, validados al 100% contra el esquema RelaxNG oficial del Ministerio. |
| **Compilación de PDF Homologado** | 🖨️ | Integración con **Typst / xml2cert** (IETcc-CSIC) para compilar en segundos el certificado oficial completo de 15 páginas con gráficos y anejos. |
| **Cálculo Solar Satelital PVGIS** | ☀️ | Conexión en vivo con la **API oficial PVGIS de la Comisión Europea** (JRC) para estimar la producción fotovoltaica real (kWh/año) según radiación satelital SARAH-2. |
| **Medidas de Mejora & NextGen** | 🌿 | Propuesta automatizada de paquetes de rehabilitación (SATE, aerotermia, fotovoltaica) con cálculo de ahorro %, nuevo salto de letra, amortización y **dictamen para ayudas RD 853/2021 y deducciones IRPF**. |
| **Caché Persistente & Telemetría** | ⚡ | Base de datos SQLite local en modo WAL (`~/.ce3x_mcp/cache.db`) que **acelera consultas a Catastro y PVGIS a menos de 5 ms (hasta 230x más rápido)** y emite telemetría de progreso en vivo vía `FastMCP.Context` (`ctx.report_progress`). |

---

## 🛠️ Catálogo Completo de 27 Herramientas MCP Disponibles

El servidor implementa el mapeo total y exhaustivo de CE3X v3.2, manuales técnicos y normativas oficiales:

### 🔍 Verificación Oficial y Conectividad con CE3X v3.2
1. `verificar_conexion_ce3x(directorio_ce3x)`: Verificación y testeo en vivo de la instalación de CE3X v3.2, comprobando `CE3Xv3.2.exe`, compilador Typst `xml2cert.exe`, validador RelaxNG `xmlcheck.exe`, base de datos de escalas oficiales (`Escala/Localidades.xml`) para las 32 zonas climáticas, motores climáticos `Calculos/BDClima` y entornos de ejecución Java.

### 🏛️ Datos Administrativos, Catastro y Clima
2. `consultar_catastro(referencia_catastral)`: Ingesta telemática en tiempo real desde la Sede Electrónica de Catastro.
3. `determinar_zona_climatica(provincia, municipio, altitud)`: Clima oficial de referencia CTE DB-HE con corrección por cota.
4. `registrar_visita_presencial(fecha_visita, pruebas, observaciones)`: Registro formal in situ para el Anexo IV obligatorio (RD 390/2021 Art. 8).

### 📐 Envolvente Térmica, BIM y Planos
4. `estimar_envolvente_por_defecto(ano_construccion, zona, superficie)`: Transmitancias U históricas (Pre-79, NBE-CT-79, CTE).
5. `analizar_modelo_bim_ifc(ifc_path)`: Cubicación paramétrica de muros, cubiertas y huecos desde modelos IFC (IfcOpenShell).
6. `analizar_plano_arquitectura_pdf(pdf_path)`: Extracción inteligente de superficies y carpinterías desde planos en PDF.
7. `calcular_puentes_termicos(ano, perimetro_forjado, perimetro_huecos, pilares)`: Transmitancias lineales psi (W/m·K) según DA DB-HE / 3.

### ⚙️ Instalaciones, Equipos y Renovables
8. `analizar_ficha_equipo_clima(texto_o_ficha)`: Lectura de bombas de calor, calderas, potencias y SCOP/COP.
9. `calcular_produccion_fotovoltaica_pvgis(lat, lon, kwp)`: Simulación satelital en tiempo real con datos de la Comisión Europea.

### 🧪 Ensayos Oficiales y Contraste de Consumos
10. `registrar_ensayo_estanqueidad_blower_door(volumen, superficie, caudal_50pa)`: Ensayo Blower Door (UNE-EN ISO 9972) con cálculo de n50 y q50.
11. `contrastar_consumo_facturas_reales(consumo_teorico, electricidad, gas, gasoleo)`: Contraste de facturación real vs modelo normativo.
12. `registrar_ensayo_flujometria_termica_in_situ(flujo, temp_int, temp_ext, duracion)`: Ensayo in situ de flujometría térmica (UNE-EN ISO 9869-1) para determinar la transmitancia U real de muros.

### 💡 Rehabilitación y Subvenciones Públicas
13. `proponer_medidas_mejora_rd390(...)`: Generación de paquetes de envolvente, equipos e hibridación con fotovoltaica.
14. `emitir_dictamen_subvenciones_nextgen(...)`: Dictamen técnico oficial con tramos del 40%, 65%, 80% (RD 853/2021) e IRPF.

### 📐 Envolvente, Sombras y Terciario
15. `calcular_sombras_hueco(orientacion, ancho, alto, retranqueo, voladizo, toldo)`: Factor solar estacional F_sh para huecos según CTE DB-HE.
16. `calcular_sombras_obstaculo_edificio_enfrente(distancia, altura, orientacion)`: Ángulo alfa y factor de sombra por edificio enfrente / obstáculo remoto.
17. `calcular_parametros_terciario_local_comercial(tipo, m2, luminarias)`: Potencia de iluminación W/m², VEEI según DB-HE 3 y caudal RITE.
18. `configurar_perfil_tecnico_colegiado(nombre, nif, titulacion, colegio)`: Registro persistente de la firma y credenciales del técnico.

### 📐 Cálculos Normativos Especializados (ISO & CTE)
24. `calcular_transmitancia_ventana_iso10077(ancho, alto, u_vidrio, u_marco, fraccion_marco, intercalario)`: Cálculo riguroso de transmitancia térmica total $U_w$ según la norma UNE-EN ISO 10077-1 (vidrio $U_g$, marco $U_f$, fracción de hueco y puente térmico perimetral $\Psi_g$).
25. `calcular_demanda_acs_cte_he4(numero_dormitorios, provincia, ocupantes, litros_persona_dia)`: Demanda reglamentaria obligatoria de ACS a 60 °C ($l/día$ y $kWh/año$) según dotaciones del CTE DB-HE 4 y tabla mensual de temperatura de red provincial.

### 📂 Gestión Integral de Carpeta de Visita y Entregables
19. `organizar_carpeta_visita(ruta_carpeta)`: Auto-organizador inteligente en 5 carpetas (INFORMACION, PLANOS, FOTOS, INSTALACIONES, CERTIFICADO).
20. `auditar_carpeta_visita(ruta_carpeta)`: Escaneo autónomo multimodal de la visita y generación de preguntas quirúrgicas.
21. `certificar_desde_carpeta_visita(ruta_carpeta, ...)`: Ciclo completo que genera todos los entregables en `CERTIFICADO/`.
22. `calcular_calificacion_energetica(proyecto)`: Motor de cálculo simplificado de demandas, consumos y emisiones.
23. `generar_certificado_completo(...)`: Pipeline integral que emite el `.cex` nativo, XML oficial v3.0 y PDF de 15 páginas.

### ⚡ Rendimiento, Persistencia y Telemetría FastMCP
27. `gestionar_cache_ce3x(accion, categoria)`: Gestión del subsistema de caché persistente SQLite local (`~/.ce3x_mcp/cache.db` en modo WAL). Acelera las consultas recurrentes a Catastro (OVC) y radiación solar satelital (PVGIS) de cientos de milisegundos a menos de 5 ms (aceleración 230x), previene el bloqueo por tasa de peticiones (rate limiting) y permite auditar estadísticas y purgar registros caducados (TTL de 30 y 90 días).

---



## 👨‍💻 Autor y Dirección Técnica

**Jose Manuel Caamaño González** | Arquitecto Técnico & BIM Manager  
Digital Product Lead | ConTech & Digital Twin SaaS | Data Analytics (SQL, Power BI)  

Hecho con código y café desde A Coruña. ☕  
[LinkedIn](https://www.linkedin.com/in/jmcaamanog/) · [Web](https://jmcaamanog.pages.dev)

TDQS

A4.1/5.0

Scored across 27 tools

Disambiguation4/5

Most tools have clearly distinct purposes, but a few thermal calculation tools (e.g., estimar_envolvente_por_defecto vs. registrar_ensayo_flujometria_termica_in_situ) and certificate generation tools (calcular_calificacion_energetica vs. generar_certificado_completo vs. certificar_desde_carpeta_visita) could cause some initial confusion despite cross-references.

Naming Consistency5/5

All tool names use Spanish snake_case with a consistent verb_noun pattern (e.g., consultar_catastro, calcular_calificacion_energetica, registrar_ensayo...). Minor variation in 'certificar_desde_carpeta_visita' does not break consistency.

Tool Count3/5

27 tools is on the heavy side; while the domain is complex and each tool is specialized, several could be consolidated (e.g., shading calculations, BIM/PDF analysis, certificate generation paths). This may increase selection burden.

Completeness5/5

The toolset covers the full CE3X certification lifecycle: data capture (Catastro, BIM, PDF, equipment), thermal and regulatory calculations (climate, envelope, bridges, shading, PV, ACS, tertiary), document generation, workflow management, and cache maintenance. No obvious critical gaps.

Maintenance

ActivityNo data
ResponsivenessSyncing