Skip to main content
Glama

Exoscale MCP Server

npm version CI License Node.js MCP npm downloads

一个 MCP(Model Context Protocol)服务器,使 AI 助手能够管理 Exoscale 云基础设施。支持 stdio 和 Streamable HTTP 两种传输方式,默认启用只读模式以确保安全。

功能特性

  • 10 个复合工具,涵盖 Compute、SKS(Kubernetes)、DNS、DBaaS、Block Storage 和 Object Storage

  • 4 个只读资源,用于参考数据(区域、实例类型、模板、数据库套餐)

  • 双传输 — stdio 用于本地使用(Claude Desktop、Kiro),HTTP 用于远程/共享部署

  • 默认只读 — 写操作需要通过 EXOSCALE_MCP_READ_ONLY=false 显式启用

  • Dry-run 支持 — 在执行前预览任何变更操作

  • EXO2-HMAC-SHA256 认证,支持环境变量和配置文件凭据解析

Related MCP server: TianGong-AI-MCP

快速开始

# 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

配置

环境变量

默认值

说明

EXOSCALE_API_KEY

Exoscale API 密钥(必填)

EXOSCALE_API_SECRET

Exoscale API 私钥(必填)

EXOSCALE_ZONE

ch-gva-2

默认 API 区域

EXOSCALE_MCP_READ_ONLY

true

设置为 false 以启用写操作

EXOSCALE_MCP_TRANSPORT

stdio

传输方式:stdiohttp

EXOSCALE_MCP_PORT

3000

HTTP 端口(当传输方式为 http 时)

CLI 标志 --http--port <n> 会覆盖环境变量。

凭据解析

  1. EXOSCALE_API_KEY + EXOSCALE_API_SECRET 环境变量

  2. ~/.exoscale/config 文件(INI 格式,[default] 节)

安全模型

该服务器实现了三层安全保护:

  1. 只读模式(默认开启) — 所有变更操作都会返回明确的错误信息,引导用户设置 EXOSCALE_MCP_READ_ONLY=false

  2. Dry-run 模式 — 向任何变更操作传递 dryRun: true 以预览将要发生的结果

  3. 破坏性注解 — 工具带有 destructiveHint: true 注解,以便 MCP 客户端提示用户确认

工具

工具

操作

说明

compute_instance

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

管理计算虚拟机

compute_security_group

list, get, create, delete, add_rule, remove_rule

管理防火墙规则

elastic_ip

list, get, create, delete, attach, detach

管理弹性 IP

sks_cluster

list, get, create, upgrade, delete, get_kubeconfig

管理 Kubernetes 集群

sks_nodepool

list, get, create, scale, delete

管理集群节点池

dns_domain

list, get, create, delete

管理 DNS 区域

dns_record

list, get, create, update, delete

管理 DNS 记录

dbaas_service

list, get, create, update, delete, get_connection_info

管理数据库

block_storage

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

管理卷

object_storage

list_buckets, create_bucket, delete_bucket, get_presigned_url

管理 SOS 存储桶

资源

URI

说明

exoscale://zones

可用的数据中心区域

exoscale://instance-types

计算实例类型(CPU、内存、系列)

exoscale://templates

适用于实例的操作系统模板

exoscale://dbaas-service-types

数据库服务类型和套餐

MCP 客户端配置

Kiro / Claude Desktop (stdio)

添加到你的 MCP 配置中:

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

HTTP 模式

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

然后将你的 MCP 客户端连接到 http://127.0.0.1:3000/mcp

开发

# 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

架构

有关详细的系统概述,请参阅 ARCHITECTURE.md

贡献

有关添加工具、资源和测试的指南,请参阅 CONTRIBUTING.md

许可证

Apache License 2.0 — 详见 LICENSE

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