Skip to main content

MCP server and CLI for Anycubic Cloud printers.

Project description

Anycubic Cloud MCP (Kobra 3)

Cloud-backed MCP server and helper scripts for Anycubic printers. This uses the reverse-engineered Anycubic cloud REST API (and MQTT where supported) from the hass-anycubic_cloud integration.

Quick Start

Install from GitHub (recommended):

python3 -m pip install "git+https://github.com/aegis-agent/anycubic-cloud-mcp.git"

Install with pipx (isolated CLI):

pipx install anycubic-cloud-mcp

Or from source:

python3 -m pip install -r requirements.txt
python3 -m pip install -e .

Run the MCP server (stdio transport by default):

anycubic-cloud-mcp

HTTP transport (optional):

anycubic-cloud-mcp --http --host 0.0.0.0 --port 8000

HTTP endpoint: http://<host>:<port>/mcp

Configure auth either via environment variables or the auth_set tool.

Environment variables:

  • ANYCUBIC_AUTH_MODE: slicer (recommended) or web
  • ANYCUBIC_TOKEN: token string
  • ANYCUBIC_DEVICE_ID: only for android auth mode

Token Sources

Slicer Next (recommended)

This enables MQTT logon and better status updates.

Windows (Slicer Next):

  • Config file:
    • %AppData%\AnycubicSlicerNext\AnycubicSlicerNext.conf
  • The access_token value is the token you want.

Extract with the helper script (macOS):

anycubic-slicer-token

Tip: clear access_token in the Slicer config after extracting it to avoid logging out your MCP session when the slicer refreshes.

Web token (REST-only)

  • Go to https://cloud-universe.anycubic.com/file
  • Sign in
  • Open DevTools console
  • Run window.localStorage["XX-Token"]
  • Copy the token string

MCP Tools

Core tools you asked for:

  • printer_list
  • printer_status
  • print_pause, print_resume, print_cancel
  • cloud_file_list, cloud_file_upload, cloud_file_delete
  • print_upload, print_cloud_gcode, print_cloud_file
  • ace_set_slot, ace_feed_filament, ace_retract_filament, ace_set_auto_feed
  • ace_dry_start, ace_dry_stop

Notes:

  • slot_index_list is 1-based. Use 1..4 for a single ACE and 1..8 for dual ACE.
  • For Kobra 3, Slicer Next tokens are currently the most reliable way to keep MQTT working.

Config File

You can save tokens to a local config file using auth_set with save: true. Default path:

  • ~/.config/anycubic-cloud-mcp/config.json

If you prefer a custom path, set:

  • ANYCUBIC_CONFIG_PATH=/path/to/config.json

Installer

The installer supports token extraction on macOS and optional SSH sync.

Token extraction (prints token and syncs config to server):

anycubic-cloud-mcp-install token --ssh agent@aegis

Server setup with systemd (HTTP transport):

sudo anycubic-cloud-mcp-install server --systemd --http --host 0.0.0.0 --port 8000

One-shot installer wrapper (uses REPO_URL):

REPO_URL="https://github.com/aegis-agent/anycubic-cloud-mcp.git" scripts/install.sh token --ssh agent@aegis

Pipx bootstrap:

scripts/install.sh --pipx token --ssh agent@aegis

Pipx upgrade (CLI command):

anycubic-cloud-mcp-install pipx --ensure-path

Agent Integrations

Use the installer to register this MCP server with common agent harnesses. Interactive mode shows a selection menu when --targets is omitted.

anycubic-cloud-mcp-install integrate --targets claude-code codex cursor opencode factory

Menu-driven selection:

anycubic-cloud-mcp-install integrate

File-based installs (edit config files instead of using CLIs/deeplinks):

anycubic-cloud-mcp-install integrate --install-mode file --targets claude-code codex

Copy failed raw commands/config to clipboard:

anycubic-cloud-mcp-install integrate --copy-failures

Project-scope installs (Cursor, OpenCode, Factory):

anycubic-cloud-mcp-install integrate --targets cursor opencode factory --scope project --project-dir /path/to/project

Notes:

  • Cursor user-scope installs return a deeplink; add --cursor-open to open it.
  • OpenCode config uses ~/.opencode.json or .opencode.json (project).
  • Factory config uses ~/.factory/mcp.json or .factory/mcp.json (project).
  • Claude Code config defaults to ~/.claude/mcp.json (override with --claude-config-path).
  • Codex config defaults to ~/.codex/mcp.json (override with --codex-config-path).
  • Override user config paths with --cursor-config-path, --opencode-config-path, or --factory-config-path.

Firmware Note

Firmware version typically does not affect cloud API calls directly, but Anycubic may change auth or API behaviors server-side. If you are stable on 2.4.4.3, you can stay there unless you need fixes in 2.4.5.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anycubic_cloud_mcp-0.2.4.tar.gz (87.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anycubic_cloud_mcp-0.2.4-py3-none-any.whl (95.9 kB view details)

Uploaded Python 3

File details

Details for the file anycubic_cloud_mcp-0.2.4.tar.gz.

File metadata

  • Download URL: anycubic_cloud_mcp-0.2.4.tar.gz
  • Upload date:
  • Size: 87.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for anycubic_cloud_mcp-0.2.4.tar.gz
Algorithm Hash digest
SHA256 a400c9a0393d8023e67c53355dfce46fa6773a3a05f891867321a7c3bdadccfa
MD5 77fea5a7b3172d6ac63a3d494969ec92
BLAKE2b-256 1c53d09d9edfa4a664b327d9055a2a1e8a54d07e9812b6c10e357d04a9a2c588

See more details on using hashes here.

File details

Details for the file anycubic_cloud_mcp-0.2.4-py3-none-any.whl.

File metadata

File hashes

Hashes for anycubic_cloud_mcp-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 7a58f26587228e78511bf949312154ee4582bb33c4a710b36b63b166b712eab3
MD5 1fdb3ad8a76c3f7b8eb388d1976225a9
BLAKE2b-256 7d1058091b896f2a157f4194021fded2963675ed159a920fc3a5a192e49ef8b5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page