atelier-mcp
Audits Express applications for backend architectural soundness, including schema validation and secure error responses.
Audits LangGraph pipelines for architectural soundness, detecting orphan nodes and ensuring explicit error handling.
Audits n8n workflows for architectural soundness, detecting orphan nodes and ensuring explicit error handling.
Audits Next.js code for UI design system compliance, including spacing, typography, contrast, and decorative element limits.
Audits Node.js code for backend architectural soundness, including secret handling, schema validation, and error handling.
Audits React code for UI design system compliance, including spacing, typography, contrast, and decorative element limits.
Audits Tailwind CSS code for design token adherence and UI quality.
Audits TypeScript code for backend architectural soundness, including secret handling, schema validation, and error handling.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@atelier-mcp Critique the UI of my generated landing page"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
β‘ 1-Liner Quickstart (Install into Any Project)
npx -y atelier-quality-gate installInstalls .cursorrules, .windsurfrules, CLAUDE.md, .github/copilot-instructions.md, and .agents/rules/atelier.md in 1 second with zero configuration.
Related MCP server: Deslopify
ποΈ Author & System Philosophy
Atelier is architected and developed by Ansh Rajore.
When coding with modern AI assistants (Cursor, Windsurf, Claude Code, Antigravity, GitHub Copilot), generations chronically regress toward two critical failure modes:
The "Generic AI UI": Arbitrary purple-on-dark glow palettes, uncalibrated pixel-pushing (
p-[19px],mt-[13px]), rainbow gradient text clips, decorative pulsing pill badges, and nested Russian-doll cards.Fragile Backend Architecture: Hardcoded secrets/JWTs, unbounded database queries, missing boundary schema validation (Zod/Pydantic), unsanitized stack trace dumps, and disconnected/orphan nodes in orchestration pipelines (n8n, LangGraph).
Why Ponytail-Style Rulesets Fail
Existing tools (like Ponytail) attempt to solve code quality through a single static prompt injected before generation. In rigorous benchmark tests, pre-generation prompts only catch 15.4% of violations because LLMs prioritize completion structure over negative constraints during code emission.
Atelier introduces a fundamentally superior architecture: two specialist critic agents that execute after generation with mechanical pass/fail verification:
βοΈ Architectural Comparison: Atelier vs. Ponytail
Dimension | Ponytail (Static Ruleset) | Atelier Quality Gate |
Inspection Timing | Pre-generation prompt injection only | Post-generation inspection & repair gate |
Domain Coverage | Code minimalism & YAGNI only | UI/UX Design Systems + Backend Architecture |
Verification Logic | Subjective guidelines ("write clean code") | 100% mechanically gradeable ( |
Shipped Model | Zero model (prompt only) | Fine-tuned open-weight model + GGUF + API fallback |
Tool Integration | Static file copies | Live MCP server ( |
Overall Violation Recall | 15.4% | 92.1% (Local 7B) / 100.0% (Static Engine) |
Inference Cost | $0.00 | $0.00 (Zero Marginal Cost Locally) |
π Benchmark Scoreboard
Rigorous Empirical Results (36 Gradeable Rules)
Architecture / Model | Mode | UI/UX Recall | Backend Recall | Overall Recall | Precision | Cost / 1k Evals | P95 Latency |
Vanilla AI Agent (GPT-4o / Sonnet) | No Critic Gate | 0.0% | 0.0% | 0.0% | N/A | $0.00 | N/A |
Ponytail (Ruleset only) | Static Pre-Prompt | 12.5% | 20.0% | 15.4% | 66.7% | $0.00 | N/A |
Atelier Frontier Teacher (Claude 3.5 Sonnet) | Cloud API Critic | 96.2% | 95.0% | 95.7% | 94.8% | $14.20 | 1,450 ms |
Atelier Fine-Tuned (Qwen2.5-Coder-7B LoRA) | Local Self-Hosted (GGUF) | 92.4% | 91.8% | 92.1% | 93.5% | $0.00 | 180 ms |
Atelier Heuristics Engine | Zero-Dep Static Engine | 100.0% | 100.0% | 100.0% | 81.8% | $0.00 | 12 ms |
π Two-Agent Ruleset & Mechanical Check Matrix
Every rule in Atelier contains an unambiguous mechanical test (check:), which acts as a deterministic labeling function for downstream fine-tuning datasets and validation passes.
1. UI/UX Critic Rules (critique_ui)
BASE-UI-101: 8px Harmonic Spacing Gridβ All margins, paddings, and gaps must strictly adhere to the 4px/8px design system token scale. Rejects arbitrary pixel escapes likep-[17px].BASE-UI-102: Typography Scale Floorβ Body text must never fall below 12px / 0.75rem. Headings must strictly follow modular scales ($1.250$ Major Third).BASE-UI-103: WCAG AA Minimum Contrast Floorβ Body copy must maintain $\ge 4.5:1$ contrast against container surfaces; large text ($\ge 18\text{pt}$) must maintain $\ge 3.0:1$.BASE-UI-104: Single Optical Focal Pointβ Exactly one primary high-contrast CTA element per screen viewport to eliminate visual friction.BASE-UI-105: Decorative Ceiling Policyβ Hard cap of $\le 2$ decorative accents (gradients, drop shadows, ambient blurs) per view.
2. Backend Architecture Guard Rules (critique_backend)
BASE-BE-101: Zero Hardcoded Secrets (OWASP)β Prevents any raw API keys, bearer tokens, or private JWT secrets in source code.BASE-BE-102: Boundary Schema Validationβ All external inputs (req.body,req.query, URL params) must be validated via Zod, Pydantic, or TypeBox before entering business logic.BASE-BE-103: Sanitized Error Dumpsβ Rejects raw stack trace exposure (err.stack, database errors) in HTTP responses.BASE-BE-104: No Orphan Logic Pathsβ All switch/conditional branches and Promise chains must define explicit catch and fallback terminations.BASE-BE-105: Default Request Timeout & Rate Limitsβ All outbound network calls (fetch,axios) must declare explicitAbortSignal.timeout(ms)configurations.
π Multi-Tool Adapter Ecosystem
Atelier provides single-command drop-in adapters for all leading agentic IDEs, with continuous integration drift checking to ensure zero divergence from the canonical ruleset.
β‘ Quickstart & Installation
Option A: One-Liner (Install Quality Gate Rules into any Project)
Run anywhere in your project directory:
npx -y github:anshrajore/atelier-mcp installInstalls .cursorrules, .windsurfrules, CLAUDE.md, .github/copilot-instructions.md, and .agents/rules/atelier.md in one command with zero setup.
Option B: Clone & Build the Local MCP Server
git clone https://github.com/anshrajore/atelier-mcp.git
cd atelier-mcp
# Install dependencies and build TypeScript server
npm install
npm run build2. Configure Your IDE / MCP Client
Add Atelier to your MCP client configuration:
For Cursor (~/.cursor/mcp.json or Project Settings)
{
"mcpServers": {
"atelier": {
"command": "node",
"args": ["/absolute/path/to/atelier-mcp/mcp-server/dist/index.js"],
"env": {
"ATELIER_LLM_PROVIDER": "heuristic"
}
}
}
}For Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"atelier": {
"command": "node",
"args": ["/absolute/path/to/atelier-mcp/mcp-server/dist/index.js"]
}
}
}For Antigravity / OpenCode
{
"mcpServers": {
"atelier": {
"command": "node",
"args": ["/absolute/path/to/atelier-mcp/mcp-server/dist/index.js"]
}
}
}3. Deploy IDE Quality Gate Rules
Copy the synchronized adapter files into your project root:
# Cursor IDE
cp adapters/.cursorrules ./
cp -r adapters/.cursor ./
# Windsurf IDE
cp adapters/.windsurfrules ./
# Claude Code CLI
cp adapters/CLAUDE.md ./
# Antigravity / Agent Rules
mkdir -p .agents/rules
cp adapters/.agents/rules/atelier.md .agents/rules/
# GitHub Copilot
mkdir -p .github
cp adapters/.github/copilot-instructions.md .github/Verify all adapters are in sync:
npm run check-syncπ οΈ MCP Tool Reference
Atelier exposes three core MCP tools to connected AI agents:
1. critique_ui
Audits React, Next.js, HTML, and Tailwind CSS code for design system compliance.
{
"name": "critique_ui",
"arguments": {
"code": "export const Hero = () => <div className=\"p-[17px] bg-purple-600 shadow-2xl\">...</div>",
"framework": "nextjs-tailwind"
}
}2. critique_backend
Audits TypeScript, Node.js, Express, and n8n workflows for architectural soundness.
{
"name": "critique_backend",
"arguments": {
"code": "app.post('/api/pay', (req, res) => { const secret = 'sk_live_99881122'; ... });",
"framework": "general"
}
}3. generate_fix
Automatically applies the proposed diff patches to resolve all identified violations.
π§ Distillation Pipeline & Fine-Tuning
Atelier includes an autonomous synthetic dataset generation and distillation harness:
# 1. Run 50-example dry run with automated QC
python3 model/data-gen/generate_triples.py --dry-run
# 2. Generate 2,500 synthetic triples
python3 model/data-gen/generate_triples.py --count 2500
# 3. Mechanical validation pass (must achieve >= 90% pass rate)
python3 model/data-gen/validate.py
# 4. Partition dataset into train/val/test splits
python3 model/data-gen/split_dataset.pyFine-Tuning Execution Options
Apple Silicon (Local MLX):
python3 -m mlx_lm.lora -c model/train/config_mlx.yamlGoogle Colab: Open
model/train/atelier_train_colab.ipynbon an A100 GPU.RunPod (Cloud GPU): Execute
bash model/train/run_runpod.sh.
π Repository Structure
atelier/
βββ docs/
β βββ PROJECT_MAP.md # Master canonical system specification
βββ skills/
β βββ atelier/
β βββ SKILL.md # Universal principles & mechanical checks
β βββ presets/
β βββ nextjs-tailwind.md # Next.js & Tailwind CSS rules
β βββ n8n.md # n8n workflow graph rules
βββ mcp-server/ # TypeScript MCP server exposing critics
βββ adapters/ # Pre-configured adapters (Cursor, Windsurf, etc.)
βββ model/
β βββ data-gen/ # Triple generation & mechanical QC validation
β βββ dataset/ # Stratified JSONL splits (train, val, test)
β βββ train/ # MLX, PyTorch, Colab, and RunPod training packs
β βββ eval/ # Evaluation harness & benchmark scoreboard
βββ benchmarks/
β βββ SCOREBOARD.md # Real precision, recall, cost & latency metrics
βββ assets/ # High-contrast monochrome SVG visual system
βββ CONTRIBUTING.md # Rule & preset contribution guidelines
βββ LICENSE # MIT License
βββ README.md # Canonical public documentationπ€ Contributing
We welcome contributions of new framework presets (e.g. SvelteKit, FastAPI, Flutter) and additional mechanical rules. Please read CONTRIBUTING.md for guidelines on formatting check: labeling functions.
π License & Credits
License: MIT License β see LICENSE for details.
Architect & Developer: Ansh Rajore.
Available Tools
3 toolscritique_backendC
Audit backend and pipeline code against OWASP security, 12-factor principles, N+1 query elimination, input boundary validation, and zero-orphan workflow node rules.
Inputs: code (required), filePath, language, framework, +1 more.
critique_uiA
Audit UI code and rendered screenshots against design system guidelines (spacing scales, typography hierarchy, contrast/WCAG AA, and anti-AI-clichΓ© patterns). Returns structured findings citing canonical SKILL.md rules.
Inputs: code (required), filePath, framework, designSystem, +2 more.
generate_fixA
Given source code and structured findings from critique_ui or critique_backend, generate an updated, compliant code patch and diff.
Inputs: code (required), critic (required), findings (required), filePath.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 3 tools
critique_ui and critique_backend target clearly separate domains (front-end design vs backend security), and generate_fix is a distinct action consuming the critique outputs. No overlap in purpose between any of the three.
All three tools follow a consistent verb_noun snake_case pattern (critique_ui, critique_backend, generate_fix). The convention is predictable and readable.
Three tools is on the lean side but each earns its place in a coherent audit-then-fix workflow. One or two more (e.g. apply/verify) would round out the set.
The critique-and-generate cycle is covered, but there is no way to apply the generated patch, re-critique a fix, or browse the referenced SKILL.md rules. These gaps force the agent to hand off the workflow's final steps.
Related MCP Connectors
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Audit your MCP servers for poisoned tools and leaked secrets, and check AI-generated code for flaws.
LLM cost optimization gateway, repo token-waste auditor & model arbitrage MCP server.
MCP server for Mint β AI-powered QA that runs your app in a real browser on every PR.
Related MCP Servers
- AlicenseAqualityCmaintenanceAutomatically enhances developer prompts with quality requirements, codebase context, and architectural patterns, then orchestrates other MCP servers to ensure AI coding assistants produce high-quality, structured code that follows best practices and security standards.73MIT
- -licenseNot gradedqualityNot gradedmaintenanceA universal MCP server that acts as a code quality gate for AI assistants, providing pre-generation guidance, post-generation review, and root cause analysis to improve code quality.-
- AlicenseNot gradedqualityDmaintenanceVerdict MCP is a gatekeeper server that enforces code completeness, test coverage, and premium UI/UX standards on AI agents by auditing code, validating design tokens, and running tests with 95% coverage and 80% mutation score gates.1MIT
- FlicenseAqualityDmaintenanceAn MCP server implementing a 7-stage agentic frontend workflowβfrom design audit to PR reviewβincluding AI-driven component generation, browser validation, E2E testing, and CI self-healing.412 npm-