
### Changed

- Three MCP tools now need the plan they belong to, as the pricing page has
  always said: `seo_suggest_internal_links` (internal links),
  `seo_generate_llms_txt` (GEO and llms.txt) and `seo_create_post` (AI
  content creation) are Pro. They only checked for MCP before, which comes
  with Starter, while the admin screens for the same features already said
  Pro. On Starter they now answer with `seowing_plan_required`.
  (`includes/mcp/class-mcp-server.php`)
- `seo_auto_setup` skips the llms.txt section on plans without GEO, and the
  internal-links REST routes need the internal-links entitlement like their
  admin screen. (`class-site-configurator.php`, `class-internal-links.php`)
- The site audit rates a missing llms.txt as a warning instead of critical:
  it is optional, and Google Search ignores it.

### Fixed

- "Preview JSON-LD" in the schema editor works. It called an AJAX action
  that was never registered and always showed an error; it now shows the
  JSON-LD the saved post emits. (`includes/modules/schema/class-schema.php`)
- "Validate with Google" opens Google's Rich Results Test for the published
  page. It had no handler. (`assets/js/modules/schema.js`)
- The audit check "Lazy loading enabled" reads WordPress core's lazy loading,
  which is what actually runs. It read a SEOWing setting nothing used, so it
  passed even where a theme had switched lazy loading off.

### Tests

- New Playground check `verify-tiers.php`, gated in `tests/wp-playground/run.sh`.

---

