Universal Architecture Context MCP Server
# 🧭 Universal Architecture Context MCP Server
Un servidor **Model Context Protocol (MCP)** ligero, dinámico y totalmente universal. Está diseñado para mapear y transmitir la estructura de arquitectura de cualquier proyecto de software a asistentes de IA (como **OpenCode**), reduciendo hasta un **90% el consumo de tokens** al evitar la exploración recursiva e individual de archivos.
---
## ⚡ Características
- 🧠 **Agnóstico y Universal:** Compatible con Symfony, React, Node, Go, Rust, Python, Java, C#, etc.
- 🏢 **Autodetección de Arquitectura:** Reconoce automáticamente si el repositorio es un **monolito** o un **monorepo/multiproyecto** (ej. `proyect-api` y `proyect-front`).
- 📂 **Clasificación Dinámica:** Inspecciona el directorio de código fuente (`src`, `app`, `lib`, `pkg`) y agrupa los archivos según su carpeta de primer nivel (componentes, controladores, entidades, hooks, utils, etc.).
- 🪟 **Cross-Platform:** Soporte nativo y normalización de rutas para Windows, macOS y Linux.
---
## 🛠️ Herramientas MCP Expuestas
| Herramienta | Parámetros | Descripción |
| :--- | :--- | :--- |
| `list_modules` | Ninguno | Devuelve el tipo de arquitectura detectada (monolito o multiproyecto) y la lista de módulos/subproyectos encontrados. |
| `get_project_structure` | `module` *(Opcional)* | Devuelve la estructura dinámica de carpetas y archivos. Si no se indica `module`, analiza todo el repositorio. |
---
## 🚀 Instalación y Compilación
1. **Clonar/Ubicar el repositorio en tu proyecto:**
```bash
cd mcp-architecture-contextTDQS
Scored across 2 tools
Only two tools with clearly distinct purposes: one lists modules and their architecture types, the other returns file/folder structure. No overlap in functionality.
Both tool names follow a consistent verb_noun pattern: list_modules and get_project_structure. The verbs (list, get) and nouns (modules, project_structure) are clear and predictable.
With only 2 tools, the server feels thin for a domain as broad as 'Universal Architecture Context'. While each tool is useful, the set is borderline minimal and might benefit from additional tools like get_module_details or get_dependencies.
The two tools cover basic inspection (modules and structure) but miss significant aspects of architecture analysis such as dependency graphs, architectural pattern detection, or per-module configuration details. For a server claiming 'Universal Architecture Context', the surface is notably incomplete.