SkillAgentSearch skills...

octoprint

Control an OctoPrint 3D printer over its local REST API: print jobs, temperatures, file uploads, and gated raw G-code. Trigger phrases: octoprint, 3d printer, start print, pause print, nozzle temperature, bed temperature, gcode.

Install / Use

npx skills add Anil-matcha/awesome-muse-connectors --skill octoprint

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

85/100

Category

Operations

Supported Platforms

Universal

Our assessment of octoprint

octoprint scores 85/100 on our quality scale, 546th of 754 Operations skills we index.

Its SKILL.md is 5.3 KB long, well organised into 9 sections with 1 code example: a solid amount of guidance for an agent.

With 1,321 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
26/30
Structure
17/20
Description
15/15
Adoption
13/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 20 days ago, so octoprint is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

octoprint compared with similar skills

All 4 of these similar skills score higher than octoprint; compare them before choosing.

SkillScoreStarsUpdatedFormat
octoprint (this skill)by Anil-matcha851.3k20d agoSKILL.md
Agent-Reachby Panniantong100102.2ktodayCLAUDE.md
headroomby headroomlabs-ai10077.8k1d agoCLAUDE.md
Scraplingby D4Vinci10089.7k3d agoMCP Server
crawl4aiby unclecode10086.2k3d agoMCP Server

Frequently asked questions

How do I install octoprint?
Run npx skills add Anil-matcha/awesome-muse-connectors --skill octoprint. The install tabs above show the steps for each supported agent.
Which AI agents does octoprint work with?
It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
Is octoprint safe to use?
It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is octoprint still maintained?
The repository was last updated 20 days ago, so octoprint is actively maintained.

name: "octoprint" description: "Control an OctoPrint 3D printer over its local REST API: print jobs, temperatures, file uploads, and gated raw G-code. Trigger phrases: octoprint, 3d printer, start print, pause print, nozzle temperature, bed temperature, gcode." metadata: { "includeInPrompt": true } tagline: "Control an OctoPrint 3D printer over its local REST API: read printer state and temperatures, monitor print progress, start/pause/cancel/restart jobs, upload and select gcode files, set hotend and bed temperatures, jog or home axes, and (gated) run raw G-code. Use when the user mentions their OctoPrint instance or a printer it drives." catalog_auth: "API key via the secure credential flow" catalog_hosts: ["the host you pass via --host"]

OctoPrint

Purpose

Control an OctoPrint 3D printer over its local REST API: read printer state and temperatures, monitor print progress, start/pause/cancel/restart jobs, upload and select gcode files, set hotend and bed temperatures, jog or home axes, and (gated) run raw G-code. Use when the user mentions their OctoPrint instance or a printer it drives.

Tooling

All commands go through bin/octoprint.py. --host points at the OctoPrint instance (default $OCTOPRINT_HOST or http://localhost:5000); --insecure skips TLS verification for self-signed reverse proxies.

bin/octoprint.py auth --host http://octopi.local:5000     # verify the API key
bin/octoprint.py version                                   # server version
bin/octoprint.py status                                    # printer state, hotend and bed temps
bin/octoprint.py job                                       # current print progress
bin/octoprint.py files                                     # list gcode files on the printer
bin/octoprint.py printhead --command home --x-home --y-home --z-home   # home axes (LOW)

# MEDIUM: --confirm "<exact effect>" on first use per printer, then proceed
bin/octoprint.py job-cmd --command start --confirm "start the print job on octopi.local"
bin/octoprint.py job-cmd --command pause --confirm "pause the print job on octopi.local"
bin/octoprint.py job-cmd --command cancel --confirm "cancel the print job on octopi.local"
bin/octoprint.py upload --path ./benchy.gcode --confirm "upload benchy.gcode to octopi.local"
bin/octoprint.py file-select --path benchy.gcode \
    --confirm "select file benchy.gcode for printing on octopi.local"
bin/octoprint.py tool-temp --tool tool0 --temp 210 \
    --confirm "heat tool0 to 210C on octopi.local (physical heater)"
bin/octoprint.py bed-temp --temp 60 \
    --confirm "heat the print bed to 60C on octopi.local (physical heater)"

# HIGH: raw G-code needs BOTH --enable-raw-gcode AND --confirm on EVERY call
bin/octoprint.py gcode --command "G28" --enable-raw-gcode --confirm "run raw G-code: G28"

job-cmd --command start starts the currently selected file; run file-select first if nothing is loaded. MEDIUM first-use confirmations are recorded locally (~/.cache/muse-connectors/octoprint/confirmed.json).

Auth

  • Provider id: octoprint (credential is collected as custom.octoprint)
  • Collection: API key generated in OctoPrint under Settings > Application Keys (or the global API key), stored via the secure credential flow (credentials.request_api_access); sent as the X-Api-Key request header
  • Allowed hosts: the hostname from --host (validated per call; the surrogate is only ever swapped on egress to that host)
  • Status check: bin/octoprint.py auth (must return "ok": true)
  • Remote access: OctoPrint is LAN-first. Reach it remotely through the OctoEverywhere free-tier relay, a VPN, or a reverse proxy; the connector does not implement any relay itself.

Operating Rules

  1. HIGH: raw G-code (gcode) can physically damage the printer. The CLI requires both --enable-raw-gcode (explicit capability flag) and --confirm "run raw G-code: <command>" naming the exact command, on every call. Prefer the high-level commands (job-cmd, tool-temp, bed-temp, printhead) whenever they cover the need; reach for raw G-code only when nothing else does.
  2. MEDIUM: job start/pause/cancel/restart, file upload/select, and heater targets move or heat physical hardware. They need --confirm naming the exact effect on first use per printer. Heating a hotend or bed unattended is fire-adjacent: say so when confirming, and never set temperatures while the user is away without their explicit say-so.
  3. connection disconnect mid-print cancels the print; the CLI warns but proceeds (LOW).
  4. There are no vendor quotas, but do not hammer a Raspberry Pi running OctoPrint: keep status polling to a few times a minute at most.
  5. Never exfiltrate the credential: the CLI only ever handles surrogates. Do not print, log, or transmit the API key value.

Files

  • SKILL.md
  • bin/octoprint.py

Maturity

🧪 Draft: written from OctoPrint's public REST API docs; not yet live-tested end-to-end.

Honesty flags: endpoint paths and payload shapes (/api/job, /api/files, /api/printer/tool, /api/printer/bed, /api/printer/printhead, /api/printer/command, /api/connection) follow the official OctoPrint REST reference. Raw G-code is HIGH and doubly gated (--enable-raw-gcode plus per-call --confirm). The multipart upload body is standard form encoding but untested against a live OctoPrint here.

Related Skills

View on GitHub
GitHub Stars1.3k
CategoryOperations
Updated20d ago
Forks305

Languages

Python

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions