MCP server for Krexel — ship AND edit static sites from any AI assistant that speaks MCP. Your AI is the brain, Krexel is the hands.
krexel-mcp has well-structured tool definitions with clear naming (verb_noun pattern), comprehensive input schemas with proper JSON Schema types, and detailed descriptions. However, parameter descriptions are inconsistent, some parameters lack descriptions entirely (e.g., 'limit' in list_deploys), and output schemas are not documented. Error handling guidance is minimal. The server demonstrates solid fundamentals but falls short of production-grade polish in parameter documentation and response structure clarity.
Patch a file on a live deployed site and ship a new patch deploy. The AI decides what to change; the MCP ships the patch. Returns the new deploy_id + preview_url.
Get build logs for a deploy. As of 2026-07-19 this tool returns a structured 'no logs available' response from the local stdio MCP (the worker holds the authoritative logs; full impl lands in Release B).
Return current account, deploy count, platform, and state directory.
List recent deploys from the local Krexel state file. Optionally filter by domain.
List the files in a deployed site (paths, sizes, sha256). Returns metadata only — use read_file to fetch content.
Read a single file's contents from a deployed site. Path is relative to the site root (e.g. 'index.html', 'assets/logo.svg').
Output schemas not documented. Tools return responses but LLMs cannot see what fields to expect, forcing them to guess at downstream field names and types.
Parameter descriptions missing or incomplete. 'limit' in list_deploys has no description; 'domain' in rollback lacks context on format/validation; 'to' parameter in rollback is minimally described.
get_status tool description is vague ('Return current account, deploy count, platform, and state directory'). Does not explain when to call it or what 'account' means in this context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 60 | 2026-07-28+ | v2 |
Mark a previous deploy as the current 'last_good' for a domain. As of 2026-07-19 this tool refuses the call: rollback in production requires the Krexel dashboard (wired in Release B).
Encrypt and persist an environment variable for a domain. Stored at $KREXEL_HOME/env/<domain>.enc with AES-256-GCM using KREXEL_MASTER_KEY.
Upload a built site folder to Krexel. Zips the folder, stages it locally, and POSTs to the Krexel orchestrator API. Returns a deploy_id (always) and preview_url. If the orchestrator is unreachable the response carries an `api_ok: false` flag with the upstream error — never fakes success.
Error handling lacks recovery guidance. Tools document failure modes (e.g., 'api_ok: false' in ship_site, 'refuses the call' in rollback) but do not guide LLMs on next steps or retry strategies.
edit_file 'find' parameter is optional but only meaningful for replace/replace_all operations. Conditional parameter dependencies are not documented, risking LLM misuse.