← Reddit

Claude issues with design and MCP

Reddit · Adventurous_Run_6310 · May 24, 2026
A developer created a minimalist design magazine with static HTML and Tailwind CSS files but encountered problems when attempting to implement the design on a WordPress site using Claude's MCP connection. Claude consistently reverted to using Blocksy's default blog layouts rather than incorporating the custom HTML structures and styling, producing a generic result that diverged from the intended aesthetic. The developer sought guidance on either abandoning WordPress entirely or establishing a workflow to map WordPress content directly into a custom PHP template containing the designed HTML and Tailwind layout.

Detailed Analysis

A digital designer attempting to launch a minimalist design magazine at koncepto.dk has encountered significant friction when attempting to use Claude, paired with an MCP (Model Context Protocol) server connection, to translate a finished static HTML/Tailwind CSS frontend into a functioning WordPress theme. The user reports that despite having pixel-perfect static files ready, Claude repeatedly defaults to activating Blocksy's native layout engine, making superficial color adjustments, and declaring the task complete — producing results that bear no resemblance to the intended high-end editorial aesthetic. Compounding the issue, the WordPress Customizer is crashing under the overhead generated by MCP requests, eliminating one of the more accessible routes for manual intervention.

The core technical problem the user is experiencing reflects a well-documented limitation in how large language models interact with complex, stateful systems like WordPress through agentic tool-use frameworks. Claude, when operating via MCP, must infer the correct sequence of file writes, PHP template overrides, and theme hierarchy manipulations to bypass a theme's default rendering pipeline — a non-trivial task that requires the model to maintain precise context about WordPress's template hierarchy (page.php, single.php, index.php precedence), child theme structure, and Tailwind's CDN or build integration. When that context is incomplete or the model lacks sufficient grounding in the live file state of the server, it tends to fall back on the path of least resistance: manipulating the theme through its own API rather than replacing it structurally.

The user's instinct to consider abandoning WordPress entirely in favor of a static site deployment is technically sound and worth serious consideration. Serving raw HTML/CSS/JS files directly from public_html eliminates the entire WordPress rendering stack, removes the MCP-WordPress interaction complexity, and gives the designer complete control over every pixel — which is precisely what a design-forward publication requires. The performance profile of a static site is also substantially superior for a minimalist, typography-driven magazine. The tradeoff is the loss of WordPress's content management capabilities, though this could be partially addressed through static site generators like Eleventy or Hugo, which support templating and content pipelines without a database layer.

If the user wishes to retain WordPress as a CMS, the more reliable path is to instruct Claude to construct a fully blank custom child theme containing only a functions.php and a set of PHP template files that do nothing but output the user's HTML structure with WordPress template tags (the_title(), the_content(), get_the_post_thumbnail()) inserted at the appropriate points. Prompting Claude with explicit file paths, the exact HTML scaffolding to wrap WordPress calls within, and a strict instruction to never invoke Blocksy's block rendering functions or template parts would give the model much clearer constraints to operate within. The reported phenomenon of Claude confirming completion while no visible changes appear on the live site is a known failure mode in agentic coding workflows, often caused by file writes targeting incorrect paths, permission errors, or caching layers silently suppressing updates.

This case illustrates a broader tension in the current wave of AI-assisted web development: the gap between a model's conversational confidence and its reliable execution of multi-step, environment-dependent deployment tasks. MCP and similar agentic frameworks represent a genuine leap in Claude's ability to interact with live systems, but the reliability of those interactions degrades significantly when the target environment has layers of abstraction — like WordPress's theme hierarchy — that the model must navigate without perfect environmental awareness. As these tools mature, tighter feedback loops between the AI agent and live server state verification, combined with more granular tool definitions, will likely be necessary to close the gap between what Claude describes and what actually appears in the browser.

Read original article →