# WP BaseStation — v2.2.0

**Remote MCP server for WordPress, by Abcreative, LLC.** Connect Claude to a
WordPress site and it can read the site's design system, build and edit pages
on Divi 5 and the block editor, and audit ANY site on any theme with any
builder — site health, accessibility, SEO, performance,
legal furniture, site QA and design consistency — with one-click fixes and a
single WP BaseStation Site Score that discloses its own arithmetic.

Divi is a registered trademark of Elegant Themes, Inc. WP BaseStation is an
independent product and is not affiliated with, authorized by, endorsed by, or
sponsored by Elegant Themes, Inc.

## The connector

The server answers on exactly one namespace, no aliases:

```
{site}/wp-json/wp-basestation/v1/mcp
```

Auth is OAuth 2.1 (dynamic client registration + PKCE) or a static key carried
in the connector URL. The URL with the key in it **is** a credential — treat it
like a password, rotate it from the Connection screen if it is ever exposed.

## What it does

- **100 MCP tools** — 51 in the Free tier, 49 more in Pro. Page building and
  editing, the design system (colors, variables, presets, patterns), Theme
  Builder, WooCommerce, Divi 5 Loop Builder and dynamic content, site-to-site
  page transfer, media, snapshots and undo — and, new in 2.0.0, the WordPress
  side of a build: menus, front page, forms discovery, media search, link
  checks, site-wide search & replace, SEO title/description, structured data.
  New in 2.1.0: **Site Health**, a seventh audit that reads the install rather
  than its pages — versions, updates, security posture, database and content
  hygiene, mail deliverability, and WordPress core's own Site Health tests —
  on any theme with any builder.
- **7 audit suites** — Site QA, Accessibility, Performance, SEO, Legal,
  Design Guardian, and Site Health (the install itself: versions, updates,
  security posture, database, mail — any theme, any builder). Static analysis
  of stored content, so audits work on drafts and staging. Every suite states what it cannot see; findings that depend on
  content generated at render are declared unreadable rather than guessed at.
- **A WP BaseStation Site Score** with its arithmetic shown, per-finding waivers the owner can
  grant and revoke (the agent deliberately cannot), a fix/undo journal, client
  report export, and scheduled audits that email only when something changed.
- **A self-test of 1,700+ checks** run against the live install — every check
  exists because that exact bug shipped during development.

Audit output is informational only — not a certification of ADA/WCAG or legal
compliance, and not legal advice. See `legal/` in the repository.

## The design system it already has

`station_sniff_design_system` reads the design language a site is already using
— across pages, posts, Theme Builder layouts and the Library, with presets
resolved and recent work weighted heaviest — and proposes it as a **scale**
rather than an inventory: *"adopting this standardises 11 radii down to 3."*

It never invents. A site with no drop shadows is told that is a design
decision, not a gap. A site on 5px increments is not told it is really an 8px
site. A domain with no convention resolves to `none`.

Adopt the proposal in wp-admin and it becomes tier 0 of every design answer,
outranking tokens and mining. Any role you override by hand is stamped as
yours and survives a re-scan. Proposing is free and read-only; adopting is an
owner action with no MCP tool, for the same reason releasing the free page has
none — an agent that can adopt a design system can redefine "on-brand" and
then satisfy every check it was failing.

## Requirements

WordPress 6.4+ · PHP 8.0+ · Divi 5 (measured against 5.12.0). Works on managed
hosts; chunked runs are sized for ~30-second gateways (WP Engine, Cloudflare).

## Tiers

Free: all 51 free tools, **site-wide read-only audits**, and fixes on one bound
page — the first page Claude writes to becomes it. Pro (via Freemius): fixes
everywhere, fix-a-cause-everywhere-at-once, scheduled audits, client reports,
the full design-system and Theme Builder toolset. Solo (1 site), Pro (5 sites),
Agency (20 sites) — the paid tiers unlock the same feature set and differ only
in how many sites one key activates, which the licence provider enforces at
activation. This plugin holds two tiers, free and pro; it does not count seats.

Bought Pro after installing Free? Diagnostics → Licensing takes the key. The
provider validates it — the field is not a box that grants Pro to any string —
and the same panel releases the site's seat when a site is retired or moved.
A headless install can set `DVC_LICENSE_KEY` in `wp-config.php` instead.

## Languages

The admin UI ships in English, French, German, Spanish, Italian, Brazilian
Portuguese, Dutch, Polish and Japanese (1.1.0). Locale follows the site's
WordPress language setting. Audit findings are English in this release;
findings localization is planned as its own release.

## Safety model

Staging first, backups on. Every write preserves prior content (a WordPress
revision where the site keeps them, a one-step undo slot where it does not) —
conveniences, not backups. Owner-only actions — releasing the free page,
accepting a finding, toggling enforcement — have **no MCP tool on purpose**:
a limit the agent could lift is not a limit. Operator switches (read-only,
draft-only, protect-design, enforce-tokens) can only be *tightened* from a
conversation; loosening is wp-admin only.

## License

GPLv2 or later — see `LICENSE`. Paid licensing, updates and support are
delivered through Freemius and governed by the EULA; the GPL rights in the
code itself survive regardless.

## Changelog

The detailed history lives in git (`git log`), one release per commit with the
reasoning written out. Headlines: 1.3.0 site design-system extraction ·
1.2.0 activate a licence key after the fact · 1.1.0 nine languages · 1.0.x launch, security audit, GPL license · 0.98–0.99 the unreadable-content architecture (DVC_Opaque)
and an API-key-leak fix · 0.91–0.97 site score, per-finding waivers, onboarding
· 0.83–0.90 Loop Builder, dynamic content, self-test hardening.
