Skip to main content
Glama

cloudcraft-mcp

CI License: MIT Python 3.10+

Model Context Protocol (MCP)-Server für Cloudcraft.co — Auflisten, Lesen, Exportieren und Erstellen von Cloud-Architektur-Blueprints über Claude Desktop und andere MCP-Clients.

Funktionen

Neun Tools, die dem MCP-Host zur Verfügung gestellt werden:

Tool

Beschreibung

whoami

Gibt das Cloudcraft-Benutzerprofil für den konfigurierten Schlüssel zurück.

list_blueprints

Listet alle Blueprints im Konto auf.

get_blueprint

Ruft das vollständige Knoten-/Kanten-JSON eines Blueprints ab.

create_blueprint

Erstellt einen neuen Blueprint aus einem JSON-Payload.

update_blueprint

Ersetzt den Payload eines bestehenden Blueprints.

delete_blueprint

Löscht einen Blueprint (nicht umkehrbar).

export_blueprint_image

Rendert einen Blueprint als PNG / SVG / PDF / mxgraph auf die Festplatte.

list_aws_accounts

Listet AWS-Konten auf, die für Live-Scan-Snapshots verbunden sind.

snapshot_aws

Erstellt einen Live-Scan-Snapshot eines AWS-Dienstes.

Related MCP server: AWS MCP Server

Anforderungen

  • Python 3.10+

  • uv (brew install uv)

  • Cloudcraft API-Schlüssel — generieren Sie einen unter https://app.cloudcraft.co/ → User settings → API keys

Installation

Klonen Sie das Repo und lassen Sie uv die Abhängigkeiten beim ersten Ausführen auflösen — kein expliziter Installationsschritt erforderlich.

git clone https://github.com/hypark5540/cloudcraft-mcp.git
cd cloudcraft-mcp
export CLOUDCRAFT_API_KEY='your-key-here'
uv run cloudcraft-mcp   # smoke test — Ctrl+C to exit

Claude Desktop-Integration

Bearbeiten Sie ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) oder das Äquivalent auf Ihrer Plattform:

{
  "mcpServers": {
    "cloudcraft": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/cloudcraft-mcp",
        "run",
        "cloudcraft-mcp"
      ],
      "env": {
        "CLOUDCRAFT_API_KEY": "your-key-here"
      }
    }
  }
}

Starten Sie Claude Desktop neu. Der Entwickler-Tab sollte cloudcraft als verbunden anzeigen.

Umgebungsvariablen

Name

Erforderlich

Standard

Zweck

CLOUDCRAFT_API_KEY

ja

API-Schlüssel (Bearer). Generiert in den Cloudcraft-Benutzereinstellungen.

CLOUDCRAFT_BASE_URL

nein

https://api.cloudcraft.co

Überschreibung für Proxys oder zukünftige API-Versionen.

CLOUDCRAFT_LOG_LEVEL

nein

WARNING

Stderr-Log-Ausführlichkeit (DEBUG / INFO / WARNING / ERROR).

Nutzungsbeispiele (in Claude)

Sobald der Server verbunden ist, können Sie Claude Dinge fragen wie:

"List my Cloudcraft blueprints and summarize what each represents."

"Export blueprint f0086b32-... as PNG and save it to my Desktop."

"Take the architecture I just designed and create a new Cloudcraft blueprint called 'Prod 2026'."

"Snapshot the EC2 instances in ap-northeast-2 for my connected AWS account."

Blueprint-Payload-Struktur

create_blueprint / update_blueprint akzeptieren das vollständige Cloudcraft data-Objekt. Ein minimaler Payload:

{
  "grid": "infinite",
  "projection": "isometric",
  "theme": {"base": "light"},
  "version": 6,
  "nodes": [
    {"id": "...", "type": "ec2", "mapPos": [3, 3], "region": "ap-northeast-2",
     "instanceType": "m7g", "instanceSize": "large", "platform": "linux"},
    {"id": "...", "type": "s3",  "mapPos": [1, 8], "region": "ap-northeast-2",
     "volumeType": "Standard", "dataGb": 100}
  ],
  "edges": [
    {"from": "...ec2-id...", "to": "...s3-id...", "type": "edge",
     "width": 2, "dashed": false, "endCap": "arrow"}
  ],
  "groups": [], "surfaces": [], "text": [], "icons": [],
  "connectors": [], "images": [], "disabledLayers": [],
  "shareDocs": false
}

Informationen zum vollständigen Knotentyp-Katalog und dienstspezifischen Feldern finden Sie in der Cloudcraft API-Dokumentation.

Entwicklung

uv sync --extra dev
uv run pytest            # unit tests (no network)
uv run ruff check .      # lint
uv run mypy src          # type check

Tests simulieren die HTTP-Ebene mit respx, sodass kein API-Schlüssel erforderlich ist.

Projektlayout

cloudcraft-mcp/
├── src/cloudcraft_mcp/
│   ├── __init__.py
│   ├── __main__.py         # python -m cloudcraft_mcp
│   ├── server.py           # MCP tool definitions (FastMCP)
│   ├── client.py           # CloudcraftClient — async httpx wrapper
│   ├── types.py            # TypedDicts for blueprint payloads
│   └── py.typed
├── tests/
│   └── test_client.py
├── server.py               # back-compat shim -> cloudcraft_mcp.server:main
├── pyproject.toml
├── LICENSE
└── README.md

Design-Hinweise

  • Transport-/Logik-Trennung. client.py ist ein einfacher asynchroner HTTP-Client, den Sie aus Skripten oder CLI-Tools importieren können, ohne die MCP-Laufzeitumgebung zu laden. server.py verwaltet nur die MCP-Tool-Oberfläche.

  • Bearer-Token-Authentifizierung. Die API von Cloudcraft erwartet Authorization: Bearer <key> (nicht Apikey). Der Client setzt dies automatisch.

  • Keine Geheimnisse in Prozessargumenten. Der API-Schlüssel wird aus CLOUDCRAFT_API_KEY gelesen; übergeben Sie ihn niemals über die Befehlszeile.

  • Fehlerbehandlung. Nicht-2xx-Antworten lösen einen CloudcraftError aus, wobei Status und Body erhalten bleiben und an der MCP-Grenze als RuntimeError neu verpackt werden, damit Claude eine lesbare Nachricht erhält.

Sicherheit

  • API-Schlüssel gewähren vollen Lese-/Schreibzugriff auf Ihr Cloudcraft-Konto. Behandeln Sie sie als Geheimnisse und rotieren Sie sie regelmäßig.

  • delete_blueprint ist nicht umkehrbar — wenn Sie Claude bitten, etwas zu löschen, seien Sie präzise bezüglich der Ziel-ID.

  • Erstellen Sie für leseintensive Setups einen dedizierten Cloudcraft-Benutzer mit schreibgeschütztem Bereich (falls/sobald Cloudcraft bereichsbezogene Schlüssel hinzufügt) und verwenden Sie diesen Schlüssel für MCP.

Mitwirken

Issues und PRs sind willkommen unter https://github.com/hypark5540/cloudcraft-mcp. Bitte führen Sie ruff, mypy und pytest aus, bevor Sie etwas einreichen.

Lizenz

MIT — siehe LICENSE.

Verwandtes

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables Claude to interact with core AWS services like S3, EC2, RDS, and CloudWatch, along with a generic SDK wrapper for any AWS operation. It also supports cost monitoring and optional vector store capabilities for document ingestion and search.
    10
    3
    The Unlicense
  • A
    license
    B
    quality
    D
    maintenance
    Enables Claude Desktop to interact with 57 AWS services using over 200 tools and local machine profiles. It supports multi-profile configurations and features a read-only safe mode by default to manage infrastructure like EC2, S3, and Lambda securely.
    100
    BSD 3-Clause
  • A
    license
    A
    quality
    D
    maintenance
    Enables browsing S3 buckets and objects, and generating secure presigned URLs for downloads and uploads, through natural language commands in MCP clients like Claude Desktop.
    3
    10
    3
    MIT

View all related MCP servers

Related MCP Connectors

  • Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.

  • Hosted Amazon Seller and Vendor MCP server for Claude, ChatGPT, Cursor, Codex, Gemini, Copilot.

  • OCR, transcription, file extraction, and image generation for AI agents via MCP.

View all MCP Connectors

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/hypark5540/cloudcraft-mcp'

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