原型 · 预览版:收录官方注册中心里的全部服务器,每 30 分钟同步一次。评价和账户功能将在后续阶段推出。
PopNx MCP为使用 AI 的人准备的 MCP 服务器 · 用大白话讲清楚

Orcaslicer MCP

作者:MaxEllis版本 0.1.19i★ –i在你的电脑上运行
注册名称io.github.MaxEllis/orcaslicer-mcp

安装

概览

作者提供的说明(英文原文)

Work a running OrcaSlicer with AI: slice, tune, and understand what each setting costs

PopNx MCP 的三大支柱

这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。

它能帮你做什么

我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。

  • 连接方式: 在你的电脑上运行
  • 传输方式: stdio
  • 分类: 其他
  • 你需要填写:ORCA_API_TOKEN, ORCA_PRINTER_API_KEY

安装

选择你使用的 AI 应用,然后复制设置。

安装之前

  • 基础检查:1 项中通过 1 项
  • 在你的电脑上运行,拥有你的用户账户的权限(文件、网络、应用)。
  • 需要你自己填写: ORCA_API_TOKEN, ORCA_API_URL, ORCA_MCP_ALLOW_KEYS, ORCA_PRINTER_URL, ORCA_PRINTER_API_KEY, ORCA_PRINTER_ID

标为机密的值是你账户的钥匙。千万不要分享给别人,也不要粘贴到聊天里。

你需要

  • PyPI已安装 Python 的 uv(用于 uvx 命令)

你用的是哪个应用?

在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。

打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json

{
  "mcpServers": {
    "orcaslicer": {
      "command": "uvx",
      "args": [
        "orcaslicer-mcp"
      ],
      "env": {
        "ORCA_API_TOKEN": "your-value",
        "ORCA_API_URL": "your-value",
        "ORCA_MCP_ALLOW_KEYS": "your-value",
        "ORCA_PRINTER_URL": "your-value",
        "ORCA_PRINTER_API_KEY": "your-value",
        "ORCA_PRINTER_ID": "your-value"
      }
    }
  }
}

在终端中运行这条命令

claude mcp add orcaslicer --env ORCA_API_TOKEN=your-value --env ORCA_API_URL=your-value --env ORCA_MCP_ALLOW_KEYS=your-value --env ORCA_PRINTER_URL=your-value --env ORCA_PRINTER_API_KEY=your-value --env ORCA_PRINTER_ID=your-value -- uvx orcaslicer-mcp

运行前请先填写空着的值。

在 Cursor 中打开

或者自己复制设置

粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json

{
  "mcpServers": {
    "orcaslicer": {
      "command": "uvx",
      "args": [
        "orcaslicer-mcp"
      ],
      "env": {
        "ORCA_API_TOKEN": "your-value",
        "ORCA_API_URL": "your-value",
        "ORCA_MCP_ALLOW_KEYS": "your-value",
        "ORCA_PRINTER_URL": "your-value",
        "ORCA_PRINTER_API_KEY": "your-value",
        "ORCA_PRINTER_ID": "your-value"
      }
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

在 VS Code 中打开

或者自己复制设置

粘贴到项目中的 .vscode/mcp.json

{
  "servers": {
    "orcaslicer": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "orcaslicer-mcp"
      ],
      "env": {
        "ORCA_API_TOKEN": "your-value",
        "ORCA_API_URL": "your-value",
        "ORCA_MCP_ALLOW_KEYS": "your-value",
        "ORCA_PRINTER_URL": "your-value",
        "ORCA_PRINTER_API_KEY": "your-value",
        "ORCA_PRINTER_ID": "your-value"
      }
    }
  }
}

浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。

这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。

你的选择通过 Cookie 保存在这台设备上,无需账户。

需要你填写的值

  • ORCA_API_TOKEN 机密 必填 env
    Remote API token from the OrcaSlicer MCP build (Preferences -> Remote API)
  • ORCA_API_URL env
    OrcaSlicer Remote API address; defaults to http://127.0.0.1:13130
  • ORCA_MCP_ALLOW_KEYS env
    Optional comma-separated config keys the MCP may change even though they run code or drive the printer directly (post_process, *_gcode, print host settings). Wildcards allowed. Blank by default.
  • ORCA_PRINTER_URL env
    Optional printer address; by default the address in OrcaSlicer's active printer profile is used. A user name and password can be part of it (http://user:password@192.0.2.10); percent-encode special c…
  • ORCA_PRINTER_API_KEY 机密 env
    Optional API key for printers that need one (OctoPrint, or Moonraker with authorization).
  • ORCA_PRINTER_ID env
    Optional printer name for the outcome store; defaults to the host name of ORCA_PRINTER_URL when that is set, otherwise the printer profile's name, otherwise unknown.

这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。

它能做什么

它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。

基础检查i

我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日

  • ✓ 通过

    作者与仓库一致

    注册名称已通过 GitHub 账户 MaxEllis 验证,该账户拥有此仓库

  • … 尚未检查

    仍在维护

    我们还没有从 GitHub 读取这个仓库

  • … 尚未检查

    有许可证

    我们还没有从 GitHub 读取这个仓库

  • – 不适用

    端点有响应

    它在你的电脑上运行,没有互联网端点

  • – 不适用

    使用 OAuth 登录

    在你的电脑上运行,改用本地设置

  • … 尚未检查

    工具描述中没有隐藏指令

    它在你的电脑上运行;我们只能读取互联网端点的工具列表

与“其他”中的其他服务器比较i

  • 星标数多于此分类中其他 18477 个服务器的 0%
  • 发布到注册中心的时间比此分类中其他 18477 个服务器的 88% 更新
  • 基础检查结果等于或优于此分类中其他 18477 个服务器的 100%

与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。

常见问题

Orcaslicer MCP 安全吗?

它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。

它需要哪些密钥或代码?

你需要填写:ORCA_API_TOKEN, ORCA_PRINTER_API_KEY

它在我的电脑上运行还是在云端?

它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。

它还在维护吗?

GitHub 仓库最后更新于–,最新版本(0.1.19)于5天前进入注册中心。

哪些应用可以使用它?

支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。

有什么可以替代它?

同一分类中有:Spec Driven Development, Remote Desktop Commander, Readfirst

替代选择

同一分类中其他作者的服务器,按星标数排序。

如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i

Spec Driven Development

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

作者:formulahendry起步阶段↓ 66/周★ 44014个月前更新

在你的电脑上运行

Remote Desktop Commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

作者:desktop-commander正在增长★ 2113天前更新

在云端运行✓ desktopcommander.app

Readfirst

What to read and check before changing a file: project rules, risks, checks and tests per file.

作者:jeonghun917正在增长↓ 5325/周今天更新

在你的电脑上运行

作者的 README

打开 README

按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。

OrcaSlicer MCP

Let Claude work alongside you in a real, running OrcaSlicer. It loads models, arranges the plate, tunes settings, slices, and reads the result back as numbers you can question: which feature ate the print time, what a setting actually does, whether a profile breaks your printer's physics. Every change lands in the GUI while you watch, so the slicer stays yours and you get better at it as you go.

This package is an MCP server: it bundles no model. It talks to OrcaSlicer, at an address you configure (localhost by default), and, when you use the printer tools, makes read-only requests to your 3D printer. It sends the printer no commands and uploads nothing to it. The model comes from your MCP client. If that client uses a hosted one, your conversation goes there as any chat does; your models, profiles, and gcode stay on the machine running the slicer. Point the client at a local model and nothing goes to a hosted service.

What it can do

Knowing what the settings mean

An offline settings reference ships with the package, carrying the authoritative label, tooltip, type, range, enum, and default for each key, so describe_setting, search_settings, and compare_settings answer from OrcaSlicer's own source instead of guessing. consult composes curated slicing knowledge and your saved notes by topic, symptom, or goal.

check_profile_physics is a deterministic gate. It overlays proposed changes on the live config, runs flow, temperature, geometry, and cooling math, then returns ok, warnings, or blocked. Accelerations your printer cannot reach and speeds past the flow ceiling get caught before they reach a print.

Settings

Read and write any of roughly 800 OrcaSlicer settings on the live config, for the whole plate or scoped narrower: get_config, set_config, find_config_keys, set_layer_height, set_height_range for a band of layers, and set_object_config for one object's overrides.

On a multi-filament setup, per-filament keys are read merged across every loaded slot but written one preset at a time, and selecting a preset discards unsaved overrides in every group. So make filament edits first and print edits second; docs/order-of-operations.md explains why and gives the sequence.

Presets

list_presets, select_preset, get_preset_config, edit_preset, save_preset, rename_preset, delete_preset. select_preset discards unsaved overrides in every group, not only the one switched; see docs/order-of-operations.md.

Slicing, and reading the result back

slice, slice_and_wait, apply_and_slice, cancel_slice, get_slice_status, get_slice_warnings, get_gcode.

get_slice_breakdown returns per-feature time, filament, and flow. OrcaSlicer shows the same information in the legend beside its preview, sized for a screen; this returns it as numbers an assistant can compare and act on:

role                    time      share   filament   mean flow

inner_wall 5m 41s 30.8% 6.43 g 16.0 mm3/s outer_wall 3m 19s 18.0% 3.20 g 13.6 mm3/s sparse_infill 3m 07s 17.0% 3.57 g 17.0 mm3/s internal_solid_infill 2m 01s 11.0% 1.72 g 11.8 mm3/s bridge 52s 4.7% 0.26 g 4.4 mm3/s support_interface 36s 3.2% 0.52 g 12.3 mm3/s overhang_perimeter 28s 2.5% 0.13 g 3.7 mm3/s internal_bridge 21s 1.9% 0.45 g 19.9 mm3/s top_surface 19s 1.7% 0.29 g 12.5 mm3/s brim 12s 1.1% 0.21 g 14.7 mm3/s bottom_surface 7s 0.7% 0.10 g 11.8 mm3/s 18m 24s 16.89 g

It answers which feature is eating the time without slicing repeatedly to find out. A prediction_check rides along and flags any role where the profile's requested speed got throttled at the flow ceiling.

compare_slices slices the current plate under several named variants and returns one comparison, so "what does layer height actually cost me?" is a single question rather than four manual slices. It applies each variant over your original config, restores it when done, and hands back a verdict plus a table with every delta already worked out:

Recommended: 0.4mm - fastest with no warnings.

variant time filament vs 0.4mm (baseline) 0.3mm 8h 10m 41.0 g +1h 30m (+22%), -7.0 g (-15%) 0.4mm * 6h 40m 48.0 g baseline 0.5mm 5h 20m 53.4 g -1h 20m (-20%), +5.4 g (+11%) 0.6mm 4h 35m 57.1 g -2h 05m (-31%), +9.1 g (+19%) thin-wall warning

It only crowns a winner when one variant genuinely beats the rest on time, filament, and warnings; when they trade off, it names the fastest, the lightest, and where the warnings landed, and leaves the choice in front of you. Pass detail=True for the per-feature split of each variant.

Models and the plate

load_model (.stl, .obj, .3mf, plus .step and .stp on fork v2.3.2-mcp.3 and later), list_objects with each object's world-space bounding box and an on_plate flag, transform_object, duplicate_object, delete_object, arrange_plate, auto_orient, check_placement, diagnose_plate, get_job_status.

Several plates

list_plates, add_plate, select_plate, delete_plate and move_object_to_plate build a multi-plate project the way the toolbar does: one part per plate, each sliced on its own. Slicing, G-code, renders and job status always act on the current plate, so select a plate before you slice it. list_objects reports the plate each object sits on. Keep arrange_plate away from a layout like this: OrcaSlicer's arrange packs every unlocked plate together again. These need fork v2.4.2-mcp.13 or later.

CANVAS slots. With an Elegoo Centauri Carbon 2 and a CANVAS unit, get_printer_slots reads the trays (label, status, material, colour), get_filament_slot_mapping shows which tray each filament of the current plate would use, and set_filament_slot_mapping changes that choice. Only the mapping can be changed. Nothing is sent: OrcaSlicer's Send dialog opens pre-filled and you still click Send. For any other printer, or when the printer cannot be reached, the reply is supported: false with a reason and a message. These need fork v2.4.2-mcp.14 or later.

Project files

save_project writes the project as a .3mf exactly as File > Save does: plates, placement, per-object and per-plate settings, height ranges, slot presets and colours, unsaved overrides. It never replaces an existing file unless told to. open_project brings a saved project back as File > Open Project does (not a geometry import), open_recent_project does the same for an entry of File > Recent, and new_project starts over. OrcaSlicer's prompts ("save changes?", "keep modified presets?") would hang a remote caller, so each one is answered from an argument: if_unsaved is fail by default, so nothing is lost without being asked for. get_project and get_status report the project's name, path and whether there is something to save, so an agent knows when to save.

Around the files themselves: list_recent_projects shows File > Recent and whether each file still exists, forget_recent_project tidies that list, browse_projects lists the .3mf files in a folder on the OrcaSlicer host, move_project_file renames or moves a project file (the window follows when it is the open project), and delete_project_file removes one from disk, permanently, never the open project's own file. These need fork v2.4.2-mcp.15 or later.

Plate renders

render_plate hands back a PNG, so the assistant can look instead of inferring from coordinates. A rotation reads instantly as a picture and barely at all as three Euler angles. Seven camera angles cover iso, top, front, left, right, rear, and bottom. Use frame="plate" to stand back for the whole bed, or frame="object" to lean in on the part. Requires fork v2.3.2-mcp.4 or later.

view="editor"view="preview"
Your models on the bed. Answers orientation, plate contact, and first-layer footprint.Sliced toolpaths coloured by feature role, so support placement is plain to see.

describe_plate answers the same questions as numbers and one sentence per object, computed from the sliced G-code: how the part stands (flat, tilted, or on an edge or corner, from first-layer contact against its widest layer), the first-layer footprint as islands, where overhang extrusions concentrate by height band, where support stands and where it touches the part, and which side the seams sit on, checked against seam_position. It exists because an assistant reads a sentence more reliably than a picture. Copies of an object are aggregated; the islands still show each copy's contact patch. On a plate of three tilted bracket copies it reads: "bracket.stl (3 copies) stands on an edge or corner: first-layer contact is 5% of its widest layer, in 3 islands of about 50 mm2 each. Overhang extrusions concentrate at Z 0 to 10 mm. Support is present from Z 0.4 to 56.8 mm, standing in 3 places and touching the part in 7 zones. Seams align on the +Y side (91%), matching seam_position=back."

Live state and memory

get_status and watch_events report what the slicer is doing now. remember persists machine, user, and project facts for later sessions, as plain local files in ~/.orcaslicer-mcp/notes/, relocatable with ORCA_MCP_NOTES_DIR.

Printer feedback

get_printer_status reports what the printer is doing now: idle, heating, printing, paused, finished, or stopped by a fault, with nozzle and bed temperatures, the job's progress and time left, and any problems the printer reports in its own words. Common Klipper messages come with a short plain-English hint. wait_for_printer waits until the printer has heated, started extruding, or finished the first layer, or until the job ends (completed, cancelled or failed). OctoPrint reports no extrusion, so there waiting for printing means waiting until the job is running with the heaters at temperature. It returns early if the printer reports a fault, or if the job ends before the point it waits for, as when you cancel a print while it heats. It rides out brief network drops: after three failed checks in a row it stops and reports "Lost contact with the printer" along with the last status it saw. list_print_history lists recent jobs with how each one ended, how long it took against the slicer's estimate, and, for failed ones, the printer's reason while its console still holds it. check_printer_match compares the active profile with the printer's own settings: nozzle size, bed size, speed and acceleration limits, maximum temperatures, and firmware retraction. A check without enough data comes back as unknown, and when nothing could be checked the answer says so instead of reporting a match. Asking for more acceleration than Klipper's max_accel earns a warning because current Klipper accepts the higher value when the G-code sets it (M204 or SET_VELOCITY_LIMIT), so the printer acc

只显示了开头部分;其余内容请在仓库中阅读

问 PopNx