Production-shaped local WordPress for coding agents: pinned stack, localhost-only ports, four automated test layers, one-command reset. Agents drive a real site over the official WordPress MCP Adapter.
This repository is the glue (Compose, provisioning, auth, tests, docs, skills). It does not ship an MCP server, abilities framework, or WordPress plugin of its own. Upstream: Abilities API, MCP Adapter, MS WordPress Abilities.
Development only. Localhost only, no production data. Security.
Agents: docs/AGENTS.md · llms.txt · docs/ai-skills.md.
Needs Docker Compose v2, Git, and Bash.
git clone https://github.com/marcop135/wp-agent-harness.git
cd wp-agent-harness
./bin/setupConnect an agent to the local WordPress site (pick one):
# Claude Code
./bin/connect && claude
# Codex (trust the project when prompted)
eval "$(./bin/connect --print | grep '^export ')"
codex
# Cursor: open this repo, then add an HTTP MCP server using
# the url and Authorization header printed by:
./bin/connect --printAsk the agent to inspect the local site (version, theme, plugins).
Running setup again is safe; only ./bin/reset wipes the site.
More detail: Claude Code · Codex ·
Development.
| Piece | Role |
|---|---|
./bin/* |
setup, status, reset, WP-CLI, tests; connect for Claude Code |
| MCP | three meta-tools: discover → schema → execute |
| Abilities | 26 miriamschwab/* + core abilities on a real local site |
| Tests | four layers: repo → infra → WordPress/abilities → MCP → Claude Code |
| Skills | curated WordPress agent skills under .claude/skills/ and .cursor/skills/ |
Worked prompts: examples/. Stack diagram: docs/architecture.md.
./bin/status
./bin/test --skip-claude # layers 0–3, no model turns
./bin/wp ability list # abilities without MCPWordPress 7.1.2 · PHP 8.3 · MariaDB 11.8 · MCP Adapter 0.7.0 · MS Abilities 1.12.0.
Full list: docs/development.md. How to update them: Updating dependencies.
| Doc | Covers |
|---|---|
| Development | Requirements, commands, versions, URLs, configuration |
| Architecture | Stack, MCP meta-tools, project structure |
| Claude Code | Claude MCP registration, scopes, skills |
| Codex | Codex AGENTS.md + .codex/config.toml MCP |
| Security | Threat model, bindings, credentials |
| Troubleshooting | Common failure modes |
| Agents | Agent index and domain rules |
| Examples | Worked prompts |
CONTRIBUTING.md. Run ./bin/test --skip-claude before a PR.
MIT for the harness (LICENSE). Vendored WordPress agent skills are GPL-2.0-or-later. Runtime installs keep their upstream licences; see NOTICE and Dependencies.
