Skip to main content
Glama
giasonpooni

Atelier MCP

by giasonpooni

Atelier MCP

Observe-first Model Context Protocol server for small-format atelier mills. Token-gated rough and finish passes. Works with Claude, Grok, and Codex.

This is not a factory. It is the control plane a sculptor or maker can put in front of a machine they already own — foam, plaster, wood, soapstone, limestone — so an assistant can see the job and cannot fire the spindle unless a human returns a server-minted token bound to that exact pass.

Claude / Grok / Codex
        |  MCP stdio
        v
   atelier-mcp
        |  GuardLattice
        |  plane AND job AND units AND extract AND envelope
        |  AND magnitude AND live AND token_binding AND forbid
        v
   sim cell  (GRBL live path is opt-in, later)

There is no send_gcode. There is no request_jog. A finish pass ends in hand-off. The human finishes the work.

Status (0.1.0)

Plane

Tools

Observe

capabilities, cell_status

Prepare

bind_job, inspect_program, mark_handoff

Command

request_rough, request_finish_pass

Recover

feed_hold, emergency_stop

Default backend is an in-process simulator. Command is off until ATELIER_MCP_ALLOW_COMMAND=1.

Related MCP server: foundry net-industrial

Install

pip install git+https://github.com/giasonpooni/Atelier-MCP.git
atelier-mcp

From a clone:

pip install -e ".[dev]"
python -m pytest

Clients

Same binary. Configs in examples/.

Leave command and live off until you have read SAFETY.md.

Claude Desktopexamples/claude_desktop_config.json

Grok Build

grok mcp add atelier atelier-mcp

Codexexamples/codex_config.toml

A pass

1. bind_job(stock, bit, material=foam, extract_on=false)
2. inspect_program(gcode)          # static, not a proof
3. request_rough(...)              # preview + token
4. human reads the preview
5. request_rough(..., token=...)   # commit
6. request_finish_pass(...)        # same two-step
7. mark_handoff()                  # chisel is yours

Swap the target between step 3 and step 5 → token_payload_mismatch. Soapstone without extract_on=trueextract gate stays open. Finish stepdown 1.5 mm → magnitude stays open.

Environment

Variable

Default

ATELIER_MCP_ALLOW_COMMAND

0

ATELIER_MCP_LIVE

0

ATELIER_MCP_ALLOW_RECOVER

1

ATELIER_MCP_MAX_STEPDOWN_MM

2.0

ATELIER_MCP_MAX_FINISH_MM

0.4

What this is not

Not Monumental Labs. Not a 7-axis stone cell. Not pour-cell telemetry. Not a digital twin. Not a finished sculpture.

Optional CSE fields (element_id, world_digest) may be stored on a job; v0.1 does not yet refuse on disposition. See docs/ROADMAP.md.

License

Apache-2.0. No warranty. SAFETY.md.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Security-enforcing MCP proxy that sits between an AI agent and any number of downstream MCP servers, intercepting every tool call through a capability-token policy gateway that can allow, deny, or escalate to human approval before the call reaches any real tool. It also exposes built-in operator tools for approval workflows, audit trail queries, token management, voice/HUD output, and hierarchical
    21
    14
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to securely access local machine capabilities such as file operations, shell commands, Skills, and Pi Tools through a controlled MCP interface with token authorization and multiple tunnel options.
    19 npm
    1
    MIT