local-only server
The server can only run on the client’s local machine because it depends on local resources.
Integrations
Enables interaction with Ansible collections and modules, supporting operations like retrieving collection information, listing modules, checking version compatibility, and adding or updating collection and module definitions with schema validation.
Uses SQLite as the persistent storage backend for Infrastructure-as-Code components, allowing configuration through the DATABASE_URL environment variable.
Provides tools for managing Terraform providers and resources, including retrieving provider information, listing resources, checking version compatibility, and adding or updating provider and resource definitions with schema validation.
Servidor MCP de memoria IaC
Un servidor de Protocolo de Contexto de Modelo (MCP) que mejora las capacidades de Claude AI al proporcionar almacenamiento de memoria persistente para componentes de Infraestructura como Código (IaC), con un enfoque en el seguimiento de versiones y el mapeo de relaciones para los recursos de Terraform y Ansible.
[!NOTA]
Este fue un proyecto personal para determinar el estado de la capacidad de la IA si quien la usa (yo) no tiene experiencia en la materia (falta de conocimientos de Python). Dado que su costo se ha vuelto prohibitivo, no tengo intención de seguir desarrollando ni manteniendo este proyecto.
Descripción general
El servidor MCP de memoria IaC aborda el desafío de mantener un contexto preciso y con reconocimiento de versiones para los componentes IaC al proporcionar:
- Almacenamiento persistente y seguimiento de versiones para componentes IaC
- Organización jerárquica de recursos con acceso basado en URI
- Mapeo completo de relaciones entre componentes
- Gestión de documentación específica de la versión
- Validación de esquemas y seguimiento de metadatos temporales
- Análisis y perspectivas automatizadas de relaciones
Componentes principales
Gestión de recursos
El servidor implementa un sofisticado sistema de gestión de recursos con URI jerárquicos:
Estructura de URI de recursos
Plataformas compatibles:
- terraformar
- ansible
- iac (para entidades de infraestructura general)
Ejemplos de URI:
Plantillas de recursos
El servidor proporciona plantillas de recursos dinámicos para patrones de acceso estandarizados:
- Información del proveedor de Terraform:
resources://terraform/providers/{provider_name}
- Detalles del tipo de recurso:
resources://terraform/resources/{provider_name}/{resource_type}
- Datos de recopilación de Ansible:
resources://ansible/collections/{collection_name}
- Información del módulo:
resources://ansible/modules/{collection_name}/{module_name}
Indicaciones
El servidor implementa cuatro indicaciones especializadas para el descubrimiento y análisis de componentes IaC:
recursos de búsqueda
- Propósito: Buscar recursos de IaC
- Argumentos:
provider
: Nombre del proveedorresource_type
: Tipo de recurso
- Devoluciones: Información sobre recursos específicos para el proveedor dado
analizar_entidad
- Propósito: Analizar una entidad y sus relaciones.
- Argumentos:
entity_id
: ID de entidadinclude_relationships
: Incluir relaciones
- Devoluciones: Análisis detallado de la entidad, incluyendo nombre, tipo y observaciones.
proveedor de terraform
- Propósito: Obtener información sobre un proveedor de Terraform
- Argumentos:
provider_name
: Nombre del proveedor de Terraform (obligatorio)version
: Versión específica a consultar (opcional)
- Devuelve: Información detallada del proveedor para la versión especificada
módulo ansible
- Propósito: Obtener información sobre un módulo de Ansible
- Argumentos:
collection_name
: Nombre de la colección de Ansible (obligatorio)module_name
: Nombre del módulo (obligatorio)version
: Versión específica a consultar (opcional)
- Devuelve: Información detallada del módulo para la versión especificada
Herramientas
El servidor implementa herramientas integrales para la gestión de componentes IaC:
Herramientas de Terraform
get_terraform_provider_info
: recupera información detallada del proveedor, incluyendo la versión y los recursoslist_provider_resources
: enumera todos los recursos disponibles para un proveedor específicoget_terraform_resource_info
: Obtenga información detallada sobre un tipo de recurso específicoadd_terraform_provider
: Registrar nuevos proveedores con control de versionesadd_terraform_resource
: Agregar definiciones de recursos con esquemasupdate_provider_version
: Actualizar las versiones del proveedor con nueva documentación
Herramientas de Ansible
get_ansible_collection_info
: Obtenga información detallada sobre una colección de Ansiblelist_ansible_collections
: enumera todas las colecciones de Ansible disponiblesget_collection_version_history
: Ver el historial de versiones de una colecciónget_ansible_module_info
: Obtener información detallada sobre un módulo específicolist_collection_modules
: enumera todos los módulos de una colecciónget_module_version_compatibility
: Verifica la compatibilidad de versiones de los módulosadd_ansible_collection
: Registrar nuevas colecciones de Ansibleadd_ansible_module
: Agregar nuevos módulos con validación y documentación
Operaciones de la entidad
create_entity
: Crea nuevas entidades de infraestructuraupdate_entity
: Modificar configuraciones de entidades existentesdelete_entity
: Eliminar entidades con limpieza de relacionesview_relationships
: Analizar dependencias y relaciones entre entidades
Configuración
El servidor admite la configuración a través de variables de entorno:
DATABASE_URL
: Ubicación de la base de datos SQLiteMCP_DEBUG
: Habilitar el registro de depuración cuando está configuradoMCP_TEST_MODE
: Habilitar el modo de prueba para restablecimientos de bases de datos
Para el desarrollo, cree un archivo .env
:
Integración con Claude Desktop
Configuración de desarrollo
Configuración de producción
Desarrollo
Desarrollo local
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
You must be authenticated.
Tools
Mejora Claude AI con almacenamiento de memoria persistente para componentes de infraestructura como código, lo que admite el seguimiento de versiones y el mapeo de relaciones para los recursos de Terraform y Ansible.