{
  "run_id": "WordPress--mcp-adapter-claude-haiku-5-5-1792971575358921748",
  "date": "2026-10-25T23:46:14.060875+00:00",
  "repo": "WordPress/mcp-adapter",
  "kind": "mcp",
  "source": "https://github.com/WordPress/mcp-adapter",
  "commit": "f6bb4b7d703bb21ddc496d729550e907ad57ee3e",
  "model": "claude-haiku-5-5",
  "model_version": "claude-haiku-5-5",
  "test_version": "readme-ca496ea10bb07418d1d8f1c256c2433a55547acc0fb62d8b6d86ae33c976fbfa",
  "pass": true,
  "outcome": "pass",
  "time_to_working_s": 350.3020806040149,
  "total_s": 398.7019217014313,
  "steps": [
    "cd <guest-path> && pwd && ls -la && git status 2>&1 | head -3; id -u; cat /etc/os-release | head -2; python3 --version; which node npm uv composer php 2>&1",
    "cd <guest-path> && cat README.md | head -c 7000",
    "cd <guest-path> && ls -la .coldpass; ls <guest-path>; ls <guest-path> 2>&1; ls /inputs 2>&1; php -v 2>&1 | head -1; composer -V 2>&1 | head -1; wp --version 2>&1; which docker mysql mariadb 2>&1; node -v; npm -v; cat .nvmrc; grep -n '\"php\"\\|\"require\"' -A3 composer.json | head -20",
    "cd <guest-path> && cat docs/guides/cli-usage.md | head -c 6000",
    "cd <guest-path> && sed -n 1,80p CONTRIBUTING.md | head -c 4000; echo ----; head -c 3000 docs/guides/testing.md",
    "head -c 5000 <guest-path>; echo; grep -n \"def \\|--validate\\|--replay\" <guest-path> | head -60",
    "cd <guest-path> && cat mcp-adapter.php; grep -in \"requires\\|tested up\\|abilities\" readme.txt | head -20; sudo -n true && echo SUDO_OK; apt-cache policy php8.3-cli mariadb-server 2>/dev/null | head -6",
    "sudo apt-get -o DPkg::Lock::Timeout=300 update -qq 2>&1 | tail -3; sudo DEBIAN_FRONTEND=noninteractive apt-get -o DPkg::Lock::Timeout=300 install -y -qq php8.3-cli php8.3-mysql php8.3-curl php8.3-xml php8.3-mbstring php8.3-zip php8.3-gd php8.3-intl mariadb-server unzip curl composer > /tmp/apt-install.log 2>&1; echo \"exit=$?\"; tail -5 /tmp/apt-install.log; php -v | head -1; composer -V 2>&1 | head -1",
    "sudo systemctl start mariadb 2>&1 | tail -2; sudo mysql -e \"CREATE DATABASE IF NOT EXISTS wp_mcp; CREATE USER IF NOT EXISTS 'wpuser'@'localhost' IDENTIFIED BY 'wppass'; GRANT ALL ON wp_mcp.* TO 'wpuser'@'localhost'; FLUSH PRIVILEGES;\" && echo DB_OK; mkdir -p <guest-path> && curl -sSfL -o <guest-path> https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar && php <guest-path> --info | head -3; curl -sI https://wordpress.org/latest.zip | head -1",
    "sudo install -m 755 <guest-path> /usr/local/bin/wp && mkdir -p <guest-path> && cd <guest-path> && wp core download --version=6.9 --locale=en_US 2>&1 | tail -2 && wp config create --dbname=wp_mcp --dbuser=wpuser --dbpass=wppass --dbhost=localhost --skip-check 2>&1 | tail -1 && wp core install --url=http://localhost:8080 --title=MCPTest --admin_user=admin --admin_password=password <email> --skip-email 2>&1 | tail -1; wp core version",
    "cd <guest-path> && composer install --no-interaction --prefer-dist > <guest-path> 2>&1; echo \"exit=$?\"; tail -4 <guest-path>; ln -sfn <guest-path> <guest-path> && cd <guest-path> && wp plugin activate mcp-adapter 2>&1 | tail -3; wp plugin list --format=table 2>&1 | head -8",
    "cd <guest-path> && wp mcp-adapter list 2>&1 | head -20; echo ---; wp mcp-adapter list --format=json 2>&1 | head -c 1500; echo; echo ---; wp eval 'print_r(array_keys(wp_get_abilities()));' 2>&1 | head -30",
    "cd <guest-path> && printf '%s\\n' '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-11-25\",\"capabilities\":{},\"clientInfo\":{\"name\":\"t\",\"version\":\"1\"}}}' '{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}' '{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/list\",\"params\":{}}' '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"mcp-adapter/discover-abilities\",\"arguments\":{}}}' | timeout 60 wp --path=<guest-path> mcp-adapter serve --server=mcp-adapter-default-server --user=admin 2>&1 | cut -c1-900",
    "cd <guest-path> && printf '%s\\n' '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-11-25\",\"capabilities\":{},\"clientInfo\":{\"name\":\"t\",\"version\":\"1\"}}}' '{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}' '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"mcp-adapter-discover-abilities\",\"arguments\":{}}}' '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"mcp-adapter-get-ability-info\",\"arguments\":{\"ability_name\":\"core/get-site-info\"}}}' | timeout 60 wp --path=<guest-path> mcp-adapter serve --server=mcp-adapter-default-server --user=admin 2>&1 | tail -n +2 | cut -c1-1200",
    "cd <guest-path> && grep -n \"wp_register_ability\\|'public'\\|mcp' *=>\\|'category'\\|wp_register_ability_category\\|wp_abilities_api_init\\|execute_callback\\|permission_callback\\|input_schema\" docs/guides/creating-abilities.md | head -40",
    "mkdir -p <guest-path> && cat > <guest-path> <<'EOF'\n<?php\n/* Local test site helper: exposes one public ability so the MCP tools have a real target. */\nadd_action( 'wp_abilities_api_init', function () {\n\twp_register_ability( 'demo/echo-note', [\n\t\t'label'               => 'Echo note',\n\t\t'description'         => 'Returns the given note text in upper case.',\n\t\t'category'            => 'site',\n\t\t'input_schema'        => [\n\t\t\t'type'       => 'object',\n\t\t\t'properties' => [ 'note' => [ 'type' => 'string' ] ],\n\t\t\t'required'   => [ 'note' ],\n\t\t],\n\t\t'execute_callback'    => function ( $input ) {\n\t\t\treturn [ 'echo' => strtoupper( (string) $input['note'] ) ];\n\t\t},\n\t\t'permission_callback' => function () { return current_user_can( 'read' ); },\n\t\t'meta'                => [ 'public' => true, 'mcp' => [ 'public' => true ] ],\n\t] );\n} );\nEOF\ncd <guest-path> && wp eval 'echo \"ok\\n\";' 2>&1 | tail -1; printf '%s\\n' '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-11-25\",\"capabilities\":{},\"clientInfo\":{\"name\":\"t\",\"version\":\"1\"}}}' '{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}' '{\"jsonrpc\":\"2.0\",\"id\":3,\"method\":\"tools/call\",\"params\":{\"name\":\"mcp-adapter-discover-abilities\",\"arguments\":{}}}' '{\"jsonrpc\":\"2.0\",\"id\":4,\"method\":\"tools/call\",\"params\":{\"name\":\"mcp-adapter-execute-ability\",\"arguments\":{\"ability_name\":\"demo/echo-note\",\"parameters\":{\"note\":\"hello coldpass\"}}}}' | timeout 60 wp --path=<guest-path> mcp-adapter serve --server=mcp-adapter-default-server --user=admin 2>&1 | tail -n +2 | cut -c1-900",
    "cd <guest-path> && grep -rniE \"wp_schedule|add_action\\( *'(cron|init)|cron|webhook|--once|--now\" includes mcp-adapter.php | head -8; echo \"---scripts\"; python3 -c 'import json;print(json.load(open(\"composer.json\")).get(\"scripts\"))' ; python3 -c 'import json;print({k:v for k,v in json.load(open(\"package.json\")).get(\"scripts\",{}).items()})'",
    "mkdir -p <guest-path> && cat > <guest-path> <<'EOF'\n{\"kind\":\"mcp\",\"argv\":[\"wp\",\"--path=<guest-path>\",\"mcp-adapter\",\"serve\",\"--server=mcp-adapter-default-server\",\"--user=admin\"],\"cwd\":\"<guest-path>\",\"tool\":\"mcp-adapter-execute-ability\",\"arguments\":{\"ability_name\":\"demo/echo-note\",\"parameters\":{\"note\":\"hello coldpass\"}},\"expected_text\":\"HELLO COLDPASS\"}\nEOF\ncat > <guest-path> <<'EOF'\n[{\"kind\":\"claim\",\"claim\":\"Abilities must be opted in with meta.public to be exposed over MCP; the opted-in ability is executable through the default server\",\"source\":\"Set `meta.public` (or `meta.mcp.public`) to `true` to expose one\",\"input\":\"demo/echo-note with note hello coldpass\",\"expected\":\"upper-cased echo returned\",\"probe_kind\":\"mcp\",\"argv\":[\"wp\",\"--path=<guest-path>\",\"mcp-adapter\",\"serve\",\"--server=mcp-adapter-default-server\",\"--user=admin\"],\"tool\":\"mcp-adapter-execute-ability\",\"arguments\":{\"ability_name\":\"demo/echo-note\",\"parameters\":{\"note\":\"hello coldpass\"}},\"expected_text\":\"HELLO COLDPASS\",\"cwd\":\"<guest-path>\"},\n{\"kind\":\"claim\",\"claim\":\"WP-CLI STDIO serving of the default MCP server works\",\"source\":\"Connect via WP-CLI over STDIO\",\"input\":\"tools/call mcp-adapter-execute-ability over wp mcp-adapter serve\",\"expected\":\"tool result text containing HELLO COLDPASS\",\"probe_kind\":\"mcp\",\"argv\":[\"wp\",\"--path=<guest-path>\",\"mcp-adapter\",\"serve\",\"--server=mcp-adapter-default-server\",\"--user=admin\"],\"tool\":\"mcp-adapter-execute-ability\",\"arguments\":{\"ability_name\":\"demo/echo-note\",\"parameters\":{\"note\":\"hello coldpass\"}},\"expected_text\":\"HELLO COLDPASS\",\"cwd\":\"<guest-path>\"}]\nEOF\necho '{\"detected\":false,\"reason\":\"Inspected composer.json, package.json, mcp-adapter.php and includes/: no wp_schedule_event, cron, webhook or --once/--now entry point; the only init hook is plugin bootstrap (includes/Core/McpAdapter.php:78). The server runs on request (wp mcp-adapter serve over STDIO or HTTP REST), so no product cycle exists.\",\"checks\":[]}' > <guest-path>\necho '[{\"kind\":\"example\",\"claim\":\"Documented WP-CLI list of MCP servers\",\"source\":\"docs/guides/cli-usage.md\",\"input\":\"wp mcp-adapter list --format=json\",\"expected\":\"default server listed\",\"argv\":[\"wp\",\"--path=<guest-path>\",\"mcp-adapter\",\"list\",\"--format=json\"],\"cwd\":\"<guest-path>\",\"expected_text\":\"mcp-adapter-default-server\"},{\"kind\":\"example\",\"claim\":\"Documented PHP test suite\",\"source\":\"docs/guides/testing.md\",\"reason\":\"Requires wp-env (Docker) which is not installed in this guest; Docker-based npm run test:php was not run. Only the WP-CLI route was exercised.\",\"deferred\":true}]' > <guest-path>\ncd <guest-path> && for f in .coldpass/*.json; do python3 -I -m json.tool \"$f\" >/dev/null && echo \"ok $f\"; done",
    "cd <guest-path> && <env-var>=<guest-path> timeout 600 python3 -I <guest-path> --validate --replay 2>&1 | tail -c 4000; echo \"exit=${PIPESTATUS[0]}\"",
    "cd <guest-path> && <env-var>=<guest-path> timeout 600 python3 -I <guest-path> --validate --replay > <guest-path> 2>&1; echo \"exit=$?\"; python3 -I -c '\nimport json,sys\nt=open(\"<guest-path>\").read()\ni=t.find(\"{\")\nd=json.loads(t[i:])\nprint({k:(v if not isinstance(v,(dict,list)) else type(v).__name__) for k,v in d.items()})\nprint(\"problems:\", d.get(\"problems\"))\n' 2>&1 | head -c 1500",
    "pgrep -af \"mcp-adapter serve\" || echo \"no serve processes\"; cat > <guest-path> <<'EOF'\n{\"outcome\":\"working\",\"fault_owner\":null,\"operation\":\"Expose a WordPress ability over MCP through the documented WP-CLI STDIO server (wp mcp-adapter serve) and call it with a real tool result\",\"operation_scope\":\"WordPress 6.9 with MariaDB, PHP 8.3, WP-CLI, plugin activated on a local site; one test ability (demo/echo-note) registered by a site-side mu-plugin; STDIO transport only. HTTP transport and the wp-env/Docker test suite were not exercised.\",\"steps\":[\"apt-get install php8.3-cli php8.3-mysql php8.3-curl php8.3-xml php8.3-mbstring php8.3-zip php8.3-gd php8.3-intl mariadb-server unzip curl composer\",\"Downloaded wp-cli.phar and installed it as wp\",\"wp core download --version=6.9; wp config create; wp core install (in <guest-path>)\",\"composer install (in plugin source, per CONTRIBUTING.md Installation step 2)\",\"Symlinked the workspace into wp-content/plugins/mcp-adapter; wp plugin activate mcp-adapter\",\"wp mcp-adapter list (default server listed with 3 tools)\",\"wp --path=<guest-path> mcp-adapter serve --server=mcp-adapter-default-server --user=admin; JSON-RPC initialize, tools/list, tools/call mcp-adapter-execute-ability -> HELLO COLDPASS\"],\"deviations\":[\"CONTRIBUTING.md/testing.md route (npm run wp-env start) needs Docker, which is not installed in the guest; used the README's WP-CLI route with a manually installed WordPress 6.9 instead. npm run test:php was not run (deferred example).\",\"Added a site-side mu-plugin at <guest-path> registering demo/echo-note with meta.public=true, because the product exposes no abilities by default (discover returned an empty list). Product source was not edited.\",\"Tool names are hyphenated (mcp-adapter-execute-ability), not the slash names in the README (mcp-adapter/execute-ability); the slash names returned 'Tool not found'.\",\"Plugin is linked from the workspace; composer install created vendor/ in the workspace.\",\"The /inputs/coldpass-preflight.py path given in the task does not exist; the checker at <guest-path> was run instead with --validate --replay.\",\"The workspace is not a git repository and the git fetch/reset pin step was not performed, so the workspace was not verified against commit f6bb4b7d703bb21ddc496d729550e907ad57ee3e.\"],\"stuck_step\":null,\"main_blocker\":null,\"plain_failure\":null,\"suggested_fix\":\"None required for this run. Optional: the README's documented plugin paths (/wp-json/mcp/mcp-adapter-default-server HTTP endpoint and mcp/mcp-adapter/... tool names) differ from the hyphenated tool names actually returned, so the README tool-name wording could be aligned with the real names.\"}\nEOF\npython3 -I -m json.tool <guest-path> >/dev/null && echo report_ok; ls -la <guest-path>"
  ],
  "stuck_step": null,
  "error_excerpt": null,
  "what_it_did": "Expose a WordPress ability over MCP through the documented WP-CLI STDIO server (wp mcp-adapter serve) and call it with a real tool result",
  "suggested_fix": null,
  "tokens_in": 539990,
  "tokens_out": 14591,
  "cost_usd": 0.022551460000000002,
  "usage_complete": true,
  "checks": [
    {
      "check": "operation",
      "status": "PASS",
      "details": {
        "working": true,
        "argv": [
          "wp",
          "--path=<guest-path>",
          "mcp-adapter",
          "serve",
          "--server=mcp-adapter-default-server",
          "--user=admin"
        ],
        "kind": "mcp",
        "serverInfo": {
          "name": "MCP Adapter Default Server",
          "version": "v1.0.0"
        },
        "tools": [
          "mcp-adapter-discover-abilities",
          "mcp-adapter-get-ability-info",
          "mcp-adapter-execute-ability"
        ],
        "tool_schema_bytes": 2494,
        "tool_result": {
          "content": [
            {
              "type": "text",
              "text": "{\"success\":true,\"data\":{\"echo\":\"HELLO COLDPASS\"}}"
            }
          ],
          "isError": false,
          "structuredContent": {
            "success": true,
            "data": {
              "echo": "HELLO COLDPASS"
            }
          }
        },
        "tool_result_checked": true,
        "scope": "product operation"
      }
    }
  ],
  "safety": {
    "version": "z2x-1",
    "rules_version": "z2x-1",
    "summary": "Review signals: 9 hardcoded secret, 20 known vulnerability.",
    "findings": [
      {
        "kind": "hardcoded-secret",
        "count": 9,
        "note": "Gitleaks found a possible hardcoded secret; value withheld.",
        "location_count": 2
      },
      {
        "kind": "known-vulnerability",
        "count": 20,
        "note": "OSV reports a known vulnerability in this dependency version.",
        "location_count": 13
      }
    ],
    "context": [],
    "limitations": [
      "A short run cannot establish that code is safe.",
      "Connections show IP addresses; proxies can hide the final hostname.",
      "Tracing covers dispatched commands and their children, not the whole OS; guest root can interfere with tracing."
    ],
    "static": {
      "dependency_note": "OSV scanned supported lockfiles; unpinned dependencies and unsupported formats are outside this check."
    },
    "evidence_url": "/safety/?run=WordPress--mcp-adapter-claude-haiku-5-5-1792971575358921748",
    "evidence_file": "/data/safety/WordPress--mcp-adapter-claude-haiku-5-5-1792971575358921748.json.gz"
  },
  "agent_execution": "native_agent",
  "agent_runtime": "claude-code",
  "agent_runtime_version": "2.1.310 (Claude Code)",
  "tool_transport": "mcp-assigned-vm",
  "platform": "linux",
  "reasoning": "low",
  "service_tier": null,
  "resources": {
    "cpus": 2,
    "memory_mib": 4096,
    "disk_mib": 32768
  },
  "native_tool_calls": 21,
  "native_bundle": null,
  "architecture": null,
  "backend": "hyperv",
  "platform_details": {
    "backend": "hyperv",
    "os": "linux"
  },
  "platform_conflicts": null,
  "sandbox_source": null,
  "source_pin": {
    "commit": "f6bb4b7d703bb21ddc496d729550e907ad57ee3e",
    "url": "https://github.com/WordPress/mcp-adapter"
  },
  "purpose": "initial",
  "profile": {
    "model": "claude-haiku-5-5",
    "reasoning": "low"
  },
  "fault": {
    "owner": null,
    "status": "resolved",
    "reason": null
  },
  "fix_id": null,
  "verifies_run_id": null,
  "hosting": null,
  "operation_scope": "product operation",
  "tool_calls": 21,
  "guest_setup": null,
  "runtime": null,
  "runtime_version": null,
  "runtime_revision": null,
  "source_revision": null,
  "evidence_version": null,
  "failure_origin": null,
  "evidence_strength": "readme_checked",
  "works": "yes",
  "install_s": null,
  "first_use_s": null,
  "mcp": "local",
  "needs": [],
  "needs_which": null,
  "agent_interface": [
    "mcp"
  ],
  "license": "GPL-2.0",
  "repo_url": "https://github.com/WordPress/mcp-adapter",
  "cost_to_try": "free",
  "hardware": null,
  "what_failed": null,
  "local_or_hosted": "local",
  "cycle_checks": [
    {
      "kind": "cycle",
      "claim": "Scheduled or looping main behavior",
      "source": "repository entry points",
      "input": "source inspection",
      "expected": "identify the product trigger",
      "verdict": "yes",
      "outcome": "Inspected composer.json, package.json, mcp-adapter.php and includes/: no wp_schedule_event, cron, webhook or --once/--now entry point; the only init hook is plugin bootstrap (includes/Core/McpAdapter.php:78). The server runs on request (wp mcp-adapter serve over STDIO or HTTP REST), so no product cycle exists.",
      "evidence": "Inspected composer.json, package.json, mcp-adapter.php and includes/: no wp_schedule_event, cron, webhook or --once/--now entry point; the only init hook is plugin bootstrap (includes/Core/McpAdapter.php:78). The server runs on request (wp mcp-adapter serve over STDIO or HTTP REST), so no product cycle exists.",
      "command": ""
    }
  ],
  "claims": [
    {
      "kind": "claim",
      "claim": "Abilities must be opted in with meta.public to be exposed over MCP; the opted-in ability is executable through the default server",
      "source": "Set `meta.public` (or `meta.mcp.public`) to `true` to expose one",
      "input": "{\"tool\": \"mcp-adapter-execute-ability\", \"arguments\": {\"ability_name\": \"demo/echo-note\", \"parameters\": {\"note\": \"hello coldpass\"}}}",
      "expected": "upper-cased echo returned",
      "command": "wp --path=<guest-path> mcp-adapter serve --server=mcp-adapter-default-server --user=admin tools/call {\"tool\": \"mcp-adapter-execute-ability\", \"arguments\": {\"ability_name\": \"demo/echo-note\", \"parameters\": {\"note\": \"hello coldpass\"}}}",
      "verdict": "yes",
      "outcome": "Real input produced the expected result: HELLO COLDPASS",
      "evidence": "HELLO COLDPASS\\\"}}\"}], \"isError\": false, \"structuredContent\": {\"success\": true, \"data\": {\"echo\": \"HELLO COLDPASS\"}}}",
      "source_checked": true,
      "source_file": "README.md"
    },
    {
      "kind": "claim",
      "claim": "WP-CLI STDIO serving of the default MCP server works",
      "source": "Connect via WP-CLI over STDIO",
      "input": "{\"tool\": \"mcp-adapter-execute-ability\", \"arguments\": {\"ability_name\": \"demo/echo-note\", \"parameters\": {\"note\": \"hello coldpass\"}}}",
      "expected": "tool result text containing HELLO COLDPASS",
      "command": "wp --path=<guest-path> mcp-adapter serve --server=mcp-adapter-default-server --user=admin tools/call {\"tool\": \"mcp-adapter-execute-ability\", \"arguments\": {\"ability_name\": \"demo/echo-note\", \"parameters\": {\"note\": \"hello coldpass\"}}}",
      "verdict": "yes",
      "outcome": "Real input produced the expected result: HELLO COLDPASS",
      "evidence": "HELLO COLDPASS\\\"}}\"}], \"isError\": false, \"structuredContent\": {\"success\": true, \"data\": {\"echo\": \"HELLO COLDPASS\"}}}",
      "source_checked": true,
      "source_file": "README.md"
    }
  ],
  "claims_note": null,
  "example_checks": [
    {
      "kind": "example",
      "claim": "Documented WP-CLI list of MCP servers",
      "source": "docs/guides/cli-usage.md",
      "input": "wp mcp-adapter list --format=json",
      "command": "wp --path=<guest-path> mcp-adapter list --format=json",
      "evidence": "[{\"ID\":\"mcp-adapter-default-server\",\"Name\":\"MCP Adapter Default Server\",\"Version\":\"v1.0.0\",\"Tools\":3,\"Resources\":0,\"Prompts\":0}]",
      "deferred": false,
      "expected": "default server listed",
      "returncode": 0,
      "verdict": "yes",
      "outcome": "command completed successfully"
    },
    {
      "kind": "example",
      "claim": "Documented PHP test suite",
      "source": "docs/guides/testing.md",
      "input": "",
      "command": "",
      "evidence": "Requires wp-env (Docker) which is not installed in this guest; Docker-based npm run test:php was not run. Only the WP-CLI route was exercised.",
      "deferred": true,
      "expected": "documented command completes successfully",
      "verdict": "deferred",
      "outcome": "Requires wp-env (Docker) which is not installed in this guest; Docker-based npm run test:php was not run. Only the WP-CLI route was exercised."
    }
  ],
  "does_what_it_says": "yes",
  "maintenance": {
    "last_commit_at": "2026-10-21T23:38:18Z",
    "commits_90d": 78,
    "merged_prs_90d": 80,
    "open_issues": 61,
    "open_prs": 26,
    "reply_share": 0.23,
    "reply_threads": 26,
    "median_reply_hours": 30.9,
    "last_release_at": "2026-10-16T09:09:36Z",
    "archived": false,
    "verdict": "maintained",
    "note": "actively maintained: last commit 4 days ago; 78 commits and 80 merged PRs in 90 days; 61 open issues, 26 open PRs; 6 of 26 recent threads got a maintainer reply, median first reply 30.9h; latest release 2026-10-16"
  },
  "maintenance_verdict": "maintained",
  "maintenance_note": "actively maintained: last commit 4 days ago; 78 commits and 80 merged PRs in 90 days; 61 open issues, 26 open PRs; 6 of 26 recent threads got a maintainer reply, median first reply 30.9h; latest release 2026-10-16",
  "maintained": "active",
  "maintained_note": "last commit 3 days ago; 9 open issues, 4 answered or closed",
  "last_commit_at": "2026-10-22T01:54:07Z",
  "last_release_at": "2026-10-16T09:09:36Z",
  "open_issues": 9,
  "answered_issues": 4,
  "platforms_claimed": [
    "linux"
  ],
  "topic": "mcp-server",
  "agent_interfaces": [
    {
      "interface": "mcp",
      "evidence": "independent checker",
      "observed": true,
      "operation_checked": true
    }
  ],
  "agent_interfaces_note": "README metadata is a discovery hint, not pinned documentation proof. Observed interfaces were exercised in this run. An empty list means unknown.",
  "mcp_context": {
    "tool_count": 3,
    "schema_bytes": 2494,
    "tokens_approx": 624,
    "estimate_method": "ceil(compact UTF-8 tools/list JSON bytes / 4)",
    "scope": "returned tools/list page only; excludes client framing and tool results"
  },
  "tested_at": "2026-10-25T23:46:14.060875+00:00",
  "tested_commit": "f6bb4b7d703bb21ddc496d729550e907ad57ee3e",
  "tested_with": {
    "agent": "claude-code",
    "agent_version": "2.1.310 (Claude Code)",
    "model": "claude-haiku-5-5",
    "model_route": "claude-haiku-5-5",
    "reasoning": "low",
    "os": "linux",
    "backend": "hyperv",
    "transport": "mcp-assigned-vm"
  },
  "setup_identity": {
    "repo": "WordPress/mcp-adapter",
    "source": "https://github.com/WordPress/mcp-adapter",
    "commit": "f6bb4b7d703bb21ddc496d729550e907ad57ee3e",
    "source_revision": null,
    "os": "linux",
    "architecture": null,
    "backend": "hyperv",
    "model": "claude-haiku-5-5",
    "model_version": "claude-haiku-5-5",
    "agent_execution": "native_agent",
    "agent_runtime": "claude-code",
    "agent_runtime_version": "2.1.310 (Claude Code)",
    "tool_transport": "mcp-assigned-vm",
    "runtime": null,
    "runtime_version": null,
    "runtime_revision": null,
    "sandbox_source": null,
    "guest_setup": null,
    "source_pin": {
      "commit": "f6bb4b7d703bb21ddc496d729550e907ad57ee3e",
      "url": "https://github.com/WordPress/mcp-adapter"
    },
    "platform_details": {
      "os": "linux",
      "backend": "hyperv"
    },
    "platform_conflicts": null,
    "reasoning": "low",
    "service_tier": null,
    "resources": {
      "cpus": 2,
      "memory_mib": 4096,
      "disk_mib": 32768
    },
    "operation": "Expose a WordPress ability over MCP through the documented WP-CLI STDIO server (wp mcp-adapter serve) and call it with a real tool result",
    "operation_scope": "product operation",
    "hosting": null,
    "kind": "mcp",
    "test_version": "readme-ca496ea10bb07418d1d8f1c256c2433a55547acc0fb62d8b6d86ae33c976fbfa",
    "evidence_version": null
  },
  "other_model": null,
  "other_run_id": null,
  "models_agree": null,
  "furthest_model": null,
  "transcript_url": "/transcripts/WordPress--mcp-adapter-claude-haiku-5-5-1792971575358921748.txt",
  "report_url": "/reports/WordPress--mcp-adapter-claude-haiku-5-5-1792971575358921748.json"
}
