DeployHQ

Un servidor del Protocolo de Contexto de Modelos (MCP) para DeployHQ que permite a asistentes de IA como Claude Desktop y Claude Code interactuar con tus despliegues de DeployHQ.

Documentación

Servidor MCP de DeployHQ

Un servidor de Model Context Protocol (MCP) para DeployHQ que permite a asistentes de IA como Claude Desktop y Claude Code interactuar con tus despliegues de DeployHQ.

🚀 Características

  • Integración completa con la API de DeployHQ: Accede a proyectos, servidores y despliegues
  • Instalación fácil: Úsalo directamente con npx - no requiere instalación
  • Compatible con Claude Desktop y Claude Code: Transporte stdio para ambos clientes MCP
  • Seguro: Credenciales mediante variables de entorno, nunca se almacenan
  • Seguridad de tipos: Construido con TypeScript y validación con Zod
  • Múltiples transportes: stdio (principal), SSE y HTTP (opcional para alojamiento)
  • Listo para producción: Manejo integral de errores y registro de actividades

📋 Herramientas disponibles

El servidor MCP proporciona 18 herramientas para asistentes de IA:

HerramientaDescripciónParámetros
list_projectsListar todos los proyectosNinguno
get_projectObtener detalles del proyectopermalink
list_serversListar servidores del proyectoproject
list_deploymentsListar despliegues con paginaciónproject, page?, server_uuid?
get_deploymentObtener detalles del despliegueproject, uuid
get_deployment_logObtener registro de salida del despliegueproject, uuid
create_deploymentCrear nuevo despliegueproject, parent_identifier, start_revision, end_revision, + parámetros opcionales
list_ssh_keysListar todas las claves públicas SSHNinguno
create_ssh_keyCrear un nuevo par de claves SSHtitle, key_type?
list_global_environment_variablesListar todas las variables de entorno globalesNinguno
create_global_environment_variableCrear una variable de entorno globalname, value, locked?, build_pipeline?
update_global_environment_variableActualizar una variable de entorno globalid, name?, value?, locked?, build_pipeline?
delete_global_environment_variableEliminar una variable de entorno globalid
list_global_config_filesListar todas las plantillas de archivos de configuración globalesNinguno
get_global_config_fileObtener un archivo de configuración global con su contenidoid
create_global_config_fileCrear una plantilla de archivo de configuración globalpath, body, description?, build?
update_global_config_fileActualizar una plantilla de archivo de configuración globalid, path?, body?, description?, build?
delete_global_config_fileEliminar una plantilla de archivo de configuración globalid

list_projects

Lista todos los proyectos en tu cuenta de DeployHQ.

Devuelve: Un arreglo de proyectos con información del repositorio y estado de despliegue.

get_project

Obtén información detallada sobre un proyecto específico.

Parámetros:

  • permalink (cadena): Permalink del proyecto o identificador

list_servers

Lista todos los servidores configurados para un proyecto.

Parámetros:

  • project (cadena): Permalink del proyecto

list_deployments

Lista los despliegues de un proyecto con soporte de paginación.

Parámetros:

  • project (cadena): Permalink del proyecto
  • page (número, opcional): Número de página para paginación
  • server_uuid (cadena, opcional): Filtrar por UUID del servidor

get_deployment

Obtén información detallada sobre un despliegue específico.

Parámetros:

  • project (cadena): Permalink del proyecto
  • uuid (cadena): UUID del despliegue

get_deployment_log

Obtén el registro del despliegue de un despliegue específico. Útil para depurar despliegues fallidos.

Parámetros:

  • project (cadena): Permalink del proyecto
  • uuid (cadena): UUID del despliegue

Devuelve: Registro completo del despliegue como texto

create_deployment

Crea un nuevo despliegue para un proyecto.

Parámetros:

  • project (cadena): Permalink del proyecto
  • parent_identifier (cadena): UUID del servidor o grupo de servidores
  • start_revision (cadena): Hash del commit inicial
  • end_revision (cadena): Hash del commit final
  • branch (cadena, opcional): Rama desde la que desplegar
  • mode (cadena, opcional): "queue" (cola) o "preview" (vista previa)
  • copy_config_files (booleano, opcional): Copiar archivos de configuración
  • run_build_commands (booleano, opcional): Ejecutar comandos de compilación
  • use_build_cache (booleano, opcional): Usar caché de compilación
  • use_latest (cadena, opcional): Usar el último commit desplegado como inicio

list_ssh_keys

Lista todas las claves públicas SSH de la cuenta.

Devuelve: Un arreglo de claves SSH con claves públicas, huellas digitales y tipos de clave. Nunca devuelve claves privadas.

create_ssh_key

Crea un nuevo par de claves SSH para la cuenta.

Parámetros:

  • title (cadena): Título para la clave SSH
  • key_type (cadena, opcional): Tipo de clave: ED25519 (predeterminado) o RSA

list_global_environment_variables

Lista todas las variables de entorno globales (a nivel de cuenta).

Devuelve: Un arreglo de variables de entorno con nombres, valores enmascarados y configuraciones.

create_global_environment_variable

Crea una nueva variable de entorno global disponible en todos los proyectos.

Parámetros:

  • name (cadena): Nombre de la variable
  • value (cadena): Valor de la variable
  • locked (booleano, opcional): Bloquear la variable para evitar cambios
  • build_pipeline (booleano, opcional): Disponible en el pipeline de compilación

update_global_environment_variable

Actualiza una variable de entorno global existente.

Parámetros:

  • id (cadena): Identificador de la variable de entorno
  • name (cadena, opcional): Nombre de la variable
  • value (cadena, opcional): Valor de la variable
  • locked (booleano, opcional): Estado de bloqueo
  • build_pipeline (booleano, opcional): Disponibilidad en el pipeline de compilación

delete_global_environment_variable

Elimina una variable de entorno global. Esta acción es irreversible.

Parámetros:

  • id (cadena): Identificador de la variable de entorno

list_global_config_files

Lista todas las plantillas de archivos de configuración globales (a nivel de cuenta).

Devuelve: Un arreglo de archivos de configuración con rutas, descripciones y configuraciones.

get_global_config_file

Obtén una plantilla de archivo de configuración global específica, incluido su contenido.

Parámetros:

  • id (cadena): Identificador del archivo de configuración (UUID)

create_global_config_file

Crea una nueva plantilla de archivo de configuración global.

Parámetros:

  • path (cadena): Ruta del archivo (p. ej. config/database.yml)
  • body (cadena): Contenido del archivo
  • description (cadena, opcional): Descripción del archivo de configuración
  • build (booleano, opcional): Usar con el pipeline de compilación

update_global_config_file

Actualiza una plantilla de archivo de configuración global existente.

Parámetros:

  • id (cadena): Identificador del archivo de configuración (UUID)
  • path (cadena, opcional): Ruta del archivo
  • body (cadena, opcional): Contenido del archivo
  • description (cadena, opcional): Descripción
  • build (booleano, opcional): Indicador de pipeline de compilación

delete_global_config_file

Elimina una plantilla de archivo de configuración global. Esta acción es irreversible.

Parámetros:

  • id (cadena): Identificador del archivo de configuración (UUID)

🚀 Inicio rápido

Instalación fácil con Claude Code

La forma más rápida de instalar para Claude Code:

claude mcp add --transport stdio deployhq --env DEPLOYHQ_EMAIL=your-email@example.com --env DEPLOYHQ_API_KEY=your-api-key --env DEPLOYHQ_ACCOUNT=your-account -- npx -y deployhq-mcp-server

Reemplaza your-email@example.com, your-api-key y your-account con tus credenciales reales de DeployHQ.

Configuración manual (funciona para Claude Desktop y Claude Code)

La misma configuración funciona para ambos clientes. Cópiala desde docs/claude-config.json y agrega tus credenciales.

Para Claude Desktop:

Edita tu archivo de configuración:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Luego reinicia Claude Desktop.

Para Claude Code:

Agrégalo a tu archivo .claude.json en el directorio de tu proyecto, luego sal y reinicia tu sesión de Claude (escribe exit o Ctrl+D, y luego ejecuta claude).

Configuración:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": ["-y", "deployhq-mcp-server"],
      "env": {
        "DEPLOYHQ_EMAIL": "your-email@example.com",
        "DEPLOYHQ_API_KEY": "your-password",
        "DEPLOYHQ_ACCOUNT": "your-account-name"
        // Optional: "LOG_LEVEL": "INFO"  (ERROR, INFO, or DEBUG)
      }
    }
  }
}

Nota: Solo se requieren las 3 credenciales de DeployHQ. LOG_LEVEL es opcional y tiene como valor predeterminado INFO.

Comenzar a usar

Una vez configurado, puedes pedirle a Claude que interactúe con DeployHQ:

  • "Lista todos mis proyectos de DeployHQ"
  • "Muéstrame los servidores del proyecto X"
  • "Obtén el estado del último despliegue del proyecto Y"
  • "Crea un nuevo despliegue para el proyecto Z"
  • "Muéstrame el registro del despliegue para el último despliegue"
  • "Lista mis variables de entorno globales"
  • "Crea una plantilla de archivo de configuración global para database.yml"
  • "Muestra mis claves SSH"

💡 Ejemplos de uso comunes

Comprobar el estado del despliegue

User: What's the status of my latest deployment for my-app?
Claude: [Uses list_deployments → get_deployment → shows status]

Depurar un despliegue fallido

User: Why did the last deployment fail for my-app?
Claude: [Uses list_deployments → get_deployment_log → analyzes log]

Desplegar los últimos cambios

User: Deploy the latest changes to production for my-app
Claude: [Uses list_servers → list_deployments → create_deployment with use_latest]

Ejemplo de flujo de trabajo completo

User: I want to deploy my-app to production with the latest changes

Claude will:
1. Use list_projects to find "my-app"
2. Use list_servers to find production server UUID
3. Use list_deployments with use_latest to get last revision
4. Use create_deployment to queue deployment
5. Use get_deployment to show status
6. Use get_deployment_log if anything fails

🔧 Opciones de configuración

Variables de entorno

Requeridas

  • DEPLOYHQ_EMAIL: Tu correo de inicio de sesión de DeployHQ
  • DEPLOYHQ_API_KEY: Tu contraseña/clave API de DeployHQ
  • DEPLOYHQ_ACCOUNT: El nombre de tu cuenta de DeployHQ (de la URL: https://ACCOUNT.deployhq.com)

Opcionales

  • LOG_LEVEL: Controla el nivel de registro - ERROR, INFO, o DEBUG (predeterminado: INFO)
  • NODE_ENV: Modo de entorno - production o development
  • DEPLOYHQ_READ_ONLY: Configúralo como true para bloquear todas las operaciones de mutación (predeterminado: false)

Niveles de registro

Controla el nivel de detalle con la variable de entorno LOG_LEVEL:

  • ERROR: Mostrar solo errores
  • INFO: Mostrar información y errores (predeterminado)
  • DEBUG: Mostrar todos los registros, incluidas las llamadas API detalladas

Ejemplo:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": ["-y", "deployhq-mcp-server"],
      "env": {
        "DEPLOYHQ_EMAIL": "your-email@example.com",
        "DEPLOYHQ_API_KEY": "your-password",
        "DEPLOYHQ_ACCOUNT": "your-account-name",
        "LOG_LEVEL": "DEBUG"
      }
    }
  }
}

🐛 Solución de problemas

El servidor no inicia

Problema: El servidor se cierra inmediatamente después de iniciar

Soluciones:

  • Verifica que todas las variables de entorno requeridas estén configuradas
  • Verifica que la versión de Node.js sea 18 o superior: node --version
  • Revisa los registros en Claude Desktop/Code para ver mensajes de error
  • Intenta configurar LOG_LEVEL=DEBUG para obtener más detalles

Errores de autenticación

Problema: "Fallo de autenticación" o errores 401/403

Soluciones:

  • Verifica que tu correo y clave API sean correctos
  • Comprueba que tu clave API no haya expirado
  • Asegúrate de que tu cuenta tenga el acceso API habilitado
  • Intenta iniciar sesión en la interfaz web de DeployHQ con las mismas credenciales

Proyecto no encontrado

Problema: "Proyecto no encontrado" o errores 404

Soluciones:

  • Usa list_projects para ver el formato exacto del permalink
  • Los permalinks de proyectos distinguen entre mayúsculas y minúsculas
  • Verifica que tengas acceso al proyecto en DeployHQ

Creación de despliegues bloqueada

Problema: Error "El servidor está en modo de solo lectura" al intentar crear despliegues

Solución:

  • El modo de solo lectura está deshabilitado por defecto, pero es posible que lo hayas activado
  • Para deshabilitar el modo de solo lectura, configura DEPLOYHQ_READ_ONLY=false en tus variables de entorno
  • O usa el indicador de línea de comandos --read-only=false
  • Consulta la sección de Seguridad para obtener instrucciones detalladas sobre el modo de solo lectura

Despliegue fallido

Problema: El despliegue se crea pero falla inmediatamente

Soluciones:

  • Usa get_deployment_log para ver los registros de error detallados
  • Verifica que el UUID del servidor sea correcto con list_servers
  • Comprueba que las revisiones de inicio y fin existan en el repositorio
  • Asegúrate de que el servidor tenga las claves de despliegue correctas configuradas

Tiempos de espera de conexión

Problema: Errores de "Tiempo de espera de solicitud"

Soluciones:

  • Verifica tu conexión a internet
  • Comprueba que la API de DeployHQ sea accesible: curl https://YOUR_ACCOUNT.deployhq.com
  • Las listas de despliegues grandes pueden tardar; usa la paginación
  • Intenta de nuevo en un momento si DeployHQ está experimentando problemas

Los registros no se muestran

Problema: No ves ninguna salida de registro

Soluciones:

  • Los registros van a stderr, no a stdout (para el transporte stdio)
  • Revisa la ubicación de los registros de Claude Desktop/Code:
    • macOS: ~/Library/Logs/Claude/
    • Windows: %APPDATA%\Claude\logs\
  • Configura LOG_LEVEL=DEBUG para una salida detallada
  • Para el modo alojado, revisa los registros de Digital Ocean

Obtener tus credenciales de DeployHQ

  1. Nombre de usuario: Tu correo de inicio de sesión de DeployHQ
  2. Contraseña: Tu contraseña de DeployHQ
  3. Cuenta: El nombre de tu cuenta de DeployHQ (visible en la URL: https://ACCOUNT.deployhq.com)

🏗️ Arquitectura

┌─────────────────┐                    ┌─────────────┐
│  Claude Desktop │    stdio/JSON-RPC  │  DeployHQ   │
│  or Claude Code │◄──────────────────►│  API        │
│                 │    (via npx)       │             │
│  Environment    │                    │             │
│  Variables ─────┼───────────────────►│ Basic Auth  │
└─────────────────┘                    └─────────────┘
  • Claude Desktop/Code: Clientes MCP que inician el servidor mediante npx
  • MCP Server: Lee las credenciales de las variables de entorno y se comunica a través de stdio
  • DeployHQ API: API REST con autenticación básica HTTP

📦 Requisitos previos

  • Node.js 18+ (se recomienda Node 20+)
  • Cuenta de DeployHQ con acceso a la API (disponible en todos los planes de pago)

Nota: El servidor utiliza node-fetch para las peticiones HTTP. Se requiere Node 18+ para las herramientas de desarrollo (ESLint, Vitest).

🔧 Desarrollo local

1. Clonar el repositorio

git clone https://github.com/your-username/deployhq-mcp-server.git
cd deployhq-mcp-server

2. Instalar dependencias

npm install

3. Ejecutar las pruebas

npm test              # Run tests once
npm run test:watch    # Run tests in watch mode
npm run test:coverage # Run tests with coverage report
npm run test:ui       # Run tests with UI

4. Compilar el proyecto

npm run build

5. Probar el transporte stdio localmente

# Build first
npm run build

# Test with environment variables
DEPLOYHQ_EMAIL="your-email@example.com" \
DEPLOYHQ_API_KEY="your-api-key" \
DEPLOYHQ_ACCOUNT="your-account" \
node dist/stdio.js

El servidor se iniciará en modo stdio y esperará mensajes JSON-RPC en la entrada estándar.

6. Probar con Claude Code

Configura tu .claude.json local para usar la versión compilada:

{
  "mcpServers": {
    "deployhq": {
      "command": "node",
      "args": ["/path/to/deployhq-mcp-server/dist/stdio.js"],
      "env": {
        "DEPLOYHQ_EMAIL": "your-email@example.com",
        "DEPLOYHQ_API_KEY": "your-password",
        "DEPLOYHQ_ACCOUNT": "your-account-name"
      }
    }
  }
}

🧪 Pruebas

El proyecto incluye un conjunto completo de pruebas con Vitest:

Cobertura de pruebas:

  • ✅ Validación de esquemas de herramientas: Los 18 esquemas de herramientas MCP con entradas válidas e inválidas
  • ✅ Métodos del cliente API: Todos los métodos de la API de DeployHQ con respuestas simuladas
  • ✅ Manejo de errores: Errores de autenticación, validación y red
  • ✅ Fábrica del servidor MCP: Creación y configuración del servidor

Ejecutar las pruebas:

npm test              # Run all tests
npm run test:watch    # Watch mode for development
npm run test:coverage # Generate coverage report
npm run test:ui       # Interactive UI for debugging

Estadísticas de pruebas:

  • 216 pruebas en 10 conjuntos de pruebas
  • Cubre los módulos de herramientas, cliente API y servidor MCP
  • Utiliza fetch simulado para pruebas unitarias aisladas

🔒 Seguridad

Modo de solo lectura (opcional)

De forma predeterminada, el servidor MCP permite todas las operaciones, incluida la creación de despliegues. Esta es la configuración recomendada para la mayoría de los usuarios.

Para los usuarios que desean protección adicional contra despliegues accidentales, el servidor incluye un modo de solo lectura opcional que se puede habilitar para bloquear la creación de despliegues.

Comportamiento predeterminado (sin necesidad de configuración):

  • ✅ Los despliegues están permitidos de forma predeterminada
  • ✅ Todas las operaciones funcionan: listar, obtener y crear despliegues
  • ✅ Funcionalidad completa desde el primer momento

Cuándo podrías querer habilitar el modo de solo lectura:

  • Quieres protección adicional contra despliegues accidentales a través de IA
  • Te estás conectando a entornos de producción y deseas una capa de seguridad adicional
  • Solo necesitas acceso de lectura para monitorear despliegues
  • Aún estás probando la integración y quieres ser cauteloso

Importante: El modo de solo lectura es completamente opcional. El servidor funciona completamente sin él.

Cómo habilitar el modo de solo lectura:

Mediante variable de entorno:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": ["-y", "deployhq-mcp-server"],
      "env": {
        "DEPLOYHQ_EMAIL": "your-email@example.com",
        "DEPLOYHQ_API_KEY": "your-api-key",
        "DEPLOYHQ_ACCOUNT": "your-account",
        "DEPLOYHQ_READ_ONLY": "true"
      }
    }
  }
}

Mediante indicador de CLI:

{
  "mcpServers": {
    "deployhq": {
      "command": "npx",
      "args": [
        "-y",
        "deployhq-mcp-server",
        "--read-only"
      ],
      "env": {
        "DEPLOYHQ_EMAIL": "your-email@example.com",
        "DEPLOYHQ_API_KEY": "your-api-key",
        "DEPLOYHQ_ACCOUNT": "your-account"
      }
    }
  }
}

Precedencia de configuración:

  1. Indicador de CLI --read-only (prioridad más alta)
  2. Variable de entorno DEPLOYHQ_READ_ONLY
  3. Valor predeterminado: false (despliegues permitidos)

Notas de seguridad adicionales

  • Los registros de despliegue pueden contener secretos: Los registros de despliegue pueden incluir variables de entorno, claves de API y otra información sensible. Ten precaución al usar herramientas que recuperan registros, especialmente con servicios de IA de terceros.

  • Usa claves de API con privilegios mínimos: Crea claves de API dedicadas con los permisos mínimos necesarios para el acceso MCP. Considera claves separadas para operaciones de solo lectura frente a lectura/escritura.

  • Audita la actividad de MCP: Supervisa el uso de MCP, especialmente en entornos de producción. Revisa los registros regularmente para detectar comportamientos inesperados.

  • Variables de entorno: Las credenciales nunca se almacenan, solo se pasan mediante variables de entorno

  • HTTPS: Al usar npx, las credenciales permanecen locales en tu máquina

  • Sin telemetría: No se envían datos a ningún lugar excepto directamente a la API de DeployHQ


🌐 Opcional: Despliegue alojado

El servidor también se puede implementar como un servicio alojado con transportes SSE/HTTP. Esto es útil para integraciones web o acceso compartido en equipo.

🚀 Despliegue en Digital Ocean

Opción 1: Usando el panel de control

  1. Prepara tu repositorio:

    git add .
    git commit -m "Initial commit"
    git push origin main
    
  2. Crea una nueva aplicación:

    • Ve a Digital Ocean Apps
    • Haz clic en "Create App"
    • Selecciona tu repositorio de GitHub
    • Elige la rama (main)
  3. Configura la aplicación:

    • Digital Ocean detectará el Dockerfile automáticamente
    • O usa la configuración .do/app.yaml
  4. Configura las variables de entorno:

    • Ve a App Settings → Environment Variables
    • Agrega lo siguiente como variables cifradas:
      • DEPLOYHQ_EMAIL
      • DEPLOYHQ_API_KEY
      • DEPLOYHQ_ACCOUNT
    • Agrega estas como variables regulares:
      • NODE_ENV=production
      • PORT=8080
      • LOG_LEVEL=info
  5. Despliega:

    • Haz clic en "Next" y "Create Resources"
    • Espera a que se complete el despliegue
  6. Configura un dominio personalizado (opcional):

    • Ve a Settings → Domains
    • Agrega mcp.deployhq.com
    • Actualiza tus registros DNS según las instrucciones

Opción 2: Usando la CLI de doctl

  1. Instala doctl:

    # macOS
    brew install doctl
    
    # Linux
    cd ~
    wget https://github.com/digitalocean/doctl/releases/download/v1.104.0/doctl-1.104.0-linux-amd64.tar.gz
    tar xf doctl-1.104.0-linux-amd64.tar.gz
    sudo mv doctl /usr/local/bin
    
  2. Autentícate:

    doctl auth init
    
  3. Actualiza .do/app.yaml:

    • Edita el campo github.repo con tu repositorio
    • Revisa y ajusta el tamaño de la instancia si es necesario
  4. Crea la aplicación:

    doctl apps create --spec .do/app.yaml
    
  5. Configura los secretos de entorno:

    # Get your app ID
    doctl apps list
    
    # Update environment variables (replace APP_ID)
    doctl apps update APP_ID --spec .do/app.yaml
    
  6. Consulta los registros:

    doctl apps logs APP_ID --follow
    

🔒 Seguridad del alojamiento

  • Nunca confirmes credenciales: Usa .env para el desarrollo local (excluido por .gitignore)
  • Usa secretos de Digital Ocean: Almacena las credenciales como variables de entorno cifradas
  • Solo HTTPS: Digital Ocean proporciona HTTPS automático
  • Permisos mínimos: Usa un usuario de DeployHQ dedicado con los permisos mínimos necesarios

📊 Monitoreo del alojamiento

Comprobación de estado

El servidor alojado incluye un punto final de comprobación de estado en /health:

curl https://mcp.deployhq.com/health

Registros

Consulta los registros en Digital Ocean:

  • Panel de control: Ve a tu aplicación → Runtime Logs
  • CLI: doctl apps logs <APP_ID> --follow

Alertas

Digital Ocean te alertará sobre:

  • Fallos de despliegue
  • Problemas de configuración de dominio
  • Fallos en la comprobación de estado

🧪 Pruebas del servidor alojado

Prueba el punto final SSE:

curl -N http://localhost:8080/sse \
  -H "X-DeployHQ-Email: your-email@example.com" \
  -H "X-DeployHQ-API-Key: your-api-key" \
  -H "X-DeployHQ-Account: your-account"

Prueba el punto final de transporte HTTP:

curl -X POST http://localhost:8080/mcp \
  -H "Content-Type: application/json" \
  -H "X-DeployHQ-Email: your-email@example.com" \
  -H "X-DeployHQ-API-Key: your-api-key" \
  -H "X-DeployHQ-Account: your-account" \
  -d '{
    "jsonrpc": "2.0",
    "method": "tools/list",
    "params": {},
    "id": 1
  }'

Consulta la documentación de despliegue alojado para ver ejemplos completos de pruebas.

📚 Estructura del proyecto

deployhq-mcp-server/
├── src/
│   ├── stdio.ts          # stdio transport entrypoint (for Claude Desktop/Code)
│   ├── index.ts          # Express server (for hosted deployment)
│   ├── mcp-server.ts     # Core MCP server factory (shared)
│   ├── tools.ts          # Tool definitions and schemas (shared)
│   ├── api-client.ts     # DeployHQ API client (shared)
│   ├── transports/       # SSE/HTTP handlers (for hosted)
│   └── utils/            # Logging and utilities
├── docs/
│   ├── claude-config.json          # Universal config template (Desktop & Code)
│   ├── USER_GUIDE.md               # User documentation
│   ├── DEPLOYMENT.md               # Hosted deployment guide
│   └── HTTP_TRANSPORT.md           # HTTP transport documentation
├── .do/
│   └── app.yaml          # Digital Ocean configuration (optional)
├── Dockerfile            # Container configuration (optional)
├── package.json          # Dependencies and scripts
├── tsconfig.json         # TypeScript configuration
├── STDIO_MIGRATION.md    # stdio migration documentation
└── README.md             # This file

🤝 Contribuciones

¡Las contribuciones son bienvenidas! Por favor:

  1. Haz un fork del repositorio
  2. Crea una rama de funcionalidad
  3. Realiza tus cambios
  4. Agrega pruebas si corresponde
  5. Envía una solicitud de extracción

Para mantenedores

Consulta RELEASING.md para obtener instrucciones sobre cómo crear versiones y publicar en npm.

Política de privacidad

Este servidor MCP no recopila, almacena ni transmite ningún dato de usuario más allá de lo necesario para comunicarse con la API de DeployHQ. Las credenciales se pasan mediante variables de entorno y nunca se registran ni persisten.

Para consultar la política de privacidad completa de DeployHQ, visita: https://www.deployhq.com/privacy

📄 Licencia

Licencia MIT: consulta el archivo LICENSE para obtener más detalles

🆘 Soporte

🔗 Enlaces relacionados