Terragrunt-Docs
Documentación de Terragrunt siempre actualizada.
Documentación
Servidor MCP: Proveedor de Documentación de Terragrunt
Un servidor Model Context Protocol (MCP) construido con Deno y TypeScript, diseñado para proporcionar información contextual relacionada con Terragrunt.
Resumen
Este servidor actúa como un proveedor de MCP, exponiendo herramientas y recursos que permiten a agentes de IA u otros clientes MCP consultar información sobre la documentación de Terragrunt e información de desarrollo, como problemas de GitHub.
- Mira una demo realista 📺 en Claude Desktop aquí
¿Por qué?
Al escribir configuraciones de IaC, principalmente en terragrunt, el soporte del IDE no es muy bueno; en VSCode el plugin de terraform es bueno, pero no para terragrunt; no reconoce los bloques de terragrunt y no proporciona autocompletado. Al interactuar con el autocompletado de IA, es común obtener resultados incorrectos o errores de linting falsos positivos. Con este servidor MCP, puedes proporcionar a tu asistente de LLM/IA la documentación y los problemas más recientes del repositorio de GitHub de Terragrunt, para que pueda usarlos y brindarte la información más precisa.
Herramientas
Nota: Todas las herramientas requieren un token de GitHub válido configurado como variable de entorno:
GITHUB_TOKEN,GH_TOKEN, oGITHUB_PERSONAL_ACCESS_TOKEN.
| Nombre de la herramienta | Propósito | Entradas | Salidas | Caso de uso |
|---|---|---|---|---|
list-doc-categories | Recuperar todas las categorías de documentación de Terragrunt. | Ninguna | Arreglo de objetos con propiedades name (string) y link (string) | Úsalo cuando necesites explorar la estructura de documentación disponible o al construir un sistema de navegación de documentación. Esta es típicamente la primera herramienta a llamar al comenzar a trabajar con la documentación de Terragrunt. |
list-all-docs-by-category | Listar todos los documentos en una categoría específica. | category (string) | Arreglo de objetos con name (string), link (string) y content (string) | Úsalo cuando necesites ver toda la documentación disponible dentro de una categoría específica, como al construir un visor de documentación específico de una categoría o cuando necesites revisar todos los documentos en un área particular. |
read-document-from-category | Leer un documento específico de una categoría. | category (string), document (string) | Objeto que contiene content (string) con el contenido completo de markdown | Úsalo cuando necesites acceder al contenido completo de un documento específico, como al implementar búsqueda de documentación o cuando necesites hacer referencia a documentación específica en tu aplicación. |
read-all-docs-from-category | Recuperar y fusionar todos los documentos de una categoría en una sola respuesta. | category (string) | Objeto que contiene content (string) con todos los documentos fusionados en uno | Úsalo cuando necesites una vista completa de toda la documentación dentro de una categoría, como al construir una función de búsqueda de documentación o cuando necesites analizar el conjunto completo de documentación para un tema específico. |
get-all-open-issues | Recuperar todos los problemas abiertos del repositorio de GitHub de Terragrunt. | all (boolean, optional) | Arreglo de objetos con title (string), number (number), state (string), created_at (string), updated_at (string), body (string) y labels (string[]) | Úsalo cuando necesites rastrear o analizar problemas actuales en el proyecto Terragrunt, como al construir un panel de problemas, realizar triaje de problemas, o cuando necesites mantenerte actualizado con los últimos desafíos y discusiones del proyecto. |
Configuración
-
Instalar Deno:
-
Clonar el repositorio:
git clone https://github.com/Excoriate/mcp-terragrunt-docs.git cd mcp-terragrunt-docs -
Configura tu token de GitHub como variable de entorno:
-
En Unix/macOS:
export GITHUB_TOKEN=ghp_xxx... # or GH_TOKEN or GITHUB_PERSONAL_ACCESS_TOKEN -
En Windows (cmd):
set GITHUB_TOKEN=ghp_xxx...
-
Nota: También puedes configurar el token en el archivo
.env.
-
Ejecutar el servidor MCP:
# directly using deno deno run -A main.ts # Using the justfile just run # You can also debug it, and inspect it locally just inspect
El método más directo es usarlo directamente desde JSR (Registro de JavaScript ❤️)
# export your github token
export GITHUB_TOKEN=ghp_xxx...
# run it
deno run -A jsr:@excoriate/mcp-terragrunt-docs@0.1.0
Uso con Claude Desktop
Para usar este servidor MCP basado en Deno con Claude Desktop, agrega lo siguiente a tu claude_desktop_config.json:
Usando Deno
{
"mcpServers": {
"terragrunt_docs": {
"command": "deno",
"args": [
"run",
"-A",
"main.ts"
],
"env": {
"GITHUB_TOKEN": "<YOUR_TOKEN>"
},
}
}
}
Usando Docker
{
"mcpServers": {
"terragrunt_docs": {
"command": "docker",
"args": [
"run",
"-e", "GITHUB_TOKEN=<YOUR_TOKEN>", "mcp-terragrunt-docs"
],
"env": {
"GITHUB_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Usando JSR
{
"mcpServers": {
"terragrunt_docs": {
"command": "deno",
"args": [
"run",
"-A",
"jsr:@excoriate/mcp-terragrunt-docs@0.1.0"
],
"env": {
"GITHUB_TOKEN": "<YOUR_TOKEN>"
}
}
}
}
Construir la imagen de Docker
docker build -t mcp-terragrunt-docs .
Ejecutar el servidor MCP en Docker
docker run -it --rm \
-e GITHUB_TOKEN=ghp_xxx... \
mcp-terragrunt-docs
- Reemplaza
ghp_xxx...con tu Token de Acceso Personal de GitHub con los permisos adecuados. - También puedes usar
GH_TOKENoGITHUB_PERSONAL_ACCESS_TOKENcomo nombre de variable de entorno. - Si deseas usar un archivo
.envlocal, puedes pasarlo con--env-file .env.
Contribuciones
Consulta docs/CONTRIBUTING.md para obtener pautas detalladas de contribución, incluyendo configuración, estilo de código, proceso de PR y referencia de la estructura del código base.
Seguridad
Consulta SECURITY.md para conocer la política de seguridad del proyecto, incluyendo cómo reportar vulnerabilidades y pautas de divulgación responsable.
Licencia
Este proyecto está licenciado bajo la MIT License.