Official MCP server for Element Node CMS — lets AI agents (Claude Code, Cursor, Windsurf…) build and manage Element Node sites via the REST API.
Element Node MCP exposes 12 CMS tools with Italian descriptions and reasonable naming (verb_noun pattern). However, critical gaps undermine production readiness: (1) Input schemas are present but minimal, most tools accept empty objects or single untyped parameters, lacking type constraints and validation guidance. (2) Descriptions are domain-specific but often assume CMS expertise; parameter descriptions are sparse or missing entirely. (3) No output schemas documented, LLMs cannot predict response structure for chaining. (4) Error handling is absent, no recovery guidance, no categorization of retryable vs fatal errors. (5) Destructive operations (site_import with strategy='replace', update_page, delete operations) lack confirmation/dry-run patterns. (6) No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels. Average tool score: 52/100.
Crea una pagina vuota. Per costruire il contenuto usa poi site_import in merge (consigliato) o update_page.
Legge una pagina completa (contenuto a sezioni/colonne/widget inclusi).
Legge le impostazioni sito (theme completo, integrazioni, SEO globale).
Elenca i media caricati (id, url, mime, dimensioni). Gli url /uploads/… vanno usati nei blueprint.
Elenca le pagine del sito (id, titolo, slug, stato pubblicazione).
Esporta il Site Blueprint completo del sito (pagine, theme blocks, form, popup, settings). Usalo per capire la struttura attuale prima di modificare.
No output schemas documented. LLMs cannot predict response structure (fields, types, pagination) for downstream tool chaining. site_export, list_pages, get_page, list_media, get_site_settings lack documented return types.
Input schemas are minimal or empty. Most tools accept {} (empty object) or single parameters without type constraints. No validation guidance (e.g., enum values, string length, URL format). Invites hallucinated invalid inputs.
Destructive operations lack confirmation/dry-run patterns. site_import with strategy='replace' and update_page can cause data loss. No confirmation step or explicit dry-run support to prevent accidental overwrites.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
Importa un Site Blueprint (crea/aggiorna pagine, theme blocks, form, popup). strategy "merge" aggiorna solo ciò che è nel blueprint (default), "replace" azzera e ricrea. Con dryRun true valida senza scrivere. ⚠️ In merge NON includere themeBlocks se non modificati (si duplicano). ⚠️ Ometti site.theme (schema completo richiesto): usa update_theme.
Aggiorna una pagina (title, slug, content, settings, seo, isHomepage, password…). Passa SOLO i campi da cambiare.
Aggiorna il tema in modo NON distruttivo: fa GET, merge dei soli campi passati, PATCH. colors/typography sono merge parziali (es. {"primary":"#2563EB"}).
Scarica un file da un URL pubblico e lo carica nella media library del CMS. Ritorna l'url /uploads/… da usare nelle pagine.
Lezioni empiriche e gotcha reali del renderer (cosa NON funziona come sembra). Consultala quando un widget non rende come previsto.
Documentazione aggiornata dei widget del CMS (campi, control, estensioni, esempi). Leggila PRIMA di scrivere blueprint.
No error handling guidance. Tools do not document what errors can occur, whether they are retryable, or what the LLM should do next. Raw API errors will confuse agents.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Risk levels are documented in the spec but not exposed to clients. Agents cannot distinguish safe reads from destructive writes without parsing descriptions.