ce3x-mcp-server 1.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. ce3x_mcp_server-1.3.0/LICENSE +21 -0
  2. ce3x_mcp_server-1.3.0/PKG-INFO +249 -0
  3. ce3x_mcp_server-1.3.0/README.md +215 -0
  4. ce3x_mcp_server-1.3.0/pyproject.toml +62 -0
  5. ce3x_mcp_server-1.3.0/setup.cfg +4 -0
  6. ce3x_mcp_server-1.3.0/src/ce3x_mcp/__init__.py +9 -0
  7. ce3x_mcp_server-1.3.0/src/ce3x_mcp/core/__init__.py +3 -0
  8. ce3x_mcp_server-1.3.0/src/ce3x_mcp/core/models.py +90 -0
  9. ce3x_mcp_server-1.3.0/src/ce3x_mcp/server.py +746 -0
  10. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/__init__.py +3 -0
  11. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/bim_parser.py +129 -0
  12. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/catastro.py +49 -0
  13. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/cex_codec.py +85 -0
  14. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/cte_climate.py +173 -0
  15. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/equipment_parser.py +81 -0
  16. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/improvement_engine.py +79 -0
  17. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/libraries.py +159 -0
  18. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/nextgen_report.py +96 -0
  19. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/pdf_compiler.py +56 -0
  20. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/plan_parser.py +95 -0
  21. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/pvgis_client.py +74 -0
  22. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/smart_folder_auditor.py +644 -0
  23. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/technician_profile.py +67 -0
  24. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/trials_and_tests.py +309 -0
  25. ce3x_mcp_server-1.3.0/src/ce3x_mcp/services/xml_builder.py +96 -0
  26. ce3x_mcp_server-1.3.0/src/ce3x_mcp_server.egg-info/PKG-INFO +249 -0
  27. ce3x_mcp_server-1.3.0/src/ce3x_mcp_server.egg-info/SOURCES.txt +30 -0
  28. ce3x_mcp_server-1.3.0/src/ce3x_mcp_server.egg-info/dependency_links.txt +1 -0
  29. ce3x_mcp_server-1.3.0/src/ce3x_mcp_server.egg-info/entry_points.txt +3 -0
  30. ce3x_mcp_server-1.3.0/src/ce3x_mcp_server.egg-info/requires.txt +15 -0
  31. ce3x_mcp_server-1.3.0/src/ce3x_mcp_server.egg-info/top_level.txt +1 -0
  32. ce3x_mcp_server-1.3.0/tests/test_ce3x_mcp.py +225 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Jose Manuel Caamaño González
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,249 @@
1
+ Metadata-Version: 2.4
2
+ Name: ce3x-mcp-server
3
+ Version: 1.3.0
4
+ Summary: Servidor MCP Oficial para Certificación de Eficiencia Energética de Edificios (CE3X / CTE DB-HE / RD 390/2021)
5
+ Author-email: Jose Manuel Caamaño González <jmc@example.com>
6
+ License: MIT
7
+ Keywords: mcp,model-context-protocol,ce3x,eficiencia-energetica,cte-db-he,contech,bim,certificacion-energetica,typst
8
+ Classifier: Development Status :: 4 - Beta
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Intended Audience :: End Users/Desktop
11
+ Classifier: Topic :: Scientific/Engineering
12
+ Classifier: License :: OSI Approved :: MIT License
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Requires-Python: >=3.10
18
+ Description-Content-Type: text/markdown
19
+ License-File: LICENSE
20
+ Requires-Dist: fastmcp>=0.4.0
21
+ Requires-Dist: pydantic>=2.6.0
22
+ Requires-Dist: lxml>=5.1.0
23
+ Requires-Dist: requests>=2.31.0
24
+ Requires-Dist: pymupdf>=1.24.0
25
+ Requires-Dist: shapely>=2.0.0
26
+ Requires-Dist: rich>=13.7.0
27
+ Provides-Extra: dev
28
+ Requires-Dist: pytest>=8.0.0; extra == "dev"
29
+ Requires-Dist: black>=24.0.0; extra == "dev"
30
+ Requires-Dist: ruff>=0.3.0; extra == "dev"
31
+ Provides-Extra: bim
32
+ Requires-Dist: ifcopenshell>=0.7.0; extra == "bim"
33
+ Dynamic: license-file
34
+
35
+ # 🏢 CE3X-MCP-Server (Certificación Energética con IA & FastMCP)
36
+
37
+ | 🏗️ Perfil & ConTech | 📈 Repositorio & Enlaces |
38
+ | :--- | :--- |
39
+ | ![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) | [![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> [![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) |
40
+
41
+ ### Servidor MCP Oficial para Automatizar Certificados de Eficiencia Energética con IA (Claude, Gemini, Cursor)
42
+ *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.*
43
+
44
+ ---
45
+
46
+ ## ⚡ Enlaces y Accesos Rápidos
47
+
48
+ | 🌟 Recurso | 🚀 Acción / Enlace | 📝 Descripción |
49
+ | :--- | :--- | :--- |
50
+ | **Estructura de Visita** | 📁 **[Ver Guía 5 Carpetas](./docs/ESTRUCTURA_CARPETA_VISITA.md)** | Arquitectura canónica para organizar fotos, planos, notas y certificados. |
51
+ | **Estudio de Conectores** | 🌐 **[Ver Estudio Integral de 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. |
52
+ | **Documento de Análisis** | 📄 **[Ver Análisis CE3X & MCP](./docs/analisis_ce3x_mcp_framework.md)** | Análisis exhaustivo del software, manuales técnicos y arquitectura modular. |
53
+ | **Plantilla de Campo** | 📋 **[Ver Plantilla de Toma de Datos](./docs/PLANTILLA_TOMA_DATOS_CEE.md)** | Formulario estructurado para visitas de campo y dictado por voz. |
54
+ | **Guía para tu IA** | 🧠 **[Ver Instrucciones para la IA](./docs/GUIA_PROMPTS_Y_INSTRUCCIONES_IA.md)** | System prompts y protocolo de primer contacto para Claude, Gemini y Cursor. |
55
+ | **Historial de Versiones** | 📜 **[Ver Changelog](./CHANGELOG.md)** | Registro detallado de versiones y mejoras implementadas. |
56
+ | **Código de Conducta** | 🤝 **[Ver Código de Conducta](./CODE_OF_CONDUCT.md)** | El manual del buen rollo y convivencia comunitaria. |
57
+ | **Guía de Contribución** | 🛠️ **[Ver Cómo Contribuir](./CONTRIBUTING.md)** | Pautas para reportar bugs, proponer ideas y enviar Pull Requests. |
58
+ | **Seguridad** | 🛡️ **[Ver Política de Seguridad](./SECURITY.md)** | Divulgación responsable y reporte de vulnerabilidades. |
59
+ | **Repositorio GitHub** | 💻 **[GitHub jmcaamanog](https://github.com/jmcaamanog/CE3X-MCP-Server)** | Código fuente, issues y lanzamientos oficiales. |
60
+
61
+ ---
62
+
63
+ ## 👥 Perfiles y Modos de Uso para Cualquier Profesional
64
+
65
+ | Perfil / Modo | Icono | Descripción del Flujo | Entrada Requerida | Entregables Generados |
66
+ | :--- | :---: | :--- | :--- | :--- |
67
+ | **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**. |
68
+ | **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). |
69
+ | **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)**. |
70
+
71
+ ---
72
+
73
+ ## 🚀 Guía Rápida para Usuarios Noveles (Empieza en 3 Pasos)
74
+
75
+ > [!IMPORTANT] 📥
76
+ > ### 🎯 ¿No quieres lidiar con consolas, comandos ni archivos JSON?
77
+ > Sigue estos 3 pasos inmediatos para tener la herramienta funcionando en 1 minuto:
78
+ >
79
+ > 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.
80
+ > 2. **Abre Claude Desktop o Cursor:** El servidor `ce3x` aparecerá conectado y listo para usar con sus **22 herramientas oficiales**.
81
+ > 3. **Escribe en el chat:**
82
+ > > *"Certifica la vivienda de la carpeta `ejemplos/visita_vivienda_ejemplo`"*
83
+ > *(Verás cómo la IA organiza las fotos, planos y notas, y genera la carpeta `CERTIFICADO/` con los archivos oficiales).*
84
+ >
85
+ > ---
86
+ >
87
+ > 📦 **¿Prefieres usar PyPI / `uvx` directamente sin clonar nada?**
88
+ > Copia estas 4 líneas en tu archivo de configuración de Claude Desktop o Cursor:
89
+ > ```json
90
+ > "ce3x": {
91
+ > "command": "uvx",
92
+ > "args": ["ce3x-mcp"]
93
+ > }
94
+ > ```
95
+
96
+ ---
97
+
98
+ ## 🔌 Configuración Inmediata en Clientes de IA
99
+
100
+ ### 1. Claude Desktop (`claude_desktop_config.json`)
101
+ 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:
102
+
103
+ ```json
104
+ {
105
+ "mcpServers": {
106
+ "ce3x": {
107
+ "command": "uvx",
108
+ "args": [
109
+ "--from",
110
+ "git+https://github.com/jmcaamanog/CE3X-MCP-Server.git",
111
+ "ce3x-mcp"
112
+ ]
113
+ }
114
+ }
115
+ }
116
+ ```
117
+
118
+ ### 2. Cursor IDE (`.cursor/mcp.json` o Settings > MCP)
119
+ En Cursor, ve a **Features > MCP Servers** o añade en tu archivo `.cursor/mcp.json`:
120
+
121
+ ```json
122
+ {
123
+ "mcpServers": {
124
+ "ce3x": {
125
+ "command": "uvx",
126
+ "args": [
127
+ "--from",
128
+ "git+https://github.com/jmcaamanog/CE3X-MCP-Server.git",
129
+ "ce3x-mcp"
130
+ ]
131
+ }
132
+ }
133
+ }
134
+ ```
135
+
136
+ ### 3. Antigravity IDE / Gemini (`~/.gemini/config/mcp_config.json`)
137
+ ```json
138
+ {
139
+ "mcpServers": {
140
+ "ce3x": {
141
+ "command": "uvx",
142
+ "args": [
143
+ "--from",
144
+ "git+https://github.com/jmcaamanog/CE3X-MCP-Server.git",
145
+ "ce3x-mcp"
146
+ ]
147
+ }
148
+ }
149
+ }
150
+ ```
151
+
152
+ ### 4. Instalación Local para Desarrollo (Opcional con `pip`)
153
+ Si prefieres tener el repositorio clonado y trabajar en local:
154
+
155
+ ```bash
156
+ git clone https://github.com/jmcaamanog/CE3X-MCP-Server.git
157
+ cd CE3X-MCP-Server
158
+ python -m venv .venv
159
+ .venv\Scripts\activate
160
+ pip install -e .
161
+ ```
162
+
163
+ Y en tu archivo de configuración MCP indicas el intérprete local:
164
+
165
+ ```json
166
+ {
167
+ "mcpServers": {
168
+ "ce3x": {
169
+ "command": "C:\\ruta\\al\\repositorio\\.venv\\Scripts\\python.exe",
170
+ "args": [
171
+ "-I",
172
+ "-m",
173
+ "ce3x_mcp.server"
174
+ ],
175
+ "env": {
176
+ "PYTHONPATH": "C:\\ruta\\al\\repositorio\\src"
177
+ }
178
+ }
179
+ }
180
+ }
181
+ ```
182
+
183
+ ---
184
+
185
+ ## 🌟 Características Principales (ConTech & AI Cert)
186
+
187
+ | Módulo | Icono | Funcionalidades Destacadas |
188
+ | :--- | :---: | :--- |
189
+ | **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. |
190
+ | **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). |
191
+ | **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. |
192
+ | **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. |
193
+ | **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. |
194
+ | **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. |
195
+ | **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**. |
196
+
197
+ ---
198
+
199
+ ## 🛠️ Catálogo Completo de 22 Herramientas MCP Disponibles
200
+
201
+ El servidor implementa el mapeo total y exhaustivo de CE3X v3.2, manuales técnicos y normativas oficiales:
202
+
203
+ ### 🏛️ Datos Administrativos, Catastro y Clima
204
+ 1. `consultar_catastro(referencia_catastral)`: Ingesta telemática en tiempo real desde la Sede Electrónica de Catastro.
205
+ 2. `determinar_zona_climatica(provincia, municipio, altitud)`: Clima oficial de referencia CTE DB-HE con corrección por cota.
206
+ 3. `registrar_visita_presencial(fecha_visita, pruebas, observaciones)`: Registro formal in situ para el Anexo IV obligatorio (RD 390/2021 Art. 8).
207
+
208
+ ### 📐 Envolvente Térmica, BIM y Planos
209
+ 4. `estimar_envolvente_por_defecto(ano_construccion, zona, superficie)`: Transmitancias U históricas (Pre-79, NBE-CT-79, CTE).
210
+ 5. `analizar_modelo_bim_ifc(ifc_path)`: Cubicación paramétrica de muros, cubiertas y huecos desde modelos IFC (IfcOpenShell).
211
+ 6. `analizar_plano_arquitectura_pdf(pdf_path)`: Extracción inteligente de superficies y carpinterías desde planos en PDF.
212
+ 7. `calcular_puentes_termicos(ano, perimetro_forjado, perimetro_huecos, pilares)`: Transmitancias lineales psi (W/m·K) según DA DB-HE / 3.
213
+
214
+ ### ⚙️ Instalaciones, Equipos y Renovables
215
+ 8. `analizar_ficha_equipo_clima(texto_o_ficha)`: Lectura de bombas de calor, calderas, potencias y SCOP/COP.
216
+ 9. `calcular_produccion_fotovoltaica_pvgis(lat, lon, kwp)`: Simulación satelital en tiempo real con datos de la Comisión Europea.
217
+
218
+ ### 🧪 Ensayos Oficiales y Contraste de Consumos
219
+ 10. `registrar_ensayo_estanqueidad_blower_door(volumen, superficie, caudal_50pa)`: Ensayo Blower Door (UNE-EN ISO 9972) con cálculo de n50 y q50.
220
+ 11. `contrastar_consumo_facturas_reales(consumo_teorico, electricidad, gas, gasoleo)`: Contraste de facturación real vs modelo normativo.
221
+
222
+ ### 💡 Rehabilitación y Subvenciones Públicas
223
+ 12. `proponer_medidas_mejora_rd390(...)`: Generación de paquetes de envolvente, equipos e hibridación con fotovoltaica.
224
+ 13. `emitir_dictamen_subvenciones_nextgen(...)`: Dictamen técnico oficial con tramos del 40%, 65%, 80% (RD 853/2021) e IRPF.
225
+
226
+ ### 📐 Envolvente, Sombras y Terciario
227
+ 14. `calcular_sombras_hueco(orientacion, ancho, alto, retranqueo, voladizo, toldo)`: Factor solar estacional F_sh para huecos según CTE DB-HE.
228
+ 15. `calcular_sombras_obstaculo_edificio_enfrente(distancia, altura, orientacion)`: Ángulo alfa y factor de sombra por edificio enfrente / obstáculo remoto.
229
+ 16. `calcular_parametros_terciario_local_comercial(tipo, m2, luminarias)`: Potencia de iluminación W/m², VEEI según DB-HE 3 y caudal RITE.
230
+ 17. `configurar_perfil_tecnico_colegiado(nombre, nif, titulacion, colegio)`: Registro persistente de la firma y credenciales del técnico.
231
+
232
+ ### 📂 Gestión Integral de Carpeta de Visita y Entregables
233
+ 18. `organizar_carpeta_visita(ruta_carpeta)`: Auto-organizador inteligente en 5 carpetas (INFORMACION, PLANOS, FOTOS, INSTALACIONES, CERTIFICADO).
234
+ 19. `auditar_carpeta_visita(ruta_carpeta)`: Escaneo autónomo multimodal de la visita y generación de preguntas quirúrgicas.
235
+ 20. `certificar_desde_carpeta_visita(ruta_carpeta, ...)`: Ciclo completo que genera todos los entregables en `CERTIFICADO/`.
236
+ 21. `calcular_calificacion_energetica(proyecto)`: Motor de cálculo simplificado de demandas, consumos y emisiones.
237
+ 22. `generar_certificado_completo(...)`: Pipeline integral que emite el `.cex` nativo, XML oficial v3.0 y PDF de 15 páginas.
238
+
239
+ ---
240
+
241
+
242
+
243
+ ## 👨‍💻 Autor y Dirección Técnica
244
+
245
+ **Jose Manuel Caamaño González** | Arquitecto Técnico & BIM Manager
246
+ Digital Product Lead | ConTech & Digital Twin SaaS | Data Analytics (SQL, Power BI)
247
+
248
+ Hecho con código y café desde A Coruña. ☕
249
+ [LinkedIn](https://www.linkedin.com/in/jmcaamanog/) · [Web](https://jmcaamanog.pages.dev)
@@ -0,0 +1,215 @@
1
+ # 🏢 CE3X-MCP-Server (Certificación Energética con IA & FastMCP)
2
+
3
+ | 🏗️ Perfil & ConTech | 📈 Repositorio & Enlaces |
4
+ | :--- | :--- |
5
+ | ![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) | [![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> [![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) |
6
+
7
+ ### Servidor MCP Oficial para Automatizar Certificados de Eficiencia Energética con IA (Claude, Gemini, Cursor)
8
+ *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.*
9
+
10
+ ---
11
+
12
+ ## ⚡ Enlaces y Accesos Rápidos
13
+
14
+ | 🌟 Recurso | 🚀 Acción / Enlace | 📝 Descripción |
15
+ | :--- | :--- | :--- |
16
+ | **Estructura de Visita** | 📁 **[Ver Guía 5 Carpetas](./docs/ESTRUCTURA_CARPETA_VISITA.md)** | Arquitectura canónica para organizar fotos, planos, notas y certificados. |
17
+ | **Estudio de Conectores** | 🌐 **[Ver Estudio Integral de 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. |
18
+ | **Documento de Análisis** | 📄 **[Ver Análisis CE3X & MCP](./docs/analisis_ce3x_mcp_framework.md)** | Análisis exhaustivo del software, manuales técnicos y arquitectura modular. |
19
+ | **Plantilla de Campo** | 📋 **[Ver Plantilla de Toma de Datos](./docs/PLANTILLA_TOMA_DATOS_CEE.md)** | Formulario estructurado para visitas de campo y dictado por voz. |
20
+ | **Guía para tu IA** | 🧠 **[Ver Instrucciones para la IA](./docs/GUIA_PROMPTS_Y_INSTRUCCIONES_IA.md)** | System prompts y protocolo de primer contacto para Claude, Gemini y Cursor. |
21
+ | **Historial de Versiones** | 📜 **[Ver Changelog](./CHANGELOG.md)** | Registro detallado de versiones y mejoras implementadas. |
22
+ | **Código de Conducta** | 🤝 **[Ver Código de Conducta](./CODE_OF_CONDUCT.md)** | El manual del buen rollo y convivencia comunitaria. |
23
+ | **Guía de Contribución** | 🛠️ **[Ver Cómo Contribuir](./CONTRIBUTING.md)** | Pautas para reportar bugs, proponer ideas y enviar Pull Requests. |
24
+ | **Seguridad** | 🛡️ **[Ver Política de Seguridad](./SECURITY.md)** | Divulgación responsable y reporte de vulnerabilidades. |
25
+ | **Repositorio GitHub** | 💻 **[GitHub jmcaamanog](https://github.com/jmcaamanog/CE3X-MCP-Server)** | Código fuente, issues y lanzamientos oficiales. |
26
+
27
+ ---
28
+
29
+ ## 👥 Perfiles y Modos de Uso para Cualquier Profesional
30
+
31
+ | Perfil / Modo | Icono | Descripción del Flujo | Entrada Requerida | Entregables Generados |
32
+ | :--- | :---: | :--- | :--- | :--- |
33
+ | **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**. |
34
+ | **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). |
35
+ | **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)**. |
36
+
37
+ ---
38
+
39
+ ## 🚀 Guía Rápida para Usuarios Noveles (Empieza en 3 Pasos)
40
+
41
+ > [!IMPORTANT] 📥
42
+ > ### 🎯 ¿No quieres lidiar con consolas, comandos ni archivos JSON?
43
+ > Sigue estos 3 pasos inmediatos para tener la herramienta funcionando en 1 minuto:
44
+ >
45
+ > 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.
46
+ > 2. **Abre Claude Desktop o Cursor:** El servidor `ce3x` aparecerá conectado y listo para usar con sus **22 herramientas oficiales**.
47
+ > 3. **Escribe en el chat:**
48
+ > > *"Certifica la vivienda de la carpeta `ejemplos/visita_vivienda_ejemplo`"*
49
+ > *(Verás cómo la IA organiza las fotos, planos y notas, y genera la carpeta `CERTIFICADO/` con los archivos oficiales).*
50
+ >
51
+ > ---
52
+ >
53
+ > 📦 **¿Prefieres usar PyPI / `uvx` directamente sin clonar nada?**
54
+ > Copia estas 4 líneas en tu archivo de configuración de Claude Desktop o Cursor:
55
+ > ```json
56
+ > "ce3x": {
57
+ > "command": "uvx",
58
+ > "args": ["ce3x-mcp"]
59
+ > }
60
+ > ```
61
+
62
+ ---
63
+
64
+ ## 🔌 Configuración Inmediata en Clientes de IA
65
+
66
+ ### 1. Claude Desktop (`claude_desktop_config.json`)
67
+ 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:
68
+
69
+ ```json
70
+ {
71
+ "mcpServers": {
72
+ "ce3x": {
73
+ "command": "uvx",
74
+ "args": [
75
+ "--from",
76
+ "git+https://github.com/jmcaamanog/CE3X-MCP-Server.git",
77
+ "ce3x-mcp"
78
+ ]
79
+ }
80
+ }
81
+ }
82
+ ```
83
+
84
+ ### 2. Cursor IDE (`.cursor/mcp.json` o Settings > MCP)
85
+ En Cursor, ve a **Features > MCP Servers** o añade en tu archivo `.cursor/mcp.json`:
86
+
87
+ ```json
88
+ {
89
+ "mcpServers": {
90
+ "ce3x": {
91
+ "command": "uvx",
92
+ "args": [
93
+ "--from",
94
+ "git+https://github.com/jmcaamanog/CE3X-MCP-Server.git",
95
+ "ce3x-mcp"
96
+ ]
97
+ }
98
+ }
99
+ }
100
+ ```
101
+
102
+ ### 3. Antigravity IDE / Gemini (`~/.gemini/config/mcp_config.json`)
103
+ ```json
104
+ {
105
+ "mcpServers": {
106
+ "ce3x": {
107
+ "command": "uvx",
108
+ "args": [
109
+ "--from",
110
+ "git+https://github.com/jmcaamanog/CE3X-MCP-Server.git",
111
+ "ce3x-mcp"
112
+ ]
113
+ }
114
+ }
115
+ }
116
+ ```
117
+
118
+ ### 4. Instalación Local para Desarrollo (Opcional con `pip`)
119
+ Si prefieres tener el repositorio clonado y trabajar en local:
120
+
121
+ ```bash
122
+ git clone https://github.com/jmcaamanog/CE3X-MCP-Server.git
123
+ cd CE3X-MCP-Server
124
+ python -m venv .venv
125
+ .venv\Scripts\activate
126
+ pip install -e .
127
+ ```
128
+
129
+ Y en tu archivo de configuración MCP indicas el intérprete local:
130
+
131
+ ```json
132
+ {
133
+ "mcpServers": {
134
+ "ce3x": {
135
+ "command": "C:\\ruta\\al\\repositorio\\.venv\\Scripts\\python.exe",
136
+ "args": [
137
+ "-I",
138
+ "-m",
139
+ "ce3x_mcp.server"
140
+ ],
141
+ "env": {
142
+ "PYTHONPATH": "C:\\ruta\\al\\repositorio\\src"
143
+ }
144
+ }
145
+ }
146
+ }
147
+ ```
148
+
149
+ ---
150
+
151
+ ## 🌟 Características Principales (ConTech & AI Cert)
152
+
153
+ | Módulo | Icono | Funcionalidades Destacadas |
154
+ | :--- | :---: | :--- |
155
+ | **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. |
156
+ | **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). |
157
+ | **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. |
158
+ | **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. |
159
+ | **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. |
160
+ | **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. |
161
+ | **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**. |
162
+
163
+ ---
164
+
165
+ ## 🛠️ Catálogo Completo de 22 Herramientas MCP Disponibles
166
+
167
+ El servidor implementa el mapeo total y exhaustivo de CE3X v3.2, manuales técnicos y normativas oficiales:
168
+
169
+ ### 🏛️ Datos Administrativos, Catastro y Clima
170
+ 1. `consultar_catastro(referencia_catastral)`: Ingesta telemática en tiempo real desde la Sede Electrónica de Catastro.
171
+ 2. `determinar_zona_climatica(provincia, municipio, altitud)`: Clima oficial de referencia CTE DB-HE con corrección por cota.
172
+ 3. `registrar_visita_presencial(fecha_visita, pruebas, observaciones)`: Registro formal in situ para el Anexo IV obligatorio (RD 390/2021 Art. 8).
173
+
174
+ ### 📐 Envolvente Térmica, BIM y Planos
175
+ 4. `estimar_envolvente_por_defecto(ano_construccion, zona, superficie)`: Transmitancias U históricas (Pre-79, NBE-CT-79, CTE).
176
+ 5. `analizar_modelo_bim_ifc(ifc_path)`: Cubicación paramétrica de muros, cubiertas y huecos desde modelos IFC (IfcOpenShell).
177
+ 6. `analizar_plano_arquitectura_pdf(pdf_path)`: Extracción inteligente de superficies y carpinterías desde planos en PDF.
178
+ 7. `calcular_puentes_termicos(ano, perimetro_forjado, perimetro_huecos, pilares)`: Transmitancias lineales psi (W/m·K) según DA DB-HE / 3.
179
+
180
+ ### ⚙️ Instalaciones, Equipos y Renovables
181
+ 8. `analizar_ficha_equipo_clima(texto_o_ficha)`: Lectura de bombas de calor, calderas, potencias y SCOP/COP.
182
+ 9. `calcular_produccion_fotovoltaica_pvgis(lat, lon, kwp)`: Simulación satelital en tiempo real con datos de la Comisión Europea.
183
+
184
+ ### 🧪 Ensayos Oficiales y Contraste de Consumos
185
+ 10. `registrar_ensayo_estanqueidad_blower_door(volumen, superficie, caudal_50pa)`: Ensayo Blower Door (UNE-EN ISO 9972) con cálculo de n50 y q50.
186
+ 11. `contrastar_consumo_facturas_reales(consumo_teorico, electricidad, gas, gasoleo)`: Contraste de facturación real vs modelo normativo.
187
+
188
+ ### 💡 Rehabilitación y Subvenciones Públicas
189
+ 12. `proponer_medidas_mejora_rd390(...)`: Generación de paquetes de envolvente, equipos e hibridación con fotovoltaica.
190
+ 13. `emitir_dictamen_subvenciones_nextgen(...)`: Dictamen técnico oficial con tramos del 40%, 65%, 80% (RD 853/2021) e IRPF.
191
+
192
+ ### 📐 Envolvente, Sombras y Terciario
193
+ 14. `calcular_sombras_hueco(orientacion, ancho, alto, retranqueo, voladizo, toldo)`: Factor solar estacional F_sh para huecos según CTE DB-HE.
194
+ 15. `calcular_sombras_obstaculo_edificio_enfrente(distancia, altura, orientacion)`: Ángulo alfa y factor de sombra por edificio enfrente / obstáculo remoto.
195
+ 16. `calcular_parametros_terciario_local_comercial(tipo, m2, luminarias)`: Potencia de iluminación W/m², VEEI según DB-HE 3 y caudal RITE.
196
+ 17. `configurar_perfil_tecnico_colegiado(nombre, nif, titulacion, colegio)`: Registro persistente de la firma y credenciales del técnico.
197
+
198
+ ### 📂 Gestión Integral de Carpeta de Visita y Entregables
199
+ 18. `organizar_carpeta_visita(ruta_carpeta)`: Auto-organizador inteligente en 5 carpetas (INFORMACION, PLANOS, FOTOS, INSTALACIONES, CERTIFICADO).
200
+ 19. `auditar_carpeta_visita(ruta_carpeta)`: Escaneo autónomo multimodal de la visita y generación de preguntas quirúrgicas.
201
+ 20. `certificar_desde_carpeta_visita(ruta_carpeta, ...)`: Ciclo completo que genera todos los entregables en `CERTIFICADO/`.
202
+ 21. `calcular_calificacion_energetica(proyecto)`: Motor de cálculo simplificado de demandas, consumos y emisiones.
203
+ 22. `generar_certificado_completo(...)`: Pipeline integral que emite el `.cex` nativo, XML oficial v3.0 y PDF de 15 páginas.
204
+
205
+ ---
206
+
207
+
208
+
209
+ ## 👨‍💻 Autor y Dirección Técnica
210
+
211
+ **Jose Manuel Caamaño González** | Arquitecto Técnico & BIM Manager
212
+ Digital Product Lead | ConTech & Digital Twin SaaS | Data Analytics (SQL, Power BI)
213
+
214
+ Hecho con código y café desde A Coruña. ☕
215
+ [LinkedIn](https://www.linkedin.com/in/jmcaamanog/) · [Web](https://jmcaamanog.pages.dev)
@@ -0,0 +1,62 @@
1
+ [build-system]
2
+ requires = ["setuptools>=61.0", "wheel"]
3
+ build-backend = "setuptools.build_meta"
4
+
5
+ [project]
6
+ name = "ce3x-mcp-server"
7
+ version = "1.3.0"
8
+ description = "Servidor MCP Oficial para Certificación de Eficiencia Energética de Edificios (CE3X / CTE DB-HE / RD 390/2021)"
9
+ readme = "README.md"
10
+ requires-python = ">=3.10"
11
+ license = { text = "MIT" }
12
+ authors = [
13
+ { name = "Jose Manuel Caamaño González", email = "jmc@example.com" }
14
+ ]
15
+ keywords = [
16
+ "mcp",
17
+ "model-context-protocol",
18
+ "ce3x",
19
+ "eficiencia-energetica",
20
+ "cte-db-he",
21
+ "contech",
22
+ "bim",
23
+ "certificacion-energetica",
24
+ "typst"
25
+ ]
26
+ classifiers = [
27
+ "Development Status :: 4 - Beta",
28
+ "Intended Audience :: Developers",
29
+ "Intended Audience :: End Users/Desktop",
30
+ "Topic :: Scientific/Engineering",
31
+ "License :: OSI Approved :: MIT License",
32
+ "Programming Language :: Python :: 3",
33
+ "Programming Language :: Python :: 3.10",
34
+ "Programming Language :: Python :: 3.11",
35
+ "Programming Language :: Python :: 3.12",
36
+ ]
37
+ dependencies = [
38
+ "fastmcp>=0.4.0",
39
+ "pydantic>=2.6.0",
40
+ "lxml>=5.1.0",
41
+ "requests>=2.31.0",
42
+ "pymupdf>=1.24.0",
43
+ "shapely>=2.0.0",
44
+ "rich>=13.7.0"
45
+ ]
46
+
47
+ [project.optional-dependencies]
48
+ dev = [
49
+ "pytest>=8.0.0",
50
+ "black>=24.0.0",
51
+ "ruff>=0.3.0"
52
+ ]
53
+ bim = [
54
+ "ifcopenshell>=0.7.0"
55
+ ]
56
+
57
+ [project.scripts]
58
+ ce3x-mcp = "ce3x_mcp.server:main"
59
+ ce3x-mcp-server = "ce3x_mcp.server:main"
60
+
61
+ [tool.setuptools.packages.find]
62
+ where = ["src"]
@@ -0,0 +1,4 @@
1
+ [egg_info]
2
+ tag_build =
3
+ tag_date = 0
4
+
@@ -0,0 +1,9 @@
1
+ """
2
+ CE3X-MCP-Server: Servidor MCP Oficial para Certificación Energética de Edificios.
3
+ Automatización de certificados oficiales CE3X, CTE DB-HE y RD 390/2021.
4
+ """
5
+
6
+ __version__ = "0.1.0"
7
+ __author__ = "Jose Manuel Caamaño González"
8
+
9
+