MCP server exposing machine operations for the Maslow CNC control panel via gRPC, HTTP/JSON gateway, and MCP tool registry
Critical gaps across all three tools. Tool definitions are inferred from scattered Svelte/Rust files rather than centrally registered with explicit schemas. No input schemas visible in source code. Descriptions exist but are vague and lack LLM-optimization guidance. Parameters lack type definitions and constraints. No output schemas documented. Error handling absent. This server does not meet baseline production standards.
Read a local G-code file and parse it into a 2D toolpath for preview and the trace-boundary action. Large files (100k+ lines) take real time to parse, so the read + parse runs on a blocking thread and off the async runtime that also drives the WebSocket connection loop.
Send a single G-code line to the machine for execution
Send a sequence of G-code lines to the machine, paced and ack-gated (one line at a time, stopping on the first error)
No input schemas visible in source code. All three tools lack JSON Schema definitions with type information and parameter constraints.
Tool definitions are inferred from scattered Svelte/Rust component files (MainTab.svelte, ToolpathView.svelte, toolpath.rs) rather than centrally registered. No explicit tool registration with MCP server visible.
Descriptions lack LLM-optimization. 'send_line' (35 chars) and 'send_line_sequence' (40 chars) are below the 50-char minimum for actionable guidance. No WHEN/WHY context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
No output schemas documented. LLMs cannot infer what load_toolpath returns (Toolpath struct with segments, bounds?) or what send_line/send_line_sequence return (success/failure? ack count?). Breaks tool chaining.
No error handling guidance. Tools that write to hardware (send_line, send_line_sequence) have no documented error responses, recovery paths, or retryability classification. Agents cannot self-correct on failure.