Skip to main content
Glama

Exoscale MCP Server

npm version CI License Node.js MCP npm downloads

Un servidor MCP (Model Context Protocol) que permite a los asistentes de IA gestionar la infraestructura en la nube de Exoscale. Soporta transportes stdio y Streamable HTTP, con el modo de solo lectura activado por defecto por seguridad.

Características

  • 10 herramientas compuestas que cubren Compute, SKS (Kubernetes), DNS, DBaaS, Block Storage y Object Storage

  • 4 recursos de solo lectura para datos de referencia (zonas, tipos de instancia, plantillas, planes de base de datos)

  • Transporte dual — stdio para uso local (Claude Desktop, Kiro) y HTTP para despliegues remotos/compartidos

  • Solo lectura por defecto — las operaciones de escritura requieren un opt-in explícito mediante EXOSCALE_MCP_READ_ONLY=false

  • Compatibilidad con dry-run — previsualiza cualquier mutación antes de ejecutarla

  • Autenticación EXO2-HMAC-SHA256 con resolución de credenciales mediante variables de entorno y archivo de configuración

Related MCP server: TianGong-AI-MCP

Inicio rápido

# Install dependencies
npm install

# Build
npm run build

# Run in stdio mode (default, read-only)
EXOSCALE_API_KEY=your-key EXOSCALE_API_SECRET=your-secret npm start

# Run in HTTP mode
npm run start:http

Configuración

Variable de entorno

Por defecto

Descripción

EXOSCALE_API_KEY

Clave de API de Exoscale (obligatoria)

EXOSCALE_API_SECRET

Secreto de API de Exoscale (obligatorio)

EXOSCALE_ZONE

ch-gva-2

Zona de API por defecto

EXOSCALE_MCP_READ_ONLY

true

Establécelo en false para habilitar operaciones de escritura

EXOSCALE_MCP_TRANSPORT

stdio

Transporte: stdio o http

EXOSCALE_MCP_PORT

3000

Puerto HTTP (cuando el transporte es http)

Las opciones de CLI --http y --port <n> anulan las variables de entorno.

Resolución de credenciales

  1. Las variables de entorno EXOSCALE_API_KEY + EXOSCALE_API_SECRET

  2. El archivo ~/.exoscale/config (formato INI, sección [default])

Modelo de seguridad

El servidor implementa tres capas de seguridad:

  1. Modo de solo lectura (activado por defecto) — Todas las mutaciones devuelven un mensaje de error claro que indica al usuario que establezca EXOSCALE_MCP_READ_ONLY=false

  2. Modo dry-run — Pasa dryRun: true a cualquier acción de mutación para previsualizar lo que sucedería

  3. Anotaciones destructivas — Las herramientas están anotadas con destructiveHint: true para que los clientes MCP puedan solicitar confirmación

Herramientas

Tool

Actions

Description

compute_instance

list, get, create, start, stop, reboot, resize, delete

Gestionar VMs de Compute

compute_security_group

list, get, create, delete, add_rule, remove_rule

Gestionar reglas de firewall

elastic_ip

list, get, create, delete, attach, detach

Gestionar IPs elásticas

sks_cluster

list, get, create, upgrade, delete, get_kubeconfig

Gestionar clústeres de Kubernetes

sks_nodepool

list, get, create, scale, delete

Gestionar grupos de nodos del clúster

dns_domain

list, get, create, delete

Gestionar zonas DNS

dns_record

list, get, create, update, delete

Gestionar registros DNS

dbaas_service

list, get, create, update, delete, get_connection_info

Gestionar bases de datos

block_storage

list, get, create, resize, attach, detach, snapshot, delete

Gestionar volúmenes

object_storage

list_buckets, create_bucket, delete_bucket, get_presigned_url

Gestionar buckets de SOS

Recursos

URI

Descripción

exoscale://zones

Zonas de centro de datos disponibles

exoscale://instance-types

Tipos de instancia de Compute (CPU, RAM, familia)

exoscale://templates

Plantillas de SO para instancias

exoscale://dbaas-service-types

Tipos y planes de servicio de bases de datos

Configuración del cliente MCP

Kiro / Claude Desktop (stdio)

Añade lo siguiente a tu configuración de MCP:

{
  "mcpServers": {
    "exoscale": {
      "command": "node",
      "args": ["/path/to/exoscale-mcp/dist/index.js"],
      "env": {
        "EXOSCALE_API_KEY": "your-key",
        "EXOSCALE_API_SECRET": "your-secret"
      }
    }
  }
}

Modo HTTP

EXOSCALE_API_KEY=key EXOSCALE_API_SECRET=secret node dist/index.js --http --port 3000

Luego conecta tu cliente MCP a http://127.0.0.1:3000/mcp.

Desarrollo

# Dev mode (tsx, auto-restarts not included)
npm run dev

# Type check
npm run lint

# Run tests
npm test

# Run with coverage
npm run test:coverage

# Regenerate types from OpenAPI spec
npm run generate:types

Arquitectura

Consulta ARCHITECTURE.md para obtener una visión general detallada del sistema.

Contribuciones

Consulta CONTRIBUTING.md para conocer las pautas sobre cómo añadir herramientas, recursos y pruebas.

Licencia

Apache License 2.0 — consulta LICENSE para obtener más detalles.

Related MCP Connectors

Related MCP Servers

  • F
    license
    C
    quality
    D
    maintenance
    A Model Context Protocol (MCP) server that enables AI assistants like Claude to interact with your AWS environment. This allows for natural language querying and management of your AWS resources during conversations. Think of better Amazon Q alternative.
    3
    294
  • A
    license
    Not graded
    quality
    C
    maintenance
    A lightweight, stdio-based MCP server enabling AI assistants to perform local file system operations like reading, writing, searching, and executing commands.
    5,122
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/samisouabni/exoscale-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server