Customer case study

How an AI agent rebuilt a PDR shop's site end-to-end — without opening Elementor.

TOČA MARIBOR is a paintless-dent-repair (PDR) workshop in Maribor, Slovenia — the people you call when your car comes home from a hailstorm covered in dimples. Their old WordPress site looked like a generic Astra template wearing a corporate-blue tie: stacked promise headings ("BREZ LAKIRANJA. BREZ KITANJA."), a service grid that read like a price list, and no real proof anywhere that an actual workshop with actual lights existed behind the page. In one focused session, an MCP-compatible AI agent connected to AgenticWP rebuilt the entire site — homepage, services, process, and CTAs — through structured MCP tool calls. This writeup walks through the homepage rebuild as the headline exhibit; inner pages were rebuilt in the same session via the same workflow. Zero minutes spent in the Elementor editor.

Customer
TOČA MARIBOR
Industry
Auto body — Paintless dent repair (PDR)
Stack
WordPress, Elementor, Astra, RankMath
Live site
tocamaribor.si →
1Frontpage rebuilt end-to-end
4Major sections restructured
1Focused MCP session
0Hours in Elementor UI

The problem

The old TOČA MARIBOR frontpage was technically functional and commercially flat. It worked, in the sense that a visitor could read the words and find the phone number — but it didn't sell. Symptoms:

The approach

The customer didn't hire a designer or a developer. An AI agent (Claude, via the Claude Code CLI) connected to the TOČA MARIBOR WordPress site through the AgenticWP MCP server — a single subprocess speaking the Model Context Protocol. From there, every change was a structured tool call. No Elementor editor sessions, no FTP, no copy-paste between browser tabs.

What AgenticWP exposes that mattered here

The crucial part:

Every write went through structured tool calls authenticated as a WordPress admin. No PHP edits, no shell, no raw SQL — AgenticWP's hard "won't do" list. The customer's site stayed in known state the entire time, and every CSS block was reversible by name.

What got built

1. Hero with a real workshop photo and a single promise

The triple-negative headline ("BREZ LAKIRANJA. BREZ KITANJA. BREZ KOMPROMISOV.") got replaced with a concrete, single-promise headline — what the workshop actually does, in two beats. The flat background was swapped for a real photo of the workshop with the car under shop lights, so the page finally communicates "an actual place exists behind this URL." Buttons were unified to a primary booking CTA + secondary "see process" link, instead of three competing actions.

2. Services rebuilt as a card grid, not a tariff list

The old "services" block was a single white card containing seven bulleted service names (Hladno kleparstvo · Cenitve vozil za zavarovalnice · Kleparska in ličarska dela · Vzdrževanje vozil · Menjava avtostekel · Čiščenje vozil) sitting on top of a blurred Ferrari front-end photo. Visually noisy, no scannability, no per-service detail. The agent rebuilt it as a clean six-card grid under the eyebrow "NAŠE STORITVE" and the headline "CELOVITA SKRB ZA VAŠE VOZILO" — each card has its own icon, a one-line description, and a per-service "Več →" link. Built via update_elementor_element on the existing services container so the element ID stayed intact, with a named homepage-2026-services CSS block for typography and hover states.

3. A real process timeline — inserted where there wasn't one

The original page didn't actually have a process. What it had was a "what is PDR" info card next to a heading "HLADNO KLEPARSTVO · poglejte posnetek popravila udrtine" — a card describing the technique with four feature bullets ("Postopek je hiter / Cenovno ugoden / Prijazen okolju / Ohranja originalno barvo") plus an embedded video. Useful for technique-curious visitors, useless for someone trying to decide whether to book. The agent inserted a new container into the page tree via insert_elementor_element — placed after the services block, validated as a section-type parent so the widget tree stayed structurally legal — containing a four-step horizontal timeline under the headline "OD TOČE DO PREDAJE V 48 URAH" ("from hail to delivery in 48 hours"): 1 Kontakt ali rezervacija → 2 Skeniranje vozila → 3 Hladno kleparstvo → 4 Predaja vozila. Each step has a numbered circle, a short title, and a description. The new section ships under its own named homepage-2026-process CSS block so it's removable in a single patch_css mode=remove call.

4. Final CTA that actually asks for the booking

The bottom of the page used to be a low-contrast "we offer comprehensive services for…" paragraph ("NUDIMO CELOVITE STORITVE ZA CENITVE, STROKOVNO OBNOVO IN SKRBNO VZDRŽEVANJE VAŠEGA VOZILA") sitting on a noisy concrete-grey texture, with two italic testimonial blurbs floating above it and a single dark-blue "Pregled storitev in ponudbe" pill button as the only call-to-action. AgenticWP rebuilt it as a high-contrast conversion block: a deep blue gradient panel with a "VAS JE POTOLKLA TOČA?" eyebrow pill, the headline "POKLIČITE NAS. CENITEV JE BREZPLAČNA." (with BREZPLAČNA highlighted in yellow), a one-line value-prop, and a yellow primary "Rezerviraj cenitev →" button beside a ghost "Kontakt" button. Below the buttons sits a single inline utility line — opening hours · location · email — for visitors who hate forms. The agent rebuilt the section in place via update_elementor_element on the existing CTA container, preserving the element ID so the rest of the page's anchor links kept pointing at the same place.

The numbers

What "one focused session" actually means in production for the TOČA MARIBOR frontpage:

What the AgenticWP guardrails caught

One moment where the product's deliberate "no" list shaped the work in a way that mattered:

Why this is the point:

AgenticWP is intentionally narrow. No PHP mutation, no plugin install, no shell, no raw SQL. Those constraints aren't gaps — they're what makes "let an AI agent run loose on my live WordPress site" a reasonable thing to do at all.

Want this for your WordPress site?

AgenticWP is a WordPress plugin + MCP server. It works with Claude Code, Cursor, Windsurf, VS Code Copilot and 15+ other MCP-compatible tools. Pay once, install once, then let the AI you already trust run your site.