The shadow-cljs-mcp server monitors shadow-cljs builds and provides real-time build status updates for LLM integration.
Monitor Build Status: Tracks build progress, failures, and completions in real-time
Get Build Details: Provides detailed information including compiled files, warnings, errors, and duration
LLM Integration: Offers a
get_last_build_statustool for LLMs to verify build success after ClojureScript file editsCustomizable Configuration: Allows optional server location configuration via
--hostand--portarguments
Monitors shadow-cljs builds and provides real-time build status updates for ClojureScript files, including compilation success/failure status, compiled files, error details, and build metrics.
Connects to a running shadow-cljs instance to track build progress and enable verification of build status after code changes through the npm package shadow-cljs-mcp.
shadow-cljs-mcp
A Model Context Protocol (MCP) server that monitors shadow-cljs builds and provides real-time build status updates.
Installation
Add the following to your Cline/Cursor/Claude whatever settings:
With optional server location
The --host and --port arguments are optional. If not provided, the server will default to connecting to localhost:9630.
Related MCP server: Jenkins Server MCP
Overview
This MCP server connects to a running shadow-cljs instance and tracks build progress, failures, and completions. It provides an MCP tool that LLMs can use to verify build status after making changes to ClojureScript files.
LLM Integration
Adding to Your LLM Notes
Add the following to your LLM's notes file (e.g., CLAUDE.md, cursorrules.md):
Example Tool Response
Successful build:
Failed build:
Usage Notes
LLMs should call get_last_build_status after each ClojureScript file edit
Compilation errors will be shown in detail for easy debugging
Successful builds show which files were compiled and how long they took
Make sure shadow-cljs is running before starting this server
Requirements
Running shadow-cljs instance (defaults to localhost:9630 if not configured otherwise)