Publish selected WordPress content through llms.txt and a read-only MCP-style JSON-RPC endpoint, with owner-controlled tool extensions.
Server has 9 tools with explicit schemas and descriptions visible in class-tool-registry.php. Core tools (search_site, get_page_content, list_content, get_sitemap) have solid naming and parameter constraints (e.g., query 1-500 chars, limit 1-50). However, descriptions are terse (avg ~60 chars, well below the 194-char baseline), lack WHEN-to-use guidance, and omit output schema documentation. Optional tools (get_product, get_sections, get_structured_data, check_agent_access, request_expert_call) are defined but lack visible parameter details in the provided code. Error handling is minimal, no recovery guidance or actionable error messages visible. No tool annotations (readOnlyHint/destructiveHint) despite clear risk classifications in the spec.
Check whether an agent has permission to access a resource or perform an action.
Retrieve the full content of a published page or post by its URL.
Retrieve detailed product information from WooCommerce by URL.
Retrieve page content broken into sections with optional offset-based pagination.
Retrieve the sitemap of all published, exposed content.
Extract structured data (Schema.org JSON-LD) from a page.
List published content of a specific type with pagination.
Descriptions are terse (avg 60 chars vs 194-char baseline) and lack WHEN-to-use context. E.g., 'Search the site for content matching a query string' does not explain when to call search_site vs list_content, or what query syntax is supported.
Output schemas are not documented in the visible code. LLMs cannot plan downstream tool calls or extract required fields (e.g., does search_site return post_id, URL, excerpt, or all three?). This violates the documented output schema requirement.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk classifications in the spec (READ_ONLY vs WRITE). This prevents MCP clients from applying appropriate safety policies.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2026-07-28+ | v2 |
Request a human expert to take over and handle a task that the agent cannot complete.
Search the site for content matching a query string.
Error handling is not visible in the provided code. No recovery guidance (e.g., 'If URI not found, try search_site() first'), no error classification (retryable vs user-fixable), and no actionable error messages documented.
Optional tools (get_product, get_sections, get_structured_data, check_agent_access, request_expert_call) have parameter details inferred from the registry switch statement but not fully visible. Per-tool schema validation code is referenced but not shown, making it impossible to verify parameter constraints.