CNCjs MCP Server
Bridges Claude Code to CNCjs to enable remote control and monitoring of GRBL-based CNC machines. It provides a comprehensive toolset for managing G-code jobs, machine movement, and safety operations through natural language.
README
CNCjs MCP Server
MCP server bridging Claude Code to CNCjs for GRBL CNC control (FoxAlien XE Ultra).
Architecture
Claude Code ←stdio/MCP→ cncjs-mcp (Node.js) ←Socket.IO v1→ CNCjs :8000 ←USB Serial→ GRBL
Tools (30 total)
Read-Only (14)
list_serial_ports, get_connection_status, get_machine_state, get_machine_position, get_work_coordinate_offset, get_machine_settings, get_parser_state, get_loaded_gcode, get_job_progress, get_workflow_state, get_feeder_status, list_macros, list_machines, get_alarm_info
Control (11)
connect_to_port, disconnect_port, load_gcode, start_job, pause_job, resume_job, stop_job, home_machine, unlock_machine, set_feed_override, set_spindle_override
Direct Motion (3)
send_gcode, jog, run_macro
Critical Safety (2)
emergency_stop (soft reset 0x18), feed_hold
Windows PC Setup for CNCjs
-
Node.js (LTS recommended, v18+) — download from https://nodejs.org
-
CNCjs — install via npm after Node.js is set up:
npm install -g cncjsOr download the desktop app installer from the CNCjs GitHub releases page.
-
USB/Serial driver for your FoxAlien XE Ultra — likely one of:
- CH340 driver (most common on FoxAlien boards) — download from the manufacturer site
- CP210x driver (if it uses a SiLabs chip)
- Windows 10/11 may auto-install these, but if your board doesn't show up in Device Manager under "Ports (COM & LPT)", install the driver manually
Quick start after install:
cncjs
Then open http://localhost:8000 in your browser. Your FoxAlien will show up as a COM port (e.g., COM3). Select it, set baud rate to 115200, controller type Grbl, and connect.
Optional but recommended:
- Chrome/Edge — CNCjs web UI works best in Chromium browsers
- Python (sometimes needed for
node-gypnative module builds during npm install)
MCP Server Setup
npm install
npm run build
Register with Claude Code:
claude mcp add cncjs-mcp node /path/to/cncjs-mcp/build/index.js
Environment Variables
CNCJS_URL— CNCjs server URL (default:http://localhost:8000)CNCJS_TOKEN— Optional JWT token for CNCjs authentication
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.