MCP Hub
MCP Hub is an AI-native management server that lets you control WordPress, WooCommerce, and self-hosted services through AI assistants like Claude, ChatGPT, and Cursor using natural language commands. It exposes 100+ tools across several domains:
System & Project Management (23 tools)
List and inspect configured projects; check health status with detailed metrics (response time, error rates, alerts)
Get system-wide metrics: uptime, request counts, success/failure rates
Retrieve historical metrics (up to 24 hours), export health data to JSON, and manage rate limits per client or globally
WordPress (67 tools)
Content: Create, read, update, and delete posts, pages, and custom post types; search by keyword; extract internal links
Media: List, upload (from URL), update, and delete media library items
Taxonomy: Manage categories, tags, and custom taxonomies with parent relationships
Comments: Full CRUD and moderation management
Users, Plugins & Themes: List users by role, get current user info, list installed plugins/themes and active theme
SEO (requires companion plugin): Manage Rank Math/Yoast metadata — focus keywords, meta titles/descriptions, OG tags, Twitter cards, canonical URLs, and robots settings for posts, pages, and products
Menus: List, create, and manage navigation menus and menu items
Settings & Health: Get site settings (title, URL, timezone, language); check site health
Advanced WP-CLI (requires Docker socket): Flush cache, manage transients, check/optimize/export database, verify file integrity, dry-run search-and-replace, update core/plugins/themes
WooCommerce (28 tools)
Products: Full CRUD for products, categories, tags, global attributes, and variable product variations
Orders: List, get, create, update status, and delete orders; filter by status, date, or customer
Customers: List, get, create, and update customers; search by email or name
Coupons: List and create coupons with percentage/fixed discounts, usage limits, expiration dates, and product restrictions
Security & Deployment
OAuth 2.1 + PKCE authentication, per-project API keys with scoped permissions
Rate limiting (60/min, 1,000/hr, 10,000/day per client) and GDPR-compliant audit logging
Self-host via Docker, Docker Hub, or source; also available as a hosted service
Plugin-specific endpoints (e.g.,
/wordpress/mcp,/woocommerce/mcp) to reduce token usage
Provides tools for managing Appwrite instances, including databases, authentication, storage, functions, teams, and messaging.
Allows for the management of Directus collections, items, users, files, flows, and permissions.
Provides comprehensive management of Gitea repositories, issues, pull requests, releases, webhooks, and organizations.
Enables the management of n8n automation workflows, executions, credentials, variables, and audit logs.
Provides tools to manage Supabase projects, including database operations, authentication, storage, edge functions, and realtime features.
Offers management capabilities for WooCommerce stores, products, orders, customers, coupons, reports, and shipping settings.
Offers management capabilities for WooCommerce stores, products, orders, customers, coupons, reports, and shipping settings.
Allows management of WordPress sites, including posts, pages, media, users, menus, taxonomies, and SEO configurations.
Integrates with Yoast SEO to manage meta descriptions and SEO settings for WordPress content.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP HubCheck today's WooCommerce orders and summarize the total sales."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Hub
The AI-native management hub for WordPress, WooCommerce, and self-hosted services.
Connect your sites, stores, repos, and databases — manage them all through Claude, ChatGPT, Cursor, or any MCP client.
Why MCP Hub?
WordPress powers 43% of the web. WooCommerce runs 36% of online stores. Yet no MCP server existed for managing them through AI — until now.
MCP Hub is the first MCP server that lets you manage WordPress, WooCommerce, and 8 other self-hosted services through any AI assistant. Instead of clicking through dashboards, just tell your AI what to do:
"Update the SEO meta description for all WooCommerce products that don't have one"
"Create a new blog post about our Black Friday sale and schedule it for next Monday"
"Check the health of all 12 WordPress sites and report any with slow response times"
What Makes MCP Hub Different
Feature | ManageWP | MainWP | AI Content Plugins | MCP Hub |
Multi-site management | Yes | Yes | No | Yes |
AI agent integration | No | No | No | Native (MCP) |
Full WordPress API | Dashboard | Dashboard | Content only | 67 tools |
WooCommerce management | No | Limited | No | 28 tools |
Git/CI management | No | No | No | 65 tools (Gitea) |
Automation workflows | No | No | No | 56 tools (n8n) |
Self-hosted | No | Yes | N/A | Yes |
Open source | No | Core only | Varies | Fully open |
Price | $0.70-8/site/mo | $29-79/yr | $19-79/mo | Free |
Related MCP server: WordPress MCP Server
8 Public Plugins, Hundreds of Tools
The exact tool count grows as new plugins ship and existing ones gain endpoints.
What you actually expose is controlled by your ENABLED_PLUGINS setting and per-key
scope — pick a plugin-specific endpoint to keep the surface area small.
Plugin | Approx. Tools | What You Can Do |
WordPress | ~70 | Posts, pages, media (incl. AI image generation), users, menus, taxonomies, SEO (Rank Math/Yoast) |
WooCommerce | ~30 | Products, orders, customers, coupons, reports, shipping |
WordPress Specialist | ~50 | Plugins, themes, users, options, cron, page editing, site config + layout, db inspection, bulk fan-out (companion-backed; no Docker socket) |
Gitea | ~65 | Repos, issues, pull requests, releases, webhooks, organizations, labels, batch files, tree, search, compare |
n8n | ~55 | Workflows, executions, credentials, variables, audit |
Supabase | ~70 | Database, auth, storage, edge functions, realtime |
OpenPanel | ~40 | Events, export, insights, profiles, projects, system |
Coolify | ~65 | Applications, deployments, servers, projects, databases, services |
System | ~25 | Health monitoring, API keys, OAuth management, audit |
Per-site duplication does not inflate the tool count — adding a second WordPress site reuses the same WordPress tools with a different
siteargument.
Quick Start
Option 1: Docker (Recommended)
git clone https://github.com/airano-ir/mcphub.git
cd mcphub
cp env.example .env
# Edit .env — set MASTER_API_KEY, then add sites via the web dashboard
docker compose up -dOption 2: Docker Hub (No Clone)
# Create a .env file with MASTER_API_KEY (see "Configure Your Sites" below)
docker run -d --name mcphub -p 8000:8000 --env-file .env airano/mcphub:latestOption 3: From Source
git clone https://github.com/airano-ir/mcphub.git
cd mcphub
pip install -e .
cp env.example .env
# Edit .env — set MASTER_API_KEY
python server.py --transport streamable-http --port 8000Verify It Works
After starting the server, wait ~30 seconds then:
# Check server health
curl http://localhost:8000/healthOpen the web dashboard in your browser: http://localhost:8000/dashboard
You should see the login page. Log in with your MASTER_API_KEY or via GitHub/Google OAuth (if configured).
Try It Now (No Setup Required)
Don't want to self-host? Use the hosted instance at mcp.example.com:
Log in with GitHub or Google
Add your sites via the dashboard (My Sites → Add Service)
Go to Connect page — generate config for your AI client
Copy-paste the config into Claude Desktop, VS Code, or Claude Code
Your personal MCP endpoint: https://mcp.example.com/u/{your-user-id}/{alias}/mcp
Configure Your Sites
Sites are managed via the web dashboard — no environment variables needed.
Set
MASTER_API_KEYin your.envfileStart the server and open the dashboard
Add sites with their credentials (URL, username, password/token)
# .env — only system configuration needed
MASTER_API_KEY=your-secure-key-hereSystem Configuration:
Variable | Required | Default | Description |
| Recommended | Auto-generated | Master API key for admin access |
| No |
| Logging level (DEBUG, INFO, WARNING, ERROR) |
| For Live Platform | — | AES-256-GCM key for credential encryption |
| For OAuth | — | JWT secret for ChatGPT auto-registration (not needed for Claude/Cursor) |
| For OAuth | — | Public URL of your server (not needed for Claude/Cursor) |
OAuth is only needed for ChatGPT Remote MCP auto-registration. For Claude Desktop, Claude Code, Cursor, and VS Code — just use
MASTER_API_KEYwith Bearer token auth.
Plugin Credential Reference — when adding sites via dashboard, you'll need:
Plugin | Required Credentials | Notes |
WordPress | URL, Username, App Password | |
WooCommerce | URL, Consumer Key, Consumer Secret | WooCommerce → Settings → Advanced → REST API |
WordPress Specialist | URL, Username, App Password | Requires Airano MCP Bridge v2.18.0+ on the WP site; user must have |
Gitea | URL, Token | Settings → Applications → Personal Access Token |
n8n | URL, API Key | Settings → API → Create API Key |
Supabase | URL, Service Role Key | Supabase Dashboard → Settings → API |
OpenPanel | URL, Client ID, Client Secret | OpenPanel Dashboard → Project Settings |
Connect Your AI Client
All MCP clients use Bearer token authentication: Authorization: Bearer YOUR_API_KEY
Use a plugin-specific endpoint (e.g.,
/wordpress/mcp) instead of/mcpto reduce tool count and save tokens. See Architecture below.
Add to claude_desktop_config.json:
{
"mcpServers": {
"mcphub-wordpress": {
"type": "streamableHttp",
"url": "http://your-server:8000/wordpress/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Add to .mcp.json in your project:
{
"mcpServers": {
"mcphub-wordpress": {
"type": "http",
"url": "http://your-server:8000/wordpress/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}Go to Settings > MCP Servers > Add Server:
Name: MCP Hub WordPress
URL:
http://your-server:8000/wordpress/mcpHeaders:
Authorization: Bearer YOUR_API_KEY
Add to .vscode/mcp.json:
{
"servers": {
"mcphub-wordpress": {
"type": "http",
"url": "http://your-server:8000/wordpress/mcp",
"headers": {
"Authorization": "Bearer YOUR_API_KEY"
}
}
}
}MCP Hub supports Open Dynamic Client Registration (RFC 7591). ChatGPT can auto-register as an OAuth client:
Deploy MCP Hub with
OAUTH_BASE_URLsetIn ChatGPT, add MCP server:
https://your-server:8000/mcpChatGPT auto-discovers OAuth metadata and registers
Transport types: Use
"type": "streamableHttp"for Claude Desktop and"type": "http"for VS Code/Claude Code. Using"type": "sse"will cause400 Bad Requesterrors.
Architecture
/mcp → Admin endpoint (every enabled tool)
/system/mcp → System tools only
/wordpress/mcp → WordPress tools
/woocommerce/mcp → WooCommerce tools
/wordpress-specialist/mcp → WordPress Specialist tools (companion-backed)
/gitea/mcp → Gitea tools
/n8n/mcp → n8n tools
/supabase/mcp → Supabase tools
/openpanel/mcp → OpenPanel tools
/coolify/mcp → Coolify tools
/project/{alias}/mcp → Per-project endpoint (auto-injects site)
/u/{user_id}/{alias}/mcp → Per-user endpoint (hosted/OAuth users)Recommendation: Use plugin-specific endpoints instead of the all-tools /mcp
admin endpoint to keep your AI client's tool window small (and your token bill
lower).
Endpoint | Use Case |
| Hosted users (OAuth login) — single service |
| Single-site workflow (recommended) |
| Multi-site management for one service |
| Admin & discovery only — every enabled tool |
Security
OAuth 2.1 + PKCE (RFC 8414, 7591, 7636) with auto-registration for Claude/ChatGPT
Per-project API keys with scoped permissions (read/write/admin)
Rate limiting: 60/min, 1,000/hr, 10,000/day per client
GDPR-compliant audit logging with automatic sensitive data filtering
Web dashboard with real-time health monitoring (8 pages, EN/FA i18n)
Compatibility Note: MCP Hub requires FastMCP 3.x (
>=3.0.0,<4.0.0). The legacy multi-endpoint server and ProjectManager have been removed in v3.5.0.
WordPress Plugin Requirements
Some MCP Hub tools require companion WordPress plugins:
Tools | Requirement |
SEO + capability/audit tools ( | Airano MCP Bridge (GitHub) + Rank Math or Yoast SEO |
WP-CLI tools (15 tools: | Docker socket + |
WordPress Specialist (~50 tools: plugins / themes / users / options / cron / page editing / site config + layout / db inspection / bulk fan-out) | Airano MCP Bridge v2.18.0+ (no Docker socket needed) |
OpenPanel analytics integration | |
WooCommerce tools | WooCommerce plugin installed on your WordPress site |
Docker socket is needed for the legacy WP-CLI tools (15 helpers under wordpress_wp_*). Everything in wordpress_specialist works without it. Add to your docker-compose:
volumes:
- /var/run/docker.sock:/var/run/docker.sock:roSet the container field when adding a WordPress site in the dashboard. Without Docker socket, WP-CLI tools return "not available" but all REST API tools work normally.
Documentation
Guide | Description |
Full setup walkthrough | |
System design and module reference | |
Per-project API key management | |
OAuth 2.1 setup for Claude/ChatGPT | |
Gitea plugin configuration | |
Docker and Coolify deployment | |
Common issues and solutions | |
Build your own plugin |
Development
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
pytest
# Format and lint
black . && ruff check --fix .
# Run server locally
python server.py --transport streamable-http --port 8000Support This Project
MCP Hub is free and open-source. Development is funded by community donations.
Donate with Crypto (NOWPayments) — Global, no geographic restrictions.
Goal | Monthly | Enables |
Infrastructure | $50/mo | Demo hosting, CI/CD, domain |
Part-time maintenance | $500/mo | Updates, security patches, issue triage |
Active development | $2,000/mo | New plugins, features, community support |
Contributing
We welcome contributions! See CONTRIBUTING.md for guidelines.
Priority areas:
New plugin development
Client setup guides
Workflow templates and examples
Test coverage expansion
Translations (i18n)
License
MIT License. See LICENSE.
Available Tools
100 toolscheck_all_projects_healthA
Check health status of all projects with enhanced metrics.
Performs comprehensive health checks on all configured projects including:
Accessibility and response time
Error rates and recent failures
Alert threshold violations
Historical metrics (last hour)
Returns: JSON string with detailed health status and metrics
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lists the health checks performed and the return format. However, with no annotations, it omits critical behavioral details such as auth requirements, rate limits, or side effects. The tool appears read-only, but this is not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief, uses bullet points for clarity, and front-loads the purpose. Every sentence adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and the presence of an output schema (which covers return details), the description adequately covers the tool's scope, including the list of checks and return format. It is complete for a parameterless tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so the schema coverage is 100%. The description does not need to add parameter info. Baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a health check on all projects with enhanced metrics, listing specific metrics. This distinguishes it from siblings like get_project_health (single project) and export_health_metrics (export).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for a comprehensive overview of all projects, but does not explicitly state when to use it versus alternatives such as get_project_health for individual projects. No exclusion criteria or alternative tool names are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_health_metricsB
Export all health metrics to a JSON file.
| Name | Required | Description | Default |
|---|---|---|---|
| output_path | No | Path to output file (default: logs/metrics_export.json) | logs/metrics_export.json |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations; description does not disclose whether file is created/overwritten, permissions needed, or blocking behavior. Minimal behavioral info beyond the action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy, front-loaded. Could be improved with slight expansion on behavior while maintaining conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Missing details like whether export is synchronous, format specifics, or if all metrics include historical data. Incomplete for a file export tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with parameter description already. Description adds nothing new about the parameter meaning beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Export', resource 'all health metrics', and output format 'JSON file', distinguishing it from sibling tools that retrieve rather than export metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to export vs using getter tools (e.g., get_system_metrics) or what context requires export; lacks when-not and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_healthC
Get detailed health information for a specific project.
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Full project identifier (e.g., "wordpress_site1") |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It only states the basic purpose and does not mention whether the operation is read-only, requires authentication, or has side effects, resulting in minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no wasted words, front-loaded with the verb. However, it sacrifices informativeness for brevity, so it scores 4 rather than 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the existence of an output schema, the description is very terse and does not explain what 'health information' includes, potential errors, or prerequisites. For a tool with many siblings, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description does not add meaning beyond the schema; the schema already provides a clear example for 'project_id'. No additional parameter insight is offered.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'detailed health information for a specific project,' but it does not explicitly distinguish from sibling tools like 'check_all_projects_health' or 'get_project_info', which limits its score to 4.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'check_all_projects_health' or 'get_project_metrics'. The description lacks any context about appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_infoB
Get detailed information about a specific project.
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | Full project identifier (e.g., 'wordpress_site1') |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It only says 'Get detailed information,' implying a read operation but not stating it is read-only, nor mentioning side effects, authentication, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence. It is front-loaded and contains no unnecessary words. Every part earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has a single parameter and an output schema, the description is minimally adequate. It conveys the basic purpose but lacks depth about what 'detailed information' entails. While the output schema fills some gap, the description itself is sparse.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the description does not add extra meaning to the parameter. The schema already describes the project_id format. Baseline is 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Get detailed information about a specific project.' It clearly specifies the action and resource. However, it does not differentiate from siblings like get_project_health or get_project_metrics, which have more specific scopes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. No context about prerequisites, common use cases, or exclusions. The agent has no hint about preferred usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_project_metricsC
Get historical metrics for a specific project.
| Name | Required | Description | Default |
|---|---|---|---|
| hours | No | Number of hours of history to analyze (default: 1, max: 24) | |
| project_id | Yes | Full project identifier (e.g., "wordpress_site1") |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must fully disclose behavior. It only states 'Get historical metrics' without mentioning side effects (e.g., read-only nature), error handling, or authorization needs. This is insufficient for an agent to understand implications of invocation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no fluff. However, it is too brief and lacks structure; it could include details about output or constraints. While concise, it sacrifices informativeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has an output schema and only two simple parameters, the description is partially complete. It does not explain the return format or error conditions, but the output schema may cover the former. Still, the description alone is insufficient for full autonomy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers both parameters with descriptions, so the description adds no extra meaning beyond 'historical metrics' hinting at time context. Baseline is 3 due to 100% schema coverage; the description doesn't enhance understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'get' and the resource 'historical metrics' scoped to a specific project. However, it does not differentiate from sibling tools like get_project_health or get_project_info, which could lead to confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There are no prerequisites, such as requiring a valid project_id, nor any context about when not to use it. The description assumes the agent knows the purpose without additional instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_rate_limit_statsC
Get rate limiting statistics.
| Name | Required | Description | Default |
|---|---|---|---|
| client_id | No | Optional client identifier to get specific client stats. If not provided, returns global statistics for all clients. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description does not disclose behavioral traits such as whether the operation is read-only, requires authentication, or handles errors. The simplicity of the operation implies safety, but it is not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise and to the point, though it sacrifices completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one optional parameter, output schema exists), the description could have provided more context on the return value or use cases. It is minimally complete but lacks sufficient detail for an agent to use confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description covers the single parameter (client_id) completely, so the tool description adds no additional context. Baseline score of 3 applies due to high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool gets rate limiting statistics, which is a clear verb-resource pairing, but it doesn't specify what kind of statistics or differentiate from other get_ tools like get_system_metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as reset_rate_limit or other metrics tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_system_metricsA
Get overall MCP server metrics and statistics.
Returns system-wide metrics including:
Uptime
Total requests (success/failure)
Average response time
Error rate percentage
Requests per minute
Returns: JSON string with system metrics
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It lists returned metrics, which is helpful, but does not disclose any behavioral traits such as authentication requirements, idempotency, or potential errors. For a simple read-only tool, the description is acceptable but lacks explicit behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with a clear first sentence. It uses a bulleted list for metrics, which is easy to read. However, it redundantly includes 'Returns:' twice, slightly reducing efficiency. Overall, it's well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and the presence of an output schema, the description adequately explains the return format (JSON string) and lists the metrics. It does not mention side effects or permissions, but for a simple getter, it is reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so schema coverage is 100%. The description adds no parameter info, but none is needed. Baseline for 0 parameters is 4, and the description meets this baseline as it does not need to compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets overall MCP server metrics and statistics, listing specific metrics. It is distinct from sibling tools like get_system_uptime (focuses on uptime only) and get_project_metrics (project-level), so the purpose is well-defined and differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for system-wide metrics but does not explicitly state when to use this tool over alternatives like get_project_metrics or get_system_uptime. No guidance on exclusions or context is provided, so the usage is only implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_system_uptimeA
Get MCP server uptime information.
Returns: JSON string with uptime in various formats (seconds, minutes, hours, days)
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It indicates a read operation but does not disclose any additional behavioral traits, such as potential errors or typical output values. Adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences front-load the purpose and describe the return value. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool, empty schema, and presence of an output schema, the description is complete. It explains the return format well.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, so the description adds nothing beyond schema. Baseline 4 for 0 parameters is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool gets MCP server uptime information, with a specific verb and resource. It distinguishes well from siblings like get_system_metrics or get_rate_limit_stats.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. There is no mention of context or exclusion criteria, leaving the agent without direction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_projectsA
List all discovered projects.
Returns information about all projects that have been configured through environment variables.
Returns: JSON string with list of projects
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Only states it returns a JSON list, but omits behavioral details such as authentication requirements, performance considerations, or whether it can be called repeatedly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: 3 sentences with no unnecessary words. Front-loaded with the main action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given zero parameters and an output schema, the description covers the essential purpose and source (env vars) and return type. Could briefly mention the JSON structure, but overall sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
No parameters exist, schema coverage is 100%, so baseline is 4. Description adds no param-specific info, but none is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all discovered projects configured via environment variables, which is a specific verb-resource pair that distinguishes it from siblings like get_project_info (single project) and health/metric tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage for listing all projects, but lacks explicit when-to-use or when-not-to-use guidance, and does not mention alternatives among sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
reset_rate_limitB
Reset rate limit state for a client or all clients.
CAUTION: This is an administrative tool. Use with care.
| Name | Required | Description | Default |
|---|---|---|---|
| client_id | No | Optional client identifier to reset. If not provided, resets ALL clients. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must fully disclose behavior. It warns that the tool is administrative but does not explain what resetting entails (e.g., clearing all counters, potential impact on clients). Missing details on reversibility, permissions required, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two short sentences. The first sentence directly states the purpose, and the second provides a critical caution. No unnecessary words or repetition.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequately covers the basic functionality and includes a caution, but for an administrative tool, more context about impact, safety, and typical use cases would be valuable. The output schema may describe return values, but behavioral context is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not add meaning beyond the schema. The schema already describes 'client_id' as optional with a default of null and explains that omitting it resets all clients. With 100% schema coverage, the baseline is 3, and no extra parameter insight is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the action (reset), resource (rate limit state), and scope (client or all clients). The purpose is unambiguous and distinguishes this tool from siblings that deal with health, metrics, or WordPress operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only guidance is 'CAUTION: This is an administrative tool. Use with care.' This lacks explicit instruction on when to use this tool versus alternatives, such as when rate limits are misconfigured or need to be cleared. No mention of prerequisites or consequences.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_audit_hook_configureA
[UNIFIED] Configure the companion plugin's audit-hook webhook. Sets the MCPHub endpoint_url, shared HMAC secret (≥16 chars), enabled flag, and list of hooked events. Returns the resulting status. Requires manage_options.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| events | No | ||
| secret | No | ||
| enabled | No | ||
| endpoint_url | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description states it sets parameters and returns resulting status, but lacks details on side effects, idempotency, or response format. Adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, front-loaded paragraph with no superfluous text; efficiently covers purpose, parameters, return, and requirement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, low schema coverage, and no annotations, the description is incomplete: missing response format, events parameter details, and error conditions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%; description lists parameters (endpoint_url, secret with length constraint, enabled flag, events) but lacks detailed explanation, especially for 'events' format.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it configures the companion plugin's audit-hook webhook, specifying the exact settings (endpoint_url, secret, enabled, events) and distinguishes from related tools like disable and status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It mentions the prerequisite 'Requires manage_options' and implies configuration use case, but does not explicitly contrast with disabling or checking status, though context makes it clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_audit_hook_disableC
[UNIFIED] Clear the companion plugin's audit-hook configuration (endpoint_url, secret, events) and stop forwarding events. Requires manage_options.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It states the tool clears configuration and stops events, but does not mention side effects (e.g., whether configuration is permanently deleted, if the action is reversible, or what happens if already disabled). This leaves important behavioral aspects unclear.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loading the primary action. The '[UNIFIED]' prefix may add minor ambiguity but overall the structure is efficient and waste-free.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple schema and no output schema, the description omits critical context: what happens after disabling (e.g., can it be re-enabled via configure?), idempotency, and how the site parameter is used. For a configuration-modifying tool, the lack of completeness reduces usefulness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter ('site') with 0% description coverage and no type details beyond 'string'. The description does not explain what 'site' represents (e.g., site ID, URL, domain), nor how to format it. Since schema coverage is 0%, the description must compensate but fails to add any parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool clears the audit-hook configuration (endpoint_url, secret, events) and stops forwarding events. The verb 'clear' and specific resource make the purpose precise and distinguishable from sibling tools like wordpress_audit_hook_configure and wordpress_audit_hook_status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description only mentions a permission requirement ('Requires manage_options'), but provides no guidance on when to use this tool versus alternatives, nor any conditions or exclusions. There is no explicit context for appropriate usage scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_audit_hook_statusB
[UNIFIED] Read the companion plugin's audit-hook configuration (v2.7.0+): current endpoint_url, whether a secret is set, enabled flag, event list, last-push timestamp, failure count. Secret is never returned in full — only the last 4 characters. Requires manage_options.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that secret is only partially returned (last 4 characters) and requires manage_options. No annotations, so description carries burden; it adds relevant behavioral context but does not cover side effects or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is efficient, listing returned fields and key details in one paragraph. The '[UNIFIED]' prefix adds minor clutter but is acceptable.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Comprehensive for a read operation: lists returned fields, version requirement, and permission. Lacks return format details but given no output schema, it adequately informs the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has one parameter 'site' with no description (0% coverage). The description does not explain the parameter meaning, format, or usage, providing no additional value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it reads the audit-hook configuration, specifying the resource and verb. It lists the returned fields (endpoint_url, secret indicator, etc.) and distinguishes itself from sibling tools like wordpress_audit_hook_configure.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies use for inspecting current settings, with mention of required permission (manage_options). No explicit when-to-use versus siblings or when-not-to-use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_bulk_delete_mediaA
[UNIFIED] Delete (trash or permanently remove) a list of media attachments in a single call. Max 100 IDs per request. Returns processed / errors / total. Uses stock /wp/v2/media/{id} DELETE so no companion plugin is required, but issues N requests (with a small concurrency cap); for 1000+ attachments, paginate client-side.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| media_ids | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses that it issues N requests with a concurrency cap, uses the standard DELETE endpoint, and returns processed/errors/total. Does not elaborate on force parameter behavior or partial failure handling, but overall provides good transparency for a bulk operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is concise with three sentences, front-loading the action and resource. The '[UNIFIED]' prefix is unnecessary but not harmful. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, limits, and basic behavior, but lacks details on force parameter semantics, exact return structure, error handling, and authentication prerequisites. For a bulk tool with no output schema and many sibling tools, more completeness would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It only indirectly addresses media_ids via the 100-limit hint. Parameters 'site' and 'force' are not explained; 'force' is only loosely tied to the 'trash or permanently remove' phrase. Missing parameter details despite needing them.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Delete (trash or permanently remove) a list of media attachments in a single call,' specifying the verb, resource, and bulk scope. It distinguishes from the singular delete sibling by emphasizing 'list' and 'single call,' but does not explicitly name the alternative tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear limits: 'Max 100 IDs per request,' concurrency cap, and client-side pagination for large lists. Explains that no companion plugin is needed. Does not explicitly state when not to use, but the context strongly implies singular deletion for single items.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_bulk_reassign_mediaA
[UNIFIED] Reassign the parent post of a list of media attachments in a single call. Useful for moving attachments between posts, or detaching (use target_post=0). Max 100 IDs. Returns processed / errors / total.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| media_ids | Yes | ||
| target_post | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses it's a bulk mutation, max 100 IDs, and returns processed/errors/total. However, it lacks details on idempotency, error handling for invalid IDs, partial success behavior, and required permissions. This is minimal but adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences that efficiently convey purpose and key constraints (use cases, max IDs, output structure). No unnecessary words; front-loaded with the primary action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the 3 parameters, no output schema, and no annotations, the description covers the primary use case and constraints. It mentions return fields (processed/errors/total) but omits error scenarios, permissions, and step-by-step guidance. Still, it provides enough for an agent to use the tool correctly in typical cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so the description must compensate. It explains 'target_post' usage (0 for detach) and implies 'media_ids' are a list. However, 'site' is not described, and 'media_ids' format (IDs vs. URLs) is ambiguous. Partial compensation, but not fully clarifying all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'reassign' and the resource 'parent post of media attachments', specifying a bulk operation. It distinguishes itself from sibling media tools by focusing on reassigning parent in bulk, not deleting or updating individual media.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly mentions use cases: moving attachments between posts or detaching (with target_post=0). It also notes a batch limit of 100 IDs. However, it does not contrast with alternatives like wordpress_update_media for single reassignment, but the context is sufficient for an agent to infer when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_bulk_update_metaA
[UNIFIED] Batch-update post_meta (posts, pages, WooCommerce products) in a single REST round-trip via the airano-mcp-bridge companion plugin (v2.2.0+). Each item is permission-checked in PHP via current_user_can('edit_post', post_id). Pass a null meta value to delete that key. Maximum 500 items per call.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| updates | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses batch behavior, per-item permission checks via current_user_can, deletion when null is passed, and a maximum item limit of 500. This covers key behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences with no wasted words. It front-loads the core purpose and then adds constraints and behavior in a logical order.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple schema (2 parameters) and no output schema or annotations, the description covers the essential behaviors: batch update, permission check, deletion via null, and limits. It could mention the response format, but it is not critical for selection or invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description must compensate. It adds that 'updates' items are permission-checked and that null meta values delete keys, but it does not describe the expected structure of the 'updates' array items or the format of the 'site' parameter. Meaning is added but incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool batch-updates post_meta for posts, pages, and WooCommerce products using a specific companion plugin. It uses a specific verb (batch-update) and resource (post_meta), distinguishing it from sibling tools like wordpress_update_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the companion plugin requirement and permission checks, but does not explicitly state when to use this tool versus alternatives (e.g., single-update tools). It provides usage context (batch updates, max 500 items) but lacks when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_cache_purgeA
[UNIFIED] Purge all caches on the WordPress site via the airano-mcp-bridge companion plugin (v2.4.0+). Auto-detects active cache plugins (LiteSpeed, WP Rocket, W3 Total Cache, WP Super Cache, WP Fastest Cache, SiteGround Optimizer) and calls each one's purge API. Always flushes the object cache. Requires manage_options on the calling application password.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully discloses behavior: auto-detects active cache plugins, calls each purge API, always flushes object cache, and requires manage_options capability. This is comprehensive for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is three sentences, efficiently conveying purpose, mechanism, and requirement. No redundant information, and key detail is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with no output schema, the description is complete: it explains the function, supported plugins, the flush action, the requirement, and the site parameter context. No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter 'site' with no schema description. The description mentions the site context but does not detail the parameter format, leaving ambiguity. Given 0% schema coverage, more explicit param guidance would improve this score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool purges all caches on a WordPress site via the airano-mcp-bridge plugin. It lists specific supported cache plugins, making the purpose precise and distinguishable from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explicitly states the tool is for purging caches. It does not provide explicit alternatives or when not to use, but the sibling list shows no other cache purge tool, and the context suggests it's the go-to for cache clearing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_categoryC
[UNIFIED] Create a new WordPress category. Supports hierarchical categories with parent relationships.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| site | Yes | ||
| parent | No | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only says 'create' and 'supports hierarchical categories.' It does not disclose behavior such as slug generation, duplicate handling, permission requirements, or success response. For a mutation tool, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (one sentence plus a note) but lacks important details. It is not optimally concise as it omits critical information that would fit in a slightly longer description.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters, no output schema, and no annotations, the description is incomplete. It does not explain return values, error cases, or parameter details beyond the hint about hierarchy.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description adds no parameter-specific meaning beyond field names. It mentions 'parent relationships' but does not explain parameter formats (e.g., slug vs ID) or constraints. The description does not compensate for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new WordPress category' with a specific verb and resource, and distinguishes from sibling tools like wordpress_create_tag or wordpress_create_post by specifying 'category' and mentioning hierarchical support.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., when to use create vs update category, or vs list categories). No prerequisites or conditions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_commentB
[UNIFIED] Create a new WordPress comment on a post. Supports author information and moderation status.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| status | No | hold | |
| content | Yes | ||
| post_id | Yes | ||
| author_name | No | ||
| author_email | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility for behavioral disclosure. It mentions support for author info and moderation status but does not disclose permissions required, side effects, or return value. Critical gaps for a creation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, front-loaded with the core purpose. The '[UNIFIED]' prefix is unnecessary but not distracting. It is concise but could be more informative without added length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 6 parameters, no output schema, and many siblings, the description is too sparse. It does not explain return value, error conditions, or how it differs from other comment-related tools, leaving the agent without sufficient context for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description only vaguely hints at author_name, author_email, and status parameters. It fails to explain the meaning of 'site', 'post_id', 'content', or default values, leaving the agent to infer from names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a new WordPress comment on a post, with explicit mention of supporting author information and moderation status. This distinguishes it from sibling comment tools like list, update, and delete.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates the tool is for creating comments but provides no explicit guidance on when to use it vs. alternatives like wordpress_update_comment or wordpress_list_comments. The context is clear but lacks exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_custom_postC
[UNIFIED] Create a new post of a custom post type. Supports custom fields/meta data.
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | ||
| site | Yes | ||
| title | Yes | ||
| status | No | draft | |
| content | Yes | ||
| post_type | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden but only says 'Create' and 'Supports custom fields/meta data.' No disclosure of permissions, side effects, error behavior, or response format. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is efficient but omits essential information. It is not overly verbose, but could be restructured to include more detail without significant length increase.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, no output schema, and no annotations, the description is severely lacking. It does not explain return values, error handling, or how to structure the meta parameter. The tool's complexity demands more context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description adds only a vague reference to 'custom fields/meta data' which maps to the 'meta' parameter. No details on other parameters (site, title, status, content, post_type). The description does not compensate for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new post of a custom post type', specifying the verb and resource. It distinguishes from sibling tools like wordpress_create_post by targeting custom post types. The mention of custom fields/meta adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., wordpress_create_post, wordpress_create_page). There are no when-not or context indications, leaving the agent to infer usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_pageC
[UNIFIED] Create a new WordPress page. Supports HTML content, parent pages, and custom slugs.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| slug | No | ||
| title | Yes | ||
| parent | No | ||
| status | No | draft | |
| content | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given the absence of annotations, the description should disclose behavioral traits like authentication needs, side effects, or required permissions. It only states the tool 'creates' a page, but does not discuss potential errors, rate limits, or the impact of the 'status' parameter (defaulting to draft). The supported features list is helpful but incomplete for full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very brief, with only one sentence and a '[UNIFIED]' prefix that adds noise. It is concise but sacrifices necessary detail. The structure is simple and front-loaded, but every word counts and the prefix is unnecessary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (6 parameters, no output schema, no annotations), the description is insufficient. It does not explain the return value, error handling, or parameter formats. The agent would lack crucial information to correctly invoke the tool, especially for required parameters like site and title.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should compensate by explaining parameters. It only mentions 'HTML content, parent pages, and custom slugs', mapping to content, parent, and slug parameters, but omits site, title, and status. It does not clarify that site is required or the meaning of the status field, leaving significant gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly identifies the tool as creating a new WordPress page, which is specific and resource-oriented. However, it does not explicitly differentiate it from siblings like wordpress_create_post or wordpress_create_custom_post, which also create content but for different post types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when to create a page instead of a post. It only lists supported features (HTML content, parent pages, custom slugs) without explaining the context or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_postC
[UNIFIED] Create a new WordPress post. Supports custom slug, categories, tags, and featured image.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| slug | No | ||
| tags | No | ||
| title | Yes | ||
| status | No | draft | |
| content | Yes | ||
| excerpt | No | ||
| categories | No | ||
| featured_media | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It only lists supported features but does not disclose important behavioral traits such as required permissions, error handling, side effects (e.g., whether duplicate titles are allowed), or the nature of the response.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the core purpose. The '[UNIFIED]' prefix is somewhat unclear but does not harm clarity. It could be slightly expanded without losing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters (3 required), no output schema, and no annotations, the description is insufficient. It does not explain return values, error conditions, or the format of parameters like tags (e.g., comma-separated string). An agent would lack critical information to use this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaning to four parameters (slug, categories, tags, featured_media) by stating they are supported. However, it omits description of the five other parameters (site, title, content, status, excerpt) including the three required ones. Schema coverage is 0%, so the description partially compensates but is incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Create a new WordPress post' which is a specific verb+resource. It mentions supported features (custom slug, categories, tags, featured image) which helps distinguish from wordpress_create_page. However, it does not differentiate from wordpress_create_custom_post, a sibling that creates custom post types.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like wordpress_create_page or wordpress_create_custom_post. There is no mention of prerequisites, context, or when-not-to-use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_tagB
[UNIFIED] Create a new WordPress tag. Tag slug is auto-generated from name if not provided.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| site | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the full burden. It discloses the auto-slug generation behavior, but does not mention authentication requirements, error handling (e.g., duplicate names), or what happens if a tag already exists. The behavioral detail provided is helpful but incomplete.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short and to the point, with two sentences. The '[UNIFIED]' prefix adds unnecessary noise but does not significantly hinder clarity. Minor improvement could remove the prefix.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a low-complexity tool, the description covers the basic purpose and a key behavior (auto-slug), but lacks explanation of the required 'site' parameter and does not distinguish from sibling create tools. It feels adequate but with clear gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description adds minimal parameter information. It mentions slug generation but does not clarify the 'site' parameter (a required string) or the optional 'description' parameter. The description fails to compensate for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Create' and resource 'WordPress tag', and provides a specific detail about slug auto-generation. However, it does not explicitly differentiate from sibling tools like wordpress_create_category, so it is not a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given on when to use this tool versus alternatives such as wordpress_create_category or wordpress_create_post. There is no mention of usage context or exclusions, so an agent receives no help with selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_create_taxonomy_termB
[UNIFIED] Create a new term in a taxonomy. Supports hierarchical taxonomies with parent terms. Works with any registered taxonomy.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| site | Yes | ||
| parent | No | ||
| taxonomy | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior. It mentions support for parent terms in hierarchical taxonomies, which adds transparency. However, it does not mention any side effects, error states (e.g., duplicate term), or required permissions for creation. The description is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short—one sentence plus a brief note. It front-loads the core action and differentiator. However, for a tool with 5 parameters, more detail would be beneficial without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 5 parameters, no output schema, and no annotations, the description is insufficient. It covers the basic purpose but lacks details on required parameters, return values, and error conditions. An agent would need additional information to use it correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description should explain parameters. It only mentions parent support, leaving name, site, taxonomy, and description unexplained. The parameters' meanings and required nature are not clarified, providing little value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it creates a new term in a taxonomy, with specific support for hierarchical taxonomies. The phrase 'Works with any registered taxonomy' differentiates it from sibling tools like wordpress_create_category or wordpress_create_tag, which are limited to specific taxonomies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for any taxonomy but does not explicitly state when to use this tool versus create_category or create_tag. No guidance on when not to use it or prerequisites like authentication or existing taxonomy are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_delete_categoryC
[UNIFIED] Delete a WordPress category. Can permanently delete or reassign posts to another category.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| category_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description claims the tool can reassign posts to another category, but the input schema lacks a parameter for the target category, creating ambiguity. No details on side effects, permissions, or reversibility are provided, and annotations are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short but includes a confusing '[UNIFIED]' prefix. It is not structured to separate purpose from usage details, though it remains brief.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With three parameters, no output schema, and no annotations, the description is highly incomplete. Missing explanations of site, force, reassignment mechanics, and expected results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description does not explain any parameter (site, force, category_id). The mention of reassignment is not mapped to a parameter, leaving the force parameter's meaning unclear.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool deletes a WordPress category and mentions the two modes (permanent deletion or reassignment of posts), which distinguishes it from sibling tools like create_category, update_category, and list_categories.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., update_category for modifying a category, or other delete tools). Conditions for when reassignment occurs versus permanent deletion are not explicitly linked to the force parameter.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_delete_commentC
[UNIFIED] Delete or trash a WordPress comment. Can permanently delete or move to trash.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| comment_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must convey side effects. It only mentions the action without discussing reversibility, permissions, or non-verbose consequences.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short and front-loaded but contains slight redundancy ('Delete or trash' and 'Can permanently delete or move to trash'). Could be more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description is insufficient. It omits details about return values and operational context for a 3-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but description does not explain the 'force' parameter's role in deciding between delete and trash, nor does it clarify 'site' or 'comment_id'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool deletes or trashes a WordPress comment, which matches the name. However, it could more explicitly link 'delete' and 'trash' to the 'force' parameter.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'wordpress_update_comment' or 'wordpress_list_comments', nor any prerequisites like user capabilities.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_delete_mediaA
[UNIFIED] Delete media from library. Can permanently delete or move to trash.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| media_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It discloses that deletion can be permanent or to trash, indicating destructive potential. However, it lacks details on reversibility, permissions, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action and resource, no unnecessary words. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 3-parameter tool with no output schema, the description is minimally adequate, covering the essence of the operation but lacking details on success/error responses or parameter value formats.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%. The description adds meaning for the force parameter by linking it to trash vs permanent deletion, but site and media_id remain minimally described beyond their names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and resource (media), and distinguishes between permanent delete and trash, differentiating it from sibling tools like wordpress_bulk_delete_media or wordpress_update_media.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool vs alternatives like bulk_delete for multiple items or update_media for modifications. No prerequisites or exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_delete_pageC
[UNIFIED] Delete or trash a WordPress page. Can permanently delete or move to trash.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| page_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description hints at permanent vs trash behavior but lacks detail on prerequisites, recoverability, or side effects. Inadequate for a delete tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Short and front-loaded with key action. Efficient but sacrifices necessary detail.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 3 parameters, no output schema, and no annotations, the description is far from complete. Omits error handling, return values, and parameter details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%. Description does not explain the three parameters (site, page_id, force). Only indirectly hints at force's effect. Fails to add meaning beyond raw schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb (delete/trash) and resource (WordPress page). Distinguishes from siblings by resource type, but could be more specific about dual action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like wordpress_delete_post. No mentions of prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_delete_postC
[UNIFIED] Delete or trash a WordPress post. Can permanently delete or move to trash.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description must disclose behavioral traits. It hints at two modes (delete vs trash) but does not explain the 'force' parameter's role, irreversibility of permanent deletion, or any side effects like cascading deletion.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short but lacks essential detail, making it under-specified rather than concisely informative. The '[UNIFIED]' prefix adds confusion without value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 3 parameters, no annotations, and no output schema, the description is far too minimal. It omits parameter semantics, behavioral details, and any indication of return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description should explain parameters. It does not link 'force' to trash vs permanent delete, nor does it clarify 'site' or 'post_id' beyond what the schema names imply.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states the verb (delete or trash) and the resource (WordPress post), and distinguishes from siblings like wordpress_delete_page and wordpress_delete_media by specifying 'post'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives such as wordpress_delete_page or wordpress_delete_media; no prerequisites or exclusions provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_delete_tagC
[UNIFIED] Delete a WordPress tag. Permanently removes the tag from all posts.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| force | No | ||
| tag_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description only mentions 'Permanently removes' to indicate irreversibility. Missing details on required permissions, side effects on posts, or error scenarios.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is concise and front-loaded with the action, but it omits critical parameter and behavioral details. Adequate but not efficient in conveying necessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a deletion operation with three parameters and no output schema, the description lacks details on return values, error handling, and behavior when tag is missing. Incomplete for safe invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage; the description does not explain any of the three parameters (site, tag_id, force). The agent must infer their meaning from names alone, risking misuse.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Delete a WordPress tag' and emphasizes permanence. It distinguishes from sibling tools like wordpress_update_tag or wordpress_create_tag.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as wordpress_update_tag or wordpress_delete_category. No prerequisites or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_export_contentA
[UNIFIED] Export posts/pages/products as structured JSON via the airano-mcp-bridge companion plugin (v2.3.0+). Includes referenced media, taxonomy terms, and post_meta. Paginates via offset/limit; response contains has_more + next_offset. Not a WXR dump — intended for AI-pipeline processing, not WP-to-WP import.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| limit | No | ||
| since | No | ||
| offset | No | ||
| status | No | ||
| post_type | No | ||
| include_meta | No | ||
| include_media | No | ||
| include_terms | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses data included (media, terms, meta), pagination via offset/limit, and that it's not a WXR dump. It does not mention side effects or auth requirements beyond the plugin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main purpose, and contains no unnecessary words. It is well-structured and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 9 parameters, no output schema, and no annotations, the description is incomplete. It omits parameter details, output structure, and error handling. The response format is only partially described.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not explain individual parameters (site, limit, since, offset, status, post_type, include_meta, include_media, include_terms). It mentions offset/limit and includes media/terms/meta, but does not add detailed semantics for any parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool exports posts/pages/products as structured JSON via a specific plugin, and explicitly distinguishes it from a WXR dump. This provides a precise and specific purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clarifies when not to use (for WP-to-WP import) and its intent for AI-pipeline processing. It also mentions pagination behavior. However, it does not explicitly contrast with sibling tools like individual get or list tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_generate_and_upload_imageB
[UNIFIED] Generate an image with an AI provider (OpenAI DALL-E, Stability, or Replicate Flux) and upload it to the WordPress media library in one call. Optionally attach to a post or set as featured image. Uses the caller's stored provider API key; falls back to server env vars if no per-user key is set.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| size | No | 1024x1024 | |
| model | No | ||
| title | No | ||
| prompt | Yes | ||
| caption | No | ||
| quality | No | standard | |
| alt_text | No | ||
| filename | No | ||
| provider | Yes | ||
| convert_to | No | ||
| set_featured | No | ||
| skip_optimize | No | ||
| attach_to_post | No | ||
| negative_prompt | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavior. It mentions generation and upload, API key fallback, but lacks details on failure modes, side effects, or operational constraints like rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences, front-loading the core purpose and adding authentication detail. No unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity (15 parameters, no output schema), the description lacks completeness. It doesn't specify return values, required parameter details, or error handling, making it insufficient for reliable invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 15 parameters and 0% schema description coverage, the description provides no parameter-level details. Parameters like 'provider', 'model', 'quality', 'convert_to', etc. are not explained, leaving the agent unable to use them correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly specifies the tool generates an image using AI providers (DALL-E, Stability, Replicate Flux) and uploads it to WordPress media library, with optional attachment to post or featured image. This distinguishes it from sibling upload-only tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains authentication fallback but does not explicitly state when to use this tool versus alternatives like separate generation and upload tools. Usage context is implied but not fully defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_active_themeB
[UNIFIED] Get information about the currently active WordPress theme including name, version, and author.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states the tool's purpose without disclosing behavioral traits such as read-only nature, authentication requirements, or error behavior (e.g., if no active theme exists). There is no value added beyond the basic function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that efficiently communicates the core purpose without extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter, no output schema), the description is minimally adequate, covering purpose and return fields. However, it lacks context on permissions, errors, or response format, which would improve completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one parameter 'site' with no description. The tool description does not explain what value 'site' should take (e.g., URL, domain), leaving the parameter ambiguous. Schema description coverage is 0%, and the description does not compensate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'currently active WordPress theme', and specifies the returned information (name, version, author). This distinguishes it from sibling tools like wordpress_list_themes which lists all themes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention prerequisites or conditions for use. The context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_commentA
[UNIFIED] Get a specific WordPress comment by ID. Returns complete comment data including content, author, and moderation status.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| comment_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden for behavioral disclosure. It states that the tool returns 'complete comment data', which is helpful, but does not mention that it is a read-only operation, any authentication requirements, or rate limits. The description is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two concise sentences. The first sentence clearly states the primary action, and the second lists the return fields. There is no extraneous information, and the most critical information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with two parameters and no output schema, the description provides the essential information: what it does and what it returns. It could be slightly improved by clarifying the 'site' parameter's format, but overall it is sufficiently complete for an agent to understand the tool's purpose and outcomes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, meaning no parameter descriptions exist. The description does not explain the parameters beyond the context of the tool name. While 'site' and 'comment_id' are partially self-explanatory, the description should define the expected format or range, especially for 'site'. Thus, the description adds minimal meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: retrieving a specific WordPress comment by ID. It mentions the resource (comment) and action (get), and lists key return fields (content, author, moderation status). This distinguishes it from siblings like wordpress_list_comments (listing) and wordpress_delete_comment (deletion).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for retrieving a single comment by ID, but does not explicitly state when to use this tool versus alternatives (e.g., use wordpress_list_comments for multiple comments). There is no guidance on prerequisites or context, leaving the agent to infer use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_current_userC
[UNIFIED] Get information about the currently authenticated user including ID, name, username, email, and roles.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must describe behavior. Only states 'Get information' without disclosing what happens if no user is authenticated, error handling, or if the operation is read-only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, concise sentence with clear verb and resource. Front-loaded with tag and essential information. No extraneous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one required parameter and no output schema, the description provides minimal context. Lists return fields but lacks details on authentication requirements or response structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has one parameter 'site' with 0% coverage. Description does not mention the parameter at all, leaving the agent without guidance on its meaning or purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'Get' and resource 'currently authenticated user', listing specific fields (ID, name, username, email, roles). Differentiated from siblings like wordpress_list_users by focusing on the authenticated user.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives (e.g., wordpress_list_users for all users). No context about prerequisites or when not to use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_internal_linksA
[UNIFIED] Extract internal links from a post's content. Returns list of internal links with anchor text and URL. Useful for SEO internal linking analysis and avoiding duplicate links.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full burden. It implies a read operation but does not explicitly state whether it modifies data or mention permissions, rate limits, or error scenarios. The return description is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three sentences, front-loaded with the main purpose, and includes the return type and usage context. It is concise but could be more structured with explicit sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should detail the return structure (e.g., field names). It only says 'list of internal links with anchor text and URL' without specifying if it's an array of objects or the exact fields. Edge cases not mentioned.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description does not explain what 'site' or 'post_id' mean or their expected formats. It only mentions 'from a post's content', which is insufficient for an agent to correctly populate the parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'extract' and the resource 'internal links from a post's content', and specifies the return format (list with anchor text and URL). It uniquely identifies the tool among many WordPress siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage context: 'SEO internal linking analysis and avoiding duplicate links'. However, it does not explicitly differentiate from sibling tools like wordpress_get_post or mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_mediaB
[UNIFIED] Get detailed information about a media item. Returns full metadata including URLs, dimensions, and MIME type.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| media_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that it returns metadata (URLs, dimensions, MIME type) but does not mention read-only safety, authentication needs, rate limits, or other behavioral traits. Basic disclosure but lacking depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with a clear prefix '[UNIFIED]', conveying the essential information without any redundancy. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple retrieval tool with 2 parameters and no output schema, the description covers the key return fields (URLs, dimensions, MIME type). However, it could list additional fields like file size or date to be more complete for an agent without an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain what the 'site' parameter represents or provide any additional meaning beyond the parameter names. It does not compensate for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'media item', and specifies it returns 'detailed information' and 'full metadata' including URLs, dimensions, and MIME type. This distinguishes it from sibling tools like wordpress_list_media (listing) and wordpress_update_media (updating).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not provide guidance on when to use this tool versus alternatives, such as wordpress_get_post for post media or wordpress_list_media for summary data. No when-to-use or when-not-to-use context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_postA
[UNIFIED] Get a specific WordPress post by ID. Returns complete post data including content, metadata, and author information.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| fields | No | ||
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. It correctly implies read-only behavior by stating 'Get' and describing return data, but does not explicitly confirm non-destructive nature, error conditions, or authentication needs. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. No fluff. Front-loaded with the core action. Every part serves a purpose: identification, scope, and return value summary.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks parameter explanations for 'site' and 'fields', and no usage guidance relative to siblings. However, it adequately describes return value content (content, metadata, author). For a simple get tool, it is moderately complete but could better support an agent in selecting and invoking correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage for parameters. Description only explains 'post_id' via 'by ID', but leaves 'site' and 'fields' unexplained. The 'site' parameter's role is ambiguous (URL? identifier?), and 'fields' default null is not clarified. Does not add sufficient meaning beyond schema structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'Get a specific WordPress post by ID' with verb and resource clearly defined. It emphasizes returns complete data, distinguishing it from listing tools like wordpress_list_posts. The '[UNIFIED]' prefix hints at a unified interface, but does not detract from clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implicitly for retrieving a single post by ID, but no explicit when-to-use or when-not-to-use is provided. Given many sibling tools (e.g., wordpress_create_post, wordpress_list_posts), the description lacks guidance on choosing this tool over alternatives. It assumes the agent knows to use this when a specific post ID is available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_post_seoC
[UNIFIED] Get SEO metadata for a WordPress post or page. Returns Rank Math or Yoast SEO fields including focus keyword, meta title, description, and social media settings. Requires SEO API Bridge plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| post_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does not disclose whether the tool is read-only (despite the 'get' name), any side effects, authentication requirements, or rate limits. The only behavioral detail is the plugin requirement, which is insufficient for a mutation-ambiguous tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that efficiently conveys the tool's purpose and key details. The '[UNIFIED]' prefix adds minimal value but does not detract significantly. Information is front-loaded with the main verb 'Get' and followed by specific fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the two-parameter input and lack of output schema, the description should explain the return value structure more thoroughly. It lists example fields but does not describe the full response format. It also omits error handling or edge cases (e.g., post not found, plugin missing). The context is insufficient for an AI agent to fully understand the tool's capabilities.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has two required parameters (site, post_id) with 0% schema description coverage. The description does not clarify what 'site' means (e.g., URL, site identifier) or what 'post_id' expects (the WordPress post ID). No additional context is provided beyond the parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that this tool retrieves SEO metadata for a WordPress post or page, including specific fields like focus keyword, meta title, description, and social media settings. It distinguishes itself from sibling tools such as wordpress_get_post (which retrieves post content) and wordpress_get_product_seo (for products).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description lacks explicit guidance on when to use this tool versus alternatives. It mentions a prerequisite (SEO API Bridge plugin) but does not provide context about when it is appropriate to use this tool or when not to. No mention of alternatives or typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_post_type_infoA
[UNIFIED] Get detailed information about a specific post type including supported features and REST API configuration.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| post_type | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description uses 'get' which implies a read-only operation, but does not explicitly state it is non-destructive or safe. It also doesn't mention any authentication requirements or side effects. Acceptable for a read tool but could be more explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no redundancy, and front-loaded with the key action 'Get detailed information'. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema. Description mentions 'supported features and REST API configuration' but gives no details on return structure (e.g., labels, capabilities, etc.). For a tool retrieving detailed info, more completeness would be helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 2 parameters (site, post_type) with 0% description coverage. Description does not explain the parameters or their expected values (e.g., site identifier format, post type slug). This relies entirely on external knowledge.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it retrieves detailed info about a specific post type, including supported features and REST API config. This distinguishes it from sibling 'wordpress_list_post_types' which lists all post types, but does not provide details.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use or not use this tool vs alternatives. The sibling list tool is implied but not mentioned. Could be improved by noting it is for when you need details on a single post type.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_product_seoA
[UNIFIED] Get SEO metadata for a WooCommerce product. Returns Rank Math or Yoast SEO fields including focus keyword, meta title, description, and social media settings. Requires SEO API Bridge plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| product_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behavioral traits. It states the tool returns SEO metadata and requires a plugin, but does not mention side effects (none expected for read), authentication requirements, rate limits, or what happens if the plugin is missing. The description is adequate but not highly transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (one sentence plus a requirement) and front-loads the purpose. The '[UNIFIED]' prefix adds minimal value but does not detract. It could be slightly more structured, but remains efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema, parameter descriptions, and annotations, the description provides only the basic purpose and a requirement. It misses details about parameter semantics, error conditions, and return structure, leaving notable gaps for an agent to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain the 'site' and 'product_id' parameters beyond the tool's general purpose. Without explicit parameter details, an agent cannot infer valid values or formats, which is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves SEO metadata for a WooCommerce product, specifies the supported plugins (Rank Math or Yoast) and required fields, and implicitly distinguishes from sibling tools like wordpress_get_post_seo (for posts) and wordpress_update_product_seo (for updates).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a prerequisite ('Requires SEO API Bridge plugin') but does not explicitly state when to use this tool versus alternatives like wordpress_update_product_seo or wordpress_get_post_seo. The usage context is implied by the tool's name and purpose, but lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_settingsC
[UNIFIED] Get WordPress site settings. Includes site title, description, URL, email, timezone, and language.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided and description only lists what is returned, not behavioral traits like read-only, authentication needs, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, appropriately front-loaded with purpose and examples, no redundant text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-param tool, description omits critical context about the 'site' parameter, leaving the AI uncertain about what to input.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single required parameter 'site' (string) is not explained; description adds no meaning about what value to provide (e.g., site ID, domain). Schema coverage is 0%.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Get' and resource 'WordPress site settings', lists specific fields included (title, description, URL, etc.), distinguishing it from other wordpress_get_* tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., wordpress_get_post or other getters), nor any when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_get_site_healthC
[UNIFIED] Check WordPress site health and accessibility. Returns comprehensive health status including WordPress, WooCommerce, and SEO plugin availability.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description only states that it returns health status, with no details on side effects, permissions, or response format. Since no annotations are provided, the description should offer more behavioral context but fails to do so.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence without unnecessary details, though the '[UNIFIED]' prefix adds no value. It is appropriately concise but could benefit from slight expansion.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of output schema and annotations, the description is insufficient. It covers return content but omits input specification, making the tool partially defined for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema coverage is 0% and the description does not mention the required 'site' parameter at all. It provides no hints on the expected format (e.g., URL, slug), leaving the agent without necessary context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks WordPress site health and accessibility, listing specific components like WordPress, WooCommerce, and SEO plugin availability. However, it does not differentiate from the sibling tool 'wordpress_site_health', which may cause confusion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives such as 'check_all_projects_health' or 'get_project_health'. The description lacks any context for appropriate use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_categoriesC
[UNIFIED] List WordPress post categories. Returns hierarchical list of categories with post counts.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| per_page | No | ||
| hide_empty | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits such as read-only nature, pagination behavior, or any side effects. Since annotations are absent, the description should provide safety and performance details but does not.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with one sentence, front-loading the action. However, the '[UNIFIED]' prefix is unnecessary and adds clutter.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description only mentions 'hierarchical list with post counts' but omits details on pagination, error conditions, and parameter effects, making it incomplete for practical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain any of the four parameters (page, site, per_page, hide_empty), leaving the agent to infer usage without guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists WordPress post categories and returns a hierarchical list with post counts, distinguishing it from siblings like wordpress_list_tags or wordpress_list_posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. With many similar list tools, explicit usage context is missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_commentsC
[UNIFIED] List WordPress comments. Returns paginated list of comments with author, content, and moderation status.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| status | No | approve | |
| post_id | No | ||
| per_page | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions pagination but does not disclose other behavioral traits such as read-only nature, rate limits, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that conveys the core functionality without redundancy. It is appropriately sized, though it could be slightly more structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 5 parameters and no output schema or annotations, the description is insufficient. It omits details about parameter usage, response structure, and edge cases.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description does not explain the purpose or constraints of parameters like status, post_id, or per_page. It only vaguely references pagination.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists WordPress comments and returns paginated results with author, content, and moderation status. It is specific enough to distinguish from other list tools by resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like wordpress_get_comment or other list tools. No exclusions or context provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_custom_postsB
[UNIFIED] List posts of a specific custom post type. Use list_post_types first to discover available post types.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| status | No | any | |
| per_page | No | ||
| post_type | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the basic operation and prerequisite, without mentioning pagination, filtering, read-only nature, or side effects. This is insufficient for an agent to understand the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (two sentences), which is concise but under-specified. It front-loads the purpose but could be more informative without significantly increasing length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and 5 parameters, the description is incomplete. It does not explain return values, pagination, or constraints. The agent lacks critical context to use the tool effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 0% description coverage, and the description does not explain any of the 5 parameters (site, post_type, page, per_page, status). It only mentions post_type implicitly by referencing the prerequisite tool. Without parameter meanings, the agent cannot use the tool correctly.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists posts of a specific custom post type, using the specific verb 'list' and resource 'custom posts'. It distinguishes from similar tools like wordpress_list_posts and wordpress_list_pages by specifying 'custom post type' and suggests using list_post_types for discovery.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a clear guideline: use list_post_types first to discover available post types. This implies when to use the tool and gives a prerequisite step, though it does not explicitly exclude use cases for standard post types.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_mediaC
[UNIFIED] List media library items. Returns images, videos, documents with URLs and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| per_page | No | ||
| media_type | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must cover behaviors. It mentions return data but omits pagination, potential limits, or whether it is read-only. Minimal behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, but lacks structure. It conveys purpose but no additional context. Could be combined with parameter explanations without becoming verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 4 parameters, no schema descriptions, no output schema, and no annotations, the description is severely incomplete. It fails to provide essential context for correct invocation regarding pagination, filtering, and return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description adds no parameter details. It does not explain the 'site' requirement, 'media_type' values, or pagination parameters 'page' and 'per_page'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List media library items' with the specific types (images, videos, documents) and return fields (URLs and metadata), distinguishing it from single-item retrieval or mutation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like wordpress_get_media or wordpress_upload_media. Lacks context for filtering scenarios or exclusion of other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_pagesC
[UNIFIED] List WordPress pages. Returns paginated list of pages with metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| status | No | any | |
| per_page | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It states the tool returns a paginated list with metadata, implying a read-only operation, but does not disclose other behavioral traits like authentication requirements, rate limits, or whether the call is destructive. The description adds minimal behavioral context beyond what is obvious from the name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise and front-loaded. However, it is slightly too brief given the lack of schema descriptions and annotations, missing an opportunity to provide more information without sacrificing conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, no annotations, and 0% schema parameter coverage, the description should offer more context. It mentions pagination and metadata but does not explain pagination format, metadata fields, error handling, or the effect of parameters. The description is incomplete for a tool of moderate complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the four parameters (site, page, status, per_page). While parameter names are somewhat self-explanatory, the description adds no value beyond what the schema provides. It fails to compensate for the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists WordPress pages and returns a paginated list with metadata. The verb 'list' and resource 'WordPress pages' are specific, and the inclusion of 'paginated' and 'metadata' adds useful detail. The tool name itself distinguishes it from siblings like wordpress_list_posts, so no further differentiation is needed.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives such as wordpress_list_posts or wordpress_list_custom_posts. It does not mention filtering, prerequisites, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_pluginsC
[UNIFIED] List installed WordPress plugins. Shows plugin status (active/inactive), version, and details.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| status | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description does not disclose read-only nature, side effects, or authentication needs. Merely states listing and display of details, insufficient for a read operation with no annotation safety net.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence is concise, but the enigmatic '[UNIFIED]' prefix adds noise without explanation. Structure is minimal but effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 2 parameters, no output schema, and many sibling tools, description fails to explain parameter usage, output format, or when to choose this tool. Incomplete for effective decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. Description does not explain the 'site' or 'status' parameters, missing opportunity to clarify that 'status' filters by active/inactive. Fails to add meaning beyond schema structure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists installed WordPress plugins and includes status, version, and details. It distinguishes from non-plugin tools but lacks differentiation from similar `wordpress_wp_plugin_list_detailed` sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like `wordpress_wp_plugin_list_detailed`. Missing context on when not to use or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_postsC
[UNIFIED] List WordPress posts. Returns paginated list of posts with title, excerpt, status, and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| search | No | ||
| status | No | any | |
| per_page | No | ||
| search_terms | No | ||
| include_content | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It notes pagination and returned fields but fails to disclose read-only nature, authentication requirements, rate limits, or side effects. Crucial behavioral traits are omitted.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (one sentence) but lacks structure. It uses brackets for [UNIFIED] which is unclear. The sentence is front-loaded but could be more informative without adding length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 7 parameters, no output schema, and no annotations, the description is incomplete. It does not explain pagination logic, filtering behavior, or how to interpret results. More detail is needed for correct tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, meaning parameter descriptions are absent. The description adds only vague mention of returned data, not parameter meanings. Ambiguities like 'search' vs 'search_terms' and 'include_content' implications are unresolved.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and resource ('WordPress posts'), and states the return fields (title, excerpt, status, metadata). However, it does not differentiate from siblings like wordpress_list_pages or wordpress_list_custom_posts, which could cause confusion for an AI agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., wordpress_list_pages for pages, wordpress_list_custom_posts for custom post types). Missing context on when not to use or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_post_typesC
[UNIFIED] List all registered post types including built-in (post, page) and custom post types (portfolio, testimonials, etc.).
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden; it only says 'list all registered post types' without disclosing any behavioral traits like read-only nature, authentication requirements, or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (one line) but lacks detail; while it is front-loaded, it omits critical information and could be more structured with parameter explanation.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite the tool's simplicity, the description is incomplete: it does not explain the 'site' parameter, does not describe the return format, and lacks context on scope (e.g., all post types or public only).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not mention the single parameter 'site' at all, failing to explain its purpose or expected value, leaving the agent with no guidance.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'registered post types', including examples of built-in and custom types, making it specific and distinguishable from sibling tools like wordpress_get_post_type_info or wordpress_list_posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, no prerequisites, no mention of safe usage or permissions. It simply describes what it does without context for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_tagsC
[UNIFIED] List WordPress post tags. Returns all tags with usage counts and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| per_page | No | ||
| hide_empty | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but only states it returns data. It does not disclose read-only nature, authentication requirements, rate limits, pagination behavior, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is short (one sentence) but includes an unclear '[UNIFIED]' prefix. The brevity sacrifices clarity and completeness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 4 parameters and no output schema, the description is vastly insufficient. It omits pagination details, parameter explanations, and return format, leaving the agent with little to work with.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not mention any parameters despite a 0% schema coverage. Parameters like page, per_page, hide_empty are left unexplained, forcing the agent to infer their meaning from names alone.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists WordPress post tags and returns usage counts and metadata. This distinguishes it from create/update tools but does not differentiate from similar list tools like wordpress_list_categories, and the 'all tags' claim may conflict with pagination.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as wordpress_list_categories or other wordpress tools. No context about prerequisites or when to avoid using it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_taxonomiesB
[UNIFIED] List all registered taxonomies including built-in (category, post_tag) and custom taxonomies. Returns configuration and post type associations.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It mentions returning 'configuration and post type associations' but does not disclose behavioral traits such as read-only nature, required permissions, or potential performance impacts. The implicit read-only nature of 'list' is not made explicit.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that front-loads the main action. However, the '[UNIFIED]' prefix is unnecessary and could cause confusion. Otherwise, it is concise and to the point.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity of the tool (one parameter, no output schema), the description is minimally adequate. It specifies what is returned but lacks detail about the structure of 'configuration and post type associations'. It does not compensate for the missing parameter documentation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required parameter 'site' with 0% description coverage. The description does not explain the 'site' parameter or its expected format (e.g., URL). It adds no value beyond the schema, leaving the agent to infer meaning from context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'list' and the resource 'registered taxonomies', including both built-in and custom. It also specifies what is returned ('configuration and post type associations'). Among many sibling 'wordpress_list_*' tools, this uniquely identifies its focus on taxonomies.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives like 'wordpress_list_taxonomy_terms' or 'wordpress_list_categories'. Usage is implied by the tool's name and purpose, but no guidance on exclusions or context is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_taxonomy_termsB
[UNIFIED] List terms of a specific taxonomy. Works with any registered taxonomy including categories, tags, and custom taxonomies.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| parent | No | ||
| per_page | No | ||
| taxonomy | Yes | ||
| hide_empty | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description only says 'list terms', but fails to disclose pagination behavior, error handling (e.g., invalid taxonomy), or performance implications, which are essential for a listing tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is efficient with three sentences front-loading purpose, but could be improved by structuring parameter hints briefly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 6 parameters, no output schema, and many sibling tools, the description lacks important details on pagination, filtering, and return values, making it incomplete for proper tool usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain any of the 6 parameters (e.g., page, per_page, parent, hide_empty), leaving the agent with no guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists terms of a specific taxonomy, with examples including categories, tags, and custom taxonomies, distinguishing it from siblings like wordpress_list_categories and wordpress_list_tags.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for any taxonomy but does not explicitly state when to use this tool over alternatives or when not to use it, leaving usage guidance implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_themesC
[UNIFIED] List installed WordPress themes. Returns all themes with their status and metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| status | No | all |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description carries full burden. It implies a read operation but doesn't explicitly state side-effect-free behavior, authentication needs, or rate limits. The phrase 'List installed WordPress themes' suggests read-only, but no confirmation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, no wasted words. However, the '[UNIFIED]' prefix is unusual but not detrimental. It could benefit from slightly more structure like separating core function from return details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has two parameters and no output schema, the description is incomplete. It doesn't mention pagination, return format, or metadata contents. For a list tool with many siblings, more context is needed for correct selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and the description adds no detail about parameters. 'status' is not explained beyond default 'all', and 'site' is not described at all. The description fails to add meaning beyond the schema field names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists installed WordPress themes and returns status and metadata. It distinguishes from 'wordpress_get_active_theme' (single theme) but doesn't differentiate from 'wordpress_wp_theme_list_detailed'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'wordpress_get_active_theme' or 'wordpress_wp_theme_list_detailed'. The description is generic and lacks usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_list_usersC
[UNIFIED] List WordPress users. Returns paginated list of users with name, username, email, and roles.
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | ||
| site | Yes | ||
| roles | No | ||
| per_page | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully disclose behaviors. It only mentions pagination, but omits other important traits such as authentication requirements, sorting, error handling, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence, which is appropriate for a simple listing tool. However, it could be slightly expanded without losing conciseness to include more helpful details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations, no output schema, and 4 undocumented parameters, the description is incomplete. It fails to cover key aspects needed for correct usage, such as parameter behavior or return structure.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 4 parameters with 0% description coverage, and the tool description does not explain any parameter meaning beyond their names. No additional context is provided for 'site', 'page', 'roles', or 'per_page'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states that the tool lists WordPress users and specifies the returned fields (name, username, email, roles). This distinguishes it from sibling tools that list other WordPress entities (posts, categories, etc.).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or exclusions. It only implies use for listing users, but lacks explicit usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_probe_capabilitiesA
[UNIFIED] Probe the airano-mcp-bridge companion plugin for the effective capability set of the calling application password plus the list of companion routes the installed version ships. Returns companion_available: false when the plugin is missing or outdated. Cached 24 h per (site, user).
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that it returns 'companion_available: false' when missing/outdated and is cached 24h. It implies a read-only probe, but lacks explicit statement about non-destructiveness. With no annotations, this is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no wasted words. Efficient and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Without output schema, the description provides a good overview of what is returned (capability set, routes, companion_available flag). Adequate for a probe tool, but could mention return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain the 'site' parameter. The only hint is in caching note, but 'site' meaning is ambiguous (URL? ID?). Description fails to add value over schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool probes the companion plugin for the effective capability set and companion routes, with a specific verb and resource. It is unique among siblings as a probing tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking capabilities and routes, but does not explicitly state when to use or when not to use, nor mention alternatives among siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_probe_upload_limitsA
[UNIFIED] Probe a WordPress site for its effective upload limits (upload_max_filesize, post_max_size, memory_limit, max_input_time, wp_max_upload_size). Uses the airano-mcp-bridge companion plugin if present, else best-effort from the WP REST index. Cached 24 h per site.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It clearly explains that the tool will attempt to use a companion plugin for more accurate results, and if not available, will do a best-effort from the WP REST index. It also states the caching period of 24 hours, which helps the agent understand the freshness of results. There is no contradiction with annotations (none exist).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, using only three sentences. It front-loads the purpose with '[UNIFIED]' and the core action 'Probe a WordPress site for its effective upload limits'. Every sentence adds value: method, caching, and what limits are checked. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has only one parameter and no output schema, the description adequately covers its semantics. It explains the two possible probing methods, the caching behavior, and the list of limits checked. This is sufficient for an AI agent to use the tool correctly without additional information.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema only defines a 'site' parameter as a string with no description. The tool description adds meaning by specifying that the parameter represents a WordPress site URL, and that the tool probes that site for upload limits. This provides context beyond the raw schema, though it doesn't detail the expected format (e.g., must include protocol).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: to probe a WordPress site for effective upload limits. It lists the specific PHP and WordPress limits checked (upload_max_filesize, post_max_size, etc.), making the function unambiguous. The tool name is descriptive, and the description adds specific detail, distinguishing it from sibling tools that deal with other aspects of WordPress or health metrics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides usage context by explaining it uses the airano-mcp-bridge companion plugin if available, or falls back to the WP REST index. It also mentions that results are cached for 24 hours per site, implying the tool can be used to check limits before uploads. It doesn't explicitly state when not to use it or suggest alternatives, but the context is clear enough for an AI agent to decide when it's appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_regenerate_thumbnailsA
[UNIFIED] Rebuild attachment sub-sizes (the registered WP image sizes plus any from add_image_size() in the active theme). Use this after upload_media_from_url / _from_base64 with convert_to=webp|avif, after a theme switch that adds new sizes, or for legacy attachments missing thumbnails. Routes through the airano-mcp-bridge companion plugin v2.8.0+. Body shapes: either an 'ids' list to target specific attachments (max 50 per call); or all=true with offset/limit for paged batch. Returns has_more + next_offset in batch mode so callers can continue.
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | ||
| ids | No | ||
| site | Yes | ||
| limit | No | ||
| offset | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It describes the action, the required plugin, two modes of operation (ids list vs. batch), and batch continuation via 'has_more + next_offset'. It does not mention potential side effects like file deletion or authentication, but regeneration is typically non-destructive and the tool is well-documented for its purpose.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single paragraph but is dense and well-organized: it starts with the core action, then lists usage scenarios, then explains input shapes, and ends with return behavior. It balances completeness with brevity, avoiding unnecessary fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 5 parameters, no output schema, and no annotations, the description covers all critical aspects: what it does, when to use it, how to use it (ids vs. batch), technical prerequisites (plugin version), and batch continuation. It is fully sufficient for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description compensates by explaining the 'ids' parameter (list of specific attachment IDs, max 50 per call) and the batch mode parameters ('all', 'offset', 'limit'). It also clarifies that 'ids' and 'all' are mutually exclusive ('Body shapes: either...'). This adds significant value beyond the schema's raw types and defaults.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Rebuild attachment sub-sizes') and explains specific scenarios ('after upload_media_from_url / _from_base64 with convert_to=webp|avif, after a theme switch that adds new sizes, or for legacy attachments missing thumbnails'). It distinguishes itself from sibling tools by focusing on thumbnail regeneration, which none of the siblings explicitly address.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description directly states when to use the tool: after specific upload operations with image conversion, after theme switches, or for legacy attachments. It also mentions the companion plugin requirement. While it does not explicitly list alternatives or when not to use, the provided context is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_site_healthB
[UNIFIED] Unified site-health snapshot via the airano-mcp-bridge companion plugin (v2.6.0+). Single request returns WP + PHP + MySQL versions, loaded PHP extensions, server software + disk free, active plugins with versions, active theme, and writability checks. Falls back to companion_available: false when the plugin is missing. Requires manage_options.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Although no annotations are provided, the description details the exact data returned (versions, plugins, theme, writability) and the fallback for missing plugin. It also mentions the required capability. This is fairly transparent for a read-only health check.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is a single, dense sentence that covers key points. Front-loading with '[UNIFIED]' is slightly extraneous but overall concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description explains the comprehensive output and fallback. However, it lacks parameter details, preventing full completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'site' is undocumented; schema coverage is 0% and the description adds no meaning about format or acceptable values. This is a significant gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides a 'Unified site-health snapshot' with specific data like WP, PHP, MySQL versions. It distinguishes from sibling tools by focusing on WordPress site health, not general project health.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or when-not-to-use guidance. 'Requires manage_options' is a prerequisite but no comparison with alternatives like check_all_projects_health. The fallback behavior is described but not contextualized.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_transient_flushA
[UNIFIED] Flush WordPress transients via the airano-mcp-bridge companion plugin (v2.5.0+). Scopes: 'expired' (default, delete_expired_transients), 'all' (every transient), 'pattern' (shell glob like 'rank_math_*'). On multisite, include_site_transients=true also purges site_transient* rows. Requires manage_options.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| scope | No | ||
| pattern | No | ||
| include_site_transients | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It effectively discloses the destructive nature (flush/purge), available scopes, default behavior (expired), multisite handling, and permission requirement. It adds value by specifying the companion plugin version and the shell glob pattern for the 'pattern' scope, though it omits return values or side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise paragraph that front-loads the core purpose and then elaborates on scopes and multisite behavior. It avoids fluff but could benefit from structuring (e.g., bullet points) for quick scanning. Still, it efficiently conveys essential information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description adequately covers behavioral aspects but omits return format, potential side effects, and the meaning of the required 'site' parameter. For a destructive mutation tool with moderate complexity, more context would be beneficial for safe usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, so description must compensate. It explains 'scope', 'pattern' (via scope), and 'include_site_transients' meanings. However, it fails to explain the required 'site' parameter, which is a significant gap given the context of managing multiple WordPress sites. Overall, adds meaning for most but not all parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (flush), resource (WordPress transients), and details specific scopes ('expired', 'all', 'pattern') and multisite behavior. It distinguishes itself from sibling tools by specifying its unique functionality of transient flushing, which is not shared by other WordPress tools in the sibling list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite (requires manage_options) but does not explicitly state when to use this tool vs alternatives like wordpress_cache_purge or other cache-related tools. No guidance on exclusions or alternative approaches is provided, leaving usage context partially implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_categoryC
[UNIFIED] Update an existing WordPress category. Can modify name, description, and parent category.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| site | Yes | ||
| parent | No | ||
| category_id | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and description only states 'update' without disclosing mutation behavior, side effects (e.g., updating parent), authentication needs, or idempotency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is extremely concise (one sentence), but the '[UNIFIED]' prefix is ambiguous and the brevity sacrifices necessary detail. Adequate but not optimally structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, 5 parameters (2 required), and many siblings, the description fails to provide return value info, required fields context, or edge cases. Incomplete for effective tool selection.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, and description lists three modifiable fields (name, description, parent), but omits required parameters (site, category_id) and does not add meaning beyond the schema's property names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Update an existing WordPress category' with verb and resource, and lists modifiable fields (name, description, parent), distinguishing it from create/delete siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like wordpress_create_category or wordpress_delete_category. Missing context about prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_commentC
[UNIFIED] Update an existing WordPress comment. Can update content, status, author information, etc.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| status | No | ||
| content | No | ||
| comment_id | Yes | ||
| author_name | No | ||
| author_email | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description lacks disclosure of side effects (e.g., notifications, idempotency). Only says 'update' without specifying if partial updates are allowed or other behavioral traits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, front-loaded with '[UNIFIED]', concise but adequately structured. Could include more detail without verbosity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations, 6 params with no schema-level descriptions. Description insufficient for an agent to understand return values, error cases, or complete behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. Description only generically mentions 'content, status, author information' without explaining each parameter's format or constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it updates an existing WordPress comment and lists specific fields (content, status, author info). Distinguishes from siblings like wordpress_create_comment.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use or not use this tool. No mention of prerequisites (e.g., comment must exist) or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_mediaB
[UNIFIED] Update media metadata. Supports title, description, slug, alt text, caption, status, and associated post.
| Name | Required | Description | Default |
|---|---|---|---|
| post | No | ||
| site | Yes | ||
| slug | No | ||
| title | No | ||
| status | No | ||
| caption | No | ||
| alt_text | No | ||
| media_id | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description fails to disclose behavioral traits such as whether it overwrites all fields or only provided ones, what happens on failure, or if it returns the updated object. This is insufficient for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences, front-loaded with the main purpose, and contains no unnecessary information. It is appropriately concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and zero schema description coverage, the description is incomplete. It omits required parameters, return values, error conditions, and usage context, making it insufficient for full understanding.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description lists supported fields (title, description, slug, alt_text, caption, status, post) which adds meaning beyond the schema, but fails to explain the 'post' parameter or mention required parameters 'site' and 'media_id'. With 0% schema coverage, more detail is needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Update media metadata' and lists specific fields (title, description, slug, alt text, caption, status, associated post) which distinguishes it from sibling tools like wordpress_update_post or wordpress_update_page.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like wordpress_get_media or wordpress_delete_media. No prerequisites or context are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_pageB
[UNIFIED] Update an existing WordPress page. Can update title, content, status, slug, parent page, featured image, and post meta (e.g. Yoast fields).
| Name | Required | Description | Default |
|---|---|---|---|
| meta | No | ||
| site | Yes | ||
| slug | No | ||
| title | No | ||
| parent | No | ||
| status | No | ||
| content | No | ||
| page_id | Yes | ||
| featured_media | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must cover behavioral traits. It only states that the tool updates a page, but does not disclose side effects, required permissions, rate limits, error conditions, or response structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: a single sentence with a clear action and a list of updateable fields. It is front-loaded and efficient, though could be slightly more structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters with 0% schema description coverage, no output schema, and no annotations, the description is incomplete. It misses parameter formats, required parameters (site, page_id are not mentioned), and does not explain return values.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description lists the main updatable fields (title, content, status, etc.), adding meaning beyond the bare schema names. However, it does not explain formats (e.g., meta as string or JSON), value constraints (e.g., status options), or required parameters like site and page_id.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'an existing WordPress page', and lists specific fields that can be updated (title, content, status, slug, parent page, featured image, and post meta). This distinguishes it from sibling tools like wordpress_create_page or wordpress_delete_page.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It does not mention prerequisites, limitations, or when not to use it. Among many WordPress sibling tools, there is no contextual advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_postC
[UNIFIED] Update an existing WordPress post. Can update any field including title, content, status, categories, and tags.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| slug | No | ||
| tags | No | ||
| title | No | ||
| status | No | ||
| content | No | ||
| excerpt | No | ||
| post_id | Yes | ||
| categories | No | ||
| featured_media | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, and the description only says 'update' without disclosing side effects (e.g., revisions, webhooks), idempotency, or whether partial updates are supported. Critical behavioral details are missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. Front-loaded with purpose. No unnecessary words, though the '[UNIFIED]' prefix adds little value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 10 parameters, no output schema, and no annotations, the description is too minimal. It doesn't explain required inputs, return format, or error handling, leaving significant gaps for the AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. The description lists only a few fields (title, content, status, categories, tags) but ignores site, post_id, slug, excerpt, featured_media. No explanation of what each parameter means or how to format values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates an existing WordPress post, with specific examples of updatable fields (title, content, status, categories, tags). It distinguishes from siblings like create_post and delete_post.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like create_post or delete_post. No prerequisites (e.g., having a valid post_id) or context about typical use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_post_seoB
[UNIFIED] Update SEO metadata for a WordPress post or page. Supports both Rank Math and Yoast SEO fields. Automatically detects which plugin is active. Requires SEO API Bridge plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| robots | No | ||
| post_id | Yes | ||
| og_image | No | ||
| og_title | No | ||
| seo_title | No | ||
| canonical_url | No | ||
| focus_keyword | No | ||
| twitter_image | No | ||
| twitter_title | No | ||
| og_description | No | ||
| meta_description | No | ||
| additional_keywords | No | ||
| twitter_description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description should fully disclose behavioral traits. It mentions the tool updates metadata and requires a plugin, but does not state whether the operation is destructive, idempotent, or what error conditions apply (e.g., missing plugin).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences: one for purpose and one for key features. It is front-loaded with the verb and resource, and every sentence earns its place without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 14 parameters and no output schema or annotations, the description provides minimal contextual information. It omits return values, error handling, and how to effectively use the many optional fields, making it incomplete for an agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for 14 parameters. The description only generically says 'Supports both Rank Math and Yoast SEO fields' without explaining which parameters correspond to which fields or adding semantic meaning beyond the parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Update SEO metadata) and resource (WordPress post or page). It distinguishes from sibling tools by specifying support for both Rank Math and Yoast SEO and automatic plugin detection, which differentiates it from general update_post or get_post_seo.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions a prerequisite (SEO API Bridge plugin) and implies usage for SEO metadata updates only, but it lacks explicit guidance on when to use this tool versus alternatives like wordpress_update_post for non-SEO updates or wordpress_update_product_seo for products.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_product_seoB
[UNIFIED] Update SEO metadata for a WooCommerce product. Same as update_post_seo but specifically for products. Requires SEO API Bridge plugin.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| og_image | No | ||
| og_title | No | ||
| seo_title | No | ||
| product_id | Yes | ||
| canonical_url | No | ||
| focus_keyword | No | ||
| twitter_image | No | ||
| twitter_title | No | ||
| og_description | No | ||
| meta_description | No | ||
| additional_keywords | No | ||
| twitter_description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description only states 'Update' (implying mutation) and a plugin requirement. It does not disclose side effects, idempotency, authorization needs, or error behavior, leaving significant gaps for an AI agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, each earning its place: purpose, sibling differentiation, and requirement. Front-loaded with the action, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 13 parameters and no output schema, the description omits parameter details and return value. It is insufficient for an agent to use this tool correctly without additional knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description provides no explanation for any of the 13 parameters. With 0% schema description coverage, the description fails to add meaning beyond the raw schema, leaving the agent to guess the purpose of each field.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description explicitly states it updates SEO metadata for WooCommerce products, uses specific verb 'Update', and distinguishes from sibling 'wordpress_update_post_seo' by noting it is product-specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells the agent to use this for products instead of 'update_post_seo' and mentions the required plugin. However, it could specify when not to use it (e.g., for non-product posts) or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_update_tagB
[UNIFIED] Update an existing WordPress tag. Can modify name and description.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | ||
| site | Yes | ||
| tag_id | Yes | ||
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description mentions 'update' indicating mutation but lacks details on side effects, authorization requirements, rate limits, or return behavior. It relies solely on the verb which is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. It efficiently conveys the essential action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters (2 required), no output schema, and no annotations, the description is incomplete. It fails to explain the 'site' parameter, the need for an existing tag_id, or the response format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. The description mentions 'name' and 'description' parameters but does not explain 'site' and 'tag_id', which are required. The description adds minimal value beyond the schema field names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'update', the resource 'existing WordPress tag', and what can be modified ('name and description'). It distinguishes from sibling tools like 'wordpress_create_tag' and 'wordpress_delete_tag'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for updating an existing tag but provides no explicit guidance on when to use this tool versus alternatives, nor any exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_chunked_abortB
[UNIFIED] Abort a chunked upload session and delete its spill file.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavior fully. It mentions deletion of spill file, which is a destructive action, but does not cover idempotency, error states, or whether the upload session is also cleaned up on the server side.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is front-loaded and free of fluff. Every word adds value, achieving maximum conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
As part of a chunked upload workflow, the description lacks context about return values, error handling, or how it interacts with other chunked upload tools. The absence of an output schema exacerbates this shortcoming.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description does not explain the parameters (site, session_id) beyond their existence. The agent gets no guidance on expected format or meaning of values.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (abort), the resource (chunked upload session), and the side effect (delete spill file). It effectively distinguishes from sibling tools like start, chunk, and finish.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives like starting a new upload or finishing. It implies usage for aborting but lacks when-not-to-use or prerequisite conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_chunked_chunkA
[UNIFIED] Append a single base64-encoded chunk to a chunked upload session. Chunks must arrive in order starting at index 0.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| index | Yes | ||
| data_b64 | Yes | ||
| session_id | Yes | ||
| chunk_sha256 | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must fully convey behavior. It correctly states the core action and ordering requirement, but it omits details such as error conditions (e.g., wrong order, invalid session), idempotency, or the role of the optional chunk_sha256 parameter. This partial disclosure is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of just two sentences. It front-loads the action and includes the critical ordering constraint with no wasted words. Every sentence serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is part of a chunked upload workflow, but the description fails to mention key context: that a session must be started beforehand, what the tool returns (e.g., success indicator), or how it integrates with start/finish/abort. Given no output schema and no annotations, this minimal description leaves significant gaps for an agent to infer.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must clarify parameters. It implicitly covers data_b64 (base64-encoded chunk) and index (ordering), but site, session_id, and chunk_sha256 are left unexplained. The description does not add enough value beyond the raw schema, leaving key parameters ambiguous.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool appends a single base64-encoded chunk to a chunked upload session, specifying the resource (chunked upload session) and action (append). It also adds ordering constraints (chunks must arrive in order starting at index 0), making the purpose highly specific and unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides an important usage guideline about chunk ordering, which helps the agent understand correct invocation. However, it does not explicitly state when to use this tool in relation to its siblings (e.g., start, finish, abort), nor does it mention prerequisites like an existing session. This leaves the usage context partially implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_chunked_finishB
[UNIFIED] Finalize a chunked upload: assemble + optimize + upload to WordPress. Verifies sha256 if supplied at start.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| title | No | ||
| caption | No | ||
| alt_text | No | ||
| session_id | Yes | ||
| set_featured | No | ||
| skip_optimize | No | ||
| attach_to_post | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses sha256 verification and the assembly/optimization steps but does not mention side effects, required permissions, rate limits, or what happens on failure. For a tool with no annotations, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. However, it could benefit from a brief note on required parameters or expected workflow.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations, output schema, and the presence of 8 parameters, the description is too brief to be considered complete. It does not cover return values, error handling, or the full process context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, and the description does not explain any of the 8 parameters (e.g., site, session_id, title, etc.). The agent has no guidance on how to fill in required fields like site and session_id beyond their names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool finalizes a chunked upload (assemble, optimize, upload) and verifies sha256 if supplied. It uses specific verb+resource and distinguishes itself from sibling tools like start, abort, and chunk.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it is part of a unified process but does not explicitly state when to use this tool versus alternative upload methods (e.g., single upload). It lacks when-not or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_chunked_startA
[UNIFIED] Start a chunked upload session for a large media file. Returns a session_id to use for subsequent chunk/finish/abort calls. TTL 1h, hard cap 500 MB per session.
| Name | Required | Description | Default |
|---|---|---|---|
| mime | No | ||
| site | Yes | ||
| sha256 | No | ||
| filename | Yes | ||
| total_bytes | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses TTL (1h), hard cap (500 MB), and that it returns a session_id. It does not cover auth requirements, error conditions, or resource locking, but gives enough behavioral context for basic usage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loading the action and key outputs. Every word adds value without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description properly states the return value. It covers session lifecycle, TTL, and size cap. However, it omits details like error handling, required auth, and parameter roles, but the core functionally is complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 5 parameters with 0% description coverage, yet the description mentions none of them. It fails to add meaning beyond the schema, which is critical given the lack of schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('start a chunked upload session'), the resource ('large media file'), and the return value ('session_id'). It also mentions TTL and size cap, distinguishing it from other upload tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It instructs to use the session_id for subsequent chunk/finish/abort calls and implies use for large files. While it doesn't explicitly state when not to use, the context of chunked upload and constraints (TTL, cap) provides clear guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_chunked_statusA
[UNIFIED] Query the current state of a chunked-upload session — returns received_bytes and next_chunk so the caller can resume after a disconnect. The session survives for 1 h after the last activity; re-start the session with upload_media_chunked_start if it has expired or been aborted. Returns {error_code: NOT_FOUND} when the session is unknown.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| session_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses session timeout (1 hour), returned fields, and error response (`{error_code: NOT_FOUND}`). It is transparent about the status query behavior, though it does not mention authentication or other side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short paragraph, front-loaded with `[UNIFIED]`, and every sentence adds necessary information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers core behavior (resume after disconnect, session expiration, error case) and references sibling tools. Missing parameter descriptions are a minor gap, but overall it is complete for a status tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0%, but the description does not explain the `site` and `session_id` parameters beyond their mention. While `session_id` is inferable, the lack of explicit descriptions leaves a gap for the agent.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool queries the state of a chunked-upload session, returning `received_bytes` and `next_chunk`. It distinguishes itself from sibling tools like `upload_media_chunked_start` and `upload_media_chunked_abort` by focusing on status querying.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly tells when to use (to resume after a disconnect), mentions session expiry (1 hour), and advises to re-start with `upload_media_chunked_start` if expired or aborted. This provides clear context and alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_from_base64B
[UNIFIED] Upload a base64-encoded file directly to the WordPress media library. For chat-attached images/files smaller than ~10 MB. Use upload_media_from_url for larger files or chunked path later.
| Name | Required | Description | Default |
|---|---|---|---|
| data | Yes | ||
| mime | No | ||
| site | Yes | ||
| title | No | ||
| caption | No | ||
| alt_text | No | ||
| filename | Yes | ||
| convert_to | No | ||
| set_featured | No | ||
| skip_optimize | No | ||
| attach_to_post | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only states the basic action of uploading, lacking details about side effects, permissions, idempotency, error handling, or return values. For a mutation tool with 11 parameters, this is insufficient.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief and front-loaded with key purpose and usage guidance. However, given the tool's complexity, the conciseness sacrifices necessary detail for parameter semantics and behavior.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 11 parameters and no output schema or annotations, the description does not cover return values, error conditions, prerequisites, or the processing of base64 data. It is insufficient for an agent to use the tool reliably.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0% and the description only mentions 'base64-encoded data' and 'filename', ignoring the other 8 parameters (mime, title, caption, alt_text, convert_to, set_featured, skip_optimize, attach_to_post). This fails to provide meaningful guidance beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Upload' and resource 'base64-encoded file to WordPress media library', and distinguishes from a sibling (upload_media_from_url) by specifying small file size (<10 MB) and chat-attached use case. However, it does not differentiate from chunked upload siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly states when to use this tool (for chat-attached images/files <10 MB) and when not (for larger files), with an explicit alternative mentioned (upload_media_from_url) and a note about chunked path later.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_upload_media_from_urlB
[UNIFIED] Upload media from a public URL to the WordPress media library (sideload). Downloads the file with SSRF protection, sniffs MIME, and uploads via raw-binary POST.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| site | Yes | ||
| title | No | ||
| caption | No | ||
| alt_text | No | ||
| filename | No | ||
| convert_to | No | ||
| set_featured | No | ||
| skip_optimize | No | ||
| attach_to_post | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description discloses SSRF protection, MIME sniffing, and raw-binary POST, adding some behavioral context. However, it lacks details on failure modes, authentication requirements, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the action. The '[UNIFIED]' prefix is extraneous but does not detract significantly. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 10 parameters and no output schema or annotations, the description is insufficient. Key parameters like convert_to, set_featured, and attach_to_post are undocumented, leaving agents unable to use them correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% and the description does not explain any of the 10 parameters beyond their implicit names. No parameter behavior or format is clarified, leaving significant ambiguity.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool uploads media from a public URL to WordPress via sideloading. It mentions SSRF protection, MIME sniffing, and raw-binary POST, which distinguishes it from sibling tools like wordpress_upload_media_from_base64 and chunked variants.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for remote URLs (sideload) but does not explicitly state when to use this tool versus alternatives (e.g., from_base64, chunked). No exclusions or context for selection are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_cache_flushC
[UNIFIED] Flush WordPress object cache. Clears all cached objects from Redis, Memcached, or file cache. Safe to run anytime.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It states the tool is safe to run anytime, implying non-destructive behavior, but does not disclose potential performance impacts, authentication needs, or what happens to cached data beyond being cleared.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence without unnecessary words. However, the '[UNIFIED]' prefix is unclear and could be omitted or explained.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single undocumented parameter and lack of differentiation from sibling tools, the description is incomplete. It fails to provide adequate context for correct tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage for the required 'site' parameter, and the description does not explain what 'site' refers to (e.g., ID, URL, name). The agent receives no guidance on how to populate this parameter.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Flush WordPress object cache' and specifies the cache types (Redis, Memcached, file cache), making the purpose clear. However, it does not distinguish from similar siblings like wordpress_cache_purge, so differentiation is lacking.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'Safe to run anytime,' which gives some usage guidance. But it provides no context on when to use this tool over alternatives (e.g., wordpress_cache_purge, wordpress_transient_flush) or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_cache_typeA
[UNIFIED] Get the object cache type being used (Redis, Memcached, file-based, etc.).
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description clarifies that the tool is a read operation ('Get') with no side effects. It does not mention authorization or rate limits, but for a simple getter, the behavioral trait is sufficiently disclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is concise and front-loaded with the key information. No redundant words or tangential details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple, but the missing explanation for the 'site' parameter and no output schema leaves a gap. The description is minimally adequate for understanding the tool's purpose but not fully complete for invocation without further inference.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Despite 0% schema description coverage, the description does not explain the 'site' parameter (e.g., expected format, meaning). The only parameter is completely undocumented, leaving the agent uncertain about how to specify the site.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('object cache type'), with examples (Redis, Memcached, etc.). It distinguishes from siblings like wordpress_wp_cache_flush which performs a different action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit when-to-use or alternative guidance. The context of siblings (e.g., wordpress_wp_cache_flush) implies usage for reading vs. writing, but no direct comparison or exclusion criteria are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_core_updateA
[UNIFIED] Update WordPress core. Default is DRY RUN mode (shows available updates). Set dry_run=false to apply updates. CRITICAL: Always backup before core updates!
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| dry_run | No | ||
| version | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description correctly identifies the dry-run mode and operation type, and adds a backup warning. However, it does not disclose potential side effects like downtime, rollback capabilities, or error handling, leaving some behavioral aspects uncovered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise with three sentences, front-loading the core purpose and key behavior (dry run), and includes a critical warning. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
In the absence of annotations and output schema, the description omits details about the version parameter, the return format of a dry run, and any prerequisites. This leaves gaps for effective tool invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaning to the dry_run parameter by explaining its default and effect, but does not clarify the 'site' or 'version' parameters. Given 0% schema coverage, the description partially compensates but is incomplete.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool updates WordPress core, distinguishes it from sibling tools that handle other updates (e.g., themes, plugins), and explicitly mentions the dry-run default behavior, making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the default dry-run mode and how to apply updates by setting dry_run=false, and includes a backup warning. However, it does not explicitly mention when to use this tool over other core-related tools or when to avoid it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_core_verify_checksumsB
[UNIFIED] Verify WordPress core files against official checksums. Critical security tool for detecting tampering or unauthorized modifications.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility for behavioral disclosure. It does not mention whether the tool is read-only, what output it returns, or any side effects. The phrase 'detecting tampering' hints at inspection but lacks detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no wasted words. It efficiently conveys the purpose and importance. However, it could be slightly restructured to include parameter guidance without adding bloat.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's critical security nature and lack of output schema, the description is incomplete. It does not explain what happens after verification (e.g., list of files, success/failure) or how to interpret results. The single parameter 'site' is not elaborated.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required parameter ('site') with no description. The tool description provides no explanation of what 'site' means (e.g., URL, ID, domain). With 0% schema description coverage, the description should compensate but fails to do so.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Verify WordPress core files against official checksums' and labels it a 'Critical security tool for detecting tampering or unauthorized modifications.' This provides a clear verb and resource, and distinguishes it from siblings like wordpress_wp_plugin_verify_checksums.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for security checks but offers no explicit guidance on when to use this tool versus alternatives (e.g., wordpress_site_health) or when not to use it. The context is clear but lacks exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_db_checkA
[UNIFIED] Check WordPress database for errors. Runs integrity checks to ensure tables are healthy. Read-only operation.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It states 'Read-only operation', which is a key behavioral trait. However, it does not detail what happens when errors are found, any permission requirements, or the output format. Despite this, the read-only declaration is a strong positive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise: two sentences that front-load the purpose and include the read-only note. Every sentence adds value without redundancy. The [UNIFIED] prefix is a minor tag but does not detract.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (1 param, no output schema, no annotations), the description covers the core intent but lacks detail on the 'site' parameter and how it relates to sibling health check tools. It is minimally adequate but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% for a single required parameter 'site'. The description does not explain what 'site' refers to (e.g., ID, URL), nor does it provide any additional meaning beyond the schema. Since low coverage (<50%) requires description to compensate, but it fails to do so.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'check' and the resource 'WordPress database', and indicates it runs integrity checks. It distinguishes from sibling db tools like export/optimize by specifying it's a check operation. Read-only annotation further clarifies its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for checking database integrity but does not provide explicit guidance on when to use this tool versus alternatives like wordpress_get_site_health or wordpress_site_health. No when-not-to-use or alternative references are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_db_exportB
[UNIFIED] Export WordPress database to SQL file in /tmp directory. Creates timestamped backup file for database recovery.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses that the export creates a file in /tmp with a timestamped name, which gives insight into output location and naming. However, with no annotations, it does not mention whether the operation is read-only, auth requirements, or if it overwrites existing files. Still, the provided details are relevant and additive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: a single sentence that covers purpose, output, and destination. No redundancy, and front-loaded with key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description gives essential info (file location, backup purpose) but lacks explanation of the parameter and any side effects or constraints. It is adequate but incomplete for full autonomous use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has one required parameter 'site' with no description, and the tool description does not explain what 'site' refers to (e.g., site URL, ID). With 0% schema description coverage, the description fails to compensate, leaving the agent unsure how to specify the target site.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (export), resource (WordPress database), target format (SQL file), and destination (/tmp directory). It also mentions timestamping and backup purpose, distinguishing it from other WordPress tools that manage posts, media, or cache.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use for backup/recovery but provides no explicit guidance on when to use this tool versus alternatives (e.g., wordpress_export_content for content export, or wp_db_check for integrity). No context on prerequisites or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_db_optimizeB
[UNIFIED] Optimize WordPress database tables. Runs OPTIMIZE TABLE on all WordPress tables to reclaim space and improve performance.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It mentions running OPTIMIZE TABLE, implying a write operation, but fails to disclose potential table locking, performance impact, required permissions, or that it affects all tables across the site.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core action and an explanatory second sentence. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite being a database optimization tool, the description lacks details on return values, duration, side effects, or prerequisites. Given no output schema, it should explain what the agent can expect after execution.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The only parameter 'site' has no schema description (0% coverage). The description does not explain what 'site' represents (e.g., ID, URL), so it adds no meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool optimizes WordPress database tables by running OPTIMIZE TABLE on all tables, specifying the verb 'optimize' and resource 'database tables'. It distinguishes from sibling tools like wordpress_wp_db_check and wordpress_wp_db_export.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like wordpress_wp_db_check, nor does it mention prerequisites, risks, or scenarios to avoid (e.g., high traffic periods).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_plugin_list_detailedC
[UNIFIED] List all WordPress plugins with detailed information including versions, status (active/inactive), and available updates.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose behavioral traits like read-only nature, authentication requirements, or rate limits. It only states the output content, leaving the agent uninformed about side effects or permissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that covers the tool's purpose without extraneous information. It is appropriately front-loaded and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (1 parameter, no output schema), the description provides a reasonable overview but lacks parameter explanation and usage context. It is minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The sole parameter 'site' is not described at all, despite 0% schema description coverage. The agent has no information about what value to provide (e.g., site URL, ID).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all WordPress plugins with detailed information including versions, status, and available updates. It uses a specific verb-resource pair and implies comprehensiveness with '[UNIFIED]', distinguishing it from simpler list tools like wordpress_list_plugins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives, such as wordpress_list_plugins. It does not specify prerequisites, exclusions, or context for choosing this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_plugin_updateA
[UNIFIED] Update WordPress plugin(s). Default is DRY RUN mode (shows available updates). Set dry_run=false to apply updates. Always backup first!
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| dry_run | No | ||
| plugin_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries burden. Mentions dry run safety and backup warning, but lacks details on failure modes, permissions, or return value. Adds useful behavioral context but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loads purpose and mode. Concise, but backup warning seems abrupt. Efficient with minimal waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema. Explains main behavior and safety but fails to clarify return values, multiple plugin support (despite plural 'plugin(s)'), or error conditions. Adequate but leaves gaps for agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 0% description coverage. Description only explains dry_run parameter and implies plugin_name is the plugin to update. Does not explain site or plugin_name format (e.g., slug vs name). Insufficient compensation for missing schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Update WordPress plugin(s)', specifies the resource and action. Distinguishes from sibling list and other update tools by focusing on plugins and mentioning dry run mode.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear context: default dry run mode, set dry_run=false to apply, and backup warning. Does not explicitly state when not to use, but context implies appropriate usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_plugin_verify_checksumsB
[UNIFIED] Verify plugin file integrity against WordPress.org checksums. Detects tampering or corruption. Only works for plugins from WordPress.org repository.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses that the tool detects tampering or corruption and has a repository limitation, but does not mention side effects, performance, or error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is relatively concise, consisting of three sentences. The '[UNIFIED]' prefix may be confusing but does not add unnecessary length. It conveys the core purpose without fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should explain return values or results. It does not. The 'site' parameter is not described. For a simple tool, these omissions leave gaps in completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'site' has no description in the schema (0% coverage) and the tool description does not clarify its meaning, format, or purpose. This leaves the agent without necessary context for proper invocation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool verifies plugin file integrity against WordPress.org checksums, detecting tampering or corruption. It distinguishes from siblings like wordpress_wp_core_verify_checksums by specifying plugins.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions it only works for plugins from WordPress.org repository, giving a condition for use. However, it lacks explicit guidance on when not to use it or alternatives among the many sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_search_replace_dry_runA
[UNIFIED] Search and replace in database (DRY RUN ONLY). Previews what would be changed. NEVER makes actual changes. Use for migration planning.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| tables | No | ||
| new_string | Yes | ||
| old_string | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that the tool only previews changes and never modifies the database, which is critical behavioral information. With no annotations provided, the description carries the full burden, but lacks details on idempotency, side effects, or the exact nature of the preview output.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, consisting of two short sentences. It front-loads the key information (search and replace, dry run only). While it could include more parameter details without becoming overly verbose, the current structure is efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the four parameters, no output schema, and no annotations, the description lacks important details such as the format of the preview output, behavior when 'tables' is null, and any constraints on string values. This insufficient completeness could lead to incorrect tool usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the schema provides no parameter explanations. The description mentions 'site', 'old_string', and 'new_string' implicitly through the tool's action, but does not explain any parameter in detail, especially the optional 'tables' parameter. This is insufficient for an agent to understand parameter usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it performs a search and replace dry run, previewing changes without making actual modifications. The title and description explicitly emphasize 'DRY RUN ONLY' and 'NEVER makes actual changes', leaving no ambiguity about its purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly recommends using this tool for migration planning, providing clear context. However, it does not specify when not to use it or list alternative tools for actual changes, though the indication 'DRY RUN ONLY' implies such distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_theme_list_detailedB
[UNIFIED] List all WordPress themes with detailed information including versions, status, and active theme identification.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits. It only states it lists themes, but does not mention that it is a read-only operation, potential authentication needs, or rate limits. The safety profile is not communicated beyond the obvious listing function.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence. It is efficient and front-loaded with purpose. However, it could benefit from a brief note on the parameter to improve structure without adding significant length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the single required parameter and lack of output schema or annotations, the description is incomplete. It does not explain the 'site' parameter, leaving critical ambiguity for the AI agent. The tool's behavior and required inputs are not fully clarified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'site' has 0% schema description coverage. The description does not explain what 'site' refers to (e.g., URL or domain). It adds no meaning beyond the parameter name, failing to compensate for the missing schema documentation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all WordPress themes with detailed information including versions, status, and active theme identification. The name 'detailed' distinguishes it from sibling 'wordpress_list_themes' which likely provides a simpler list.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for obtaining detailed theme info but does not explicitly state when to use this tool versus 'wordpress_list_themes' or any exclusions. No guidance on prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_theme_updateA
[UNIFIED] Update WordPress theme(s). Default is DRY RUN mode (shows available updates). Set dry_run=false to apply updates. WARNING: Updating active theme can break site appearance!
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes | ||
| dry_run | No | ||
| theme_name | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Discloses dry run behavior and risk of breaking site appearance, but omits details on auth, rate limits, or whether updates overwrite customizations. Adequate but not thorough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences and a warning, front-loaded with main action. No unnecessary words or repetition. Efficiently conveys key information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations. Description covers main action and dry run mode, but does not explain return value, success/failure indicators, or post-update state. Gaps remain for a mutation tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%. Description explains dry_run parameter well and implies theme_name. However, 'site' and 'theme_name' lack explicit meaning, and 'theme(s)' suggests plural but parameter is singular. Partial coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Update WordPress theme(s)' with specific verb and resource. It distinguishes between dry run and actual update, and is distinct from sibling tools like listing or getting themes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides clear guidance on dry run as default and when to set dry_run=false. Includes a warning about active theme. Lacks explicit when-not-to-use or alternatives, but context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_transient_delete_allB
[UNIFIED] Delete all expired transients from the database. Improves database performance by cleaning up temporary cached data.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description indicates deletion of expired transients, implying a destructive but safe cleaning operation. Lacks explicit warnings about data loss or permissions required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action and purpose. Efficient, though could benefit from structured sections.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple tool with one parameter, but missing usage context and parameter explanation. Sibling tools exist that require clearer differentiation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'site' has no description in the schema (0% coverage) and the tool description does not explain what 'site' refers to or how to provide a valid value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Delete' and resource 'expired transients' with a clear benefit. It distinguishes from sibling tools like wordpress_wp_transient_list and wordpress_transient_flush by specifying 'expired'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Does not mention prerequisites or when to avoid using it, such as before other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress_wp_transient_listB
[UNIFIED] List transients in the database (limited to first 100). Shows transient keys with expiration times. Useful for debugging caching issues.
| Name | Required | Description | Default |
|---|---|---|---|
| site | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses a key behavioral trait: the listing is limited to 100 transients. However, it does not explicitly state that the operation is read-only or non-destructive, nor does it mention any authentication or rate limit considerations. The description adds some value beyond the input schema but leaves gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is short (two sentences) and front-loads the primary action. The '[UNIFIED]' prefix is an unnecessary tag that adds no value to an agent. Overall, it is concise, but the tag slightly reduces clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter, no output schema), the description partially covers the purpose and limit. However, it fails to explain the 'site' parameter or describe the output format (e.g., array of objects). For a simple listing tool, more context is needed to be complete, especially since there are sibling tools with similar names.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema coverage is 0%, so the description must compensate for the undocumented 'site' parameter. The description does not mention 'site' at all, leaving its purpose (e.g., site URL or ID) entirely unspecified. This is a critical failure for a tool with one required parameter, as the agent has no guidance on what value to provide.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (list transients), the resource (transients in the database), and the scope (limited to first 100). It also mentions what is shown (keys with expiration times), which is specific to this tool. This effectively distinguishes it from sibling tools like wordpress_transient_flush or wordpress_wp_transient_delete_all, which perform different operations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description indicates the tool is 'useful for debugging caching issues,' providing a clear usage context. However, it does not explicitly state when not to use it or suggest alternative tools (e.g., wordpress_transient_flush for clearing). The guidance is implied rather than explicit, which is adequate but not excellent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
619 tool updates
v3.13.1- Removed
appwrite_activate_deployment - Removed
appwrite_bulk_create_documents - Removed
appwrite_bulk_delete_documents - Removed
appwrite_bulk_delete_files - Removed
appwrite_bulk_update_documents - Removed
appwrite_count_documents - Removed
appwrite_create_boolean_attribute - Removed
appwrite_create_bucket - Removed
appwrite_create_collection - Removed
appwrite_create_database - Removed
appwrite_create_document - Removed
appwrite_create_function - Removed
appwrite_create_index - Removed
appwrite_create_integer_attribute - Removed
appwrite_create_string_attribute - Removed
appwrite_create_subscriber - Removed
appwrite_create_team - Removed
appwrite_create_team_membership - Removed
appwrite_create_topic - Removed
appwrite_create_user - Removed
appwrite_delete_attribute - Removed
appwrite_delete_bucket - Removed
appwrite_delete_collection - Removed
appwrite_delete_database - Removed
appwrite_delete_deployment - Removed
appwrite_delete_document - Removed
appwrite_delete_execution - Removed
appwrite_delete_file - Removed
appwrite_delete_function - Removed
appwrite_delete_index - Removed
appwrite_delete_membership - Removed
appwrite_delete_message - Removed
appwrite_delete_subscriber - Removed
appwrite_delete_team - Removed
appwrite_delete_topic - Removed
appwrite_delete_user - Removed
appwrite_delete_user_session - Removed
appwrite_delete_user_sessions - Removed
appwrite_download_file - Removed
appwrite_execute_function - Removed
appwrite_get_active_deployment - Removed
appwrite_get_avatar_initials - Removed
appwrite_get_bucket - Removed
appwrite_get_bucket_stats - Removed
appwrite_get_collection - Removed
appwrite_get_database - Removed
appwrite_get_deployment - Removed
appwrite_get_document - Removed
appwrite_get_documents_by_ids - Removed
appwrite_get_execution - Removed
appwrite_get_file - Removed
appwrite_get_file_preview - Removed
appwrite_get_file_url - Removed
appwrite_get_file_view - Removed
appwrite_get_function - Removed
appwrite_get_message - Removed
appwrite_get_qr_code - Removed
appwrite_get_team - Removed
appwrite_get_team_prefs - Removed
appwrite_get_topic - Removed
appwrite_get_user - Removed
appwrite_health_cache - Removed
appwrite_health_check - Removed
appwrite_health_db - Removed
appwrite_health_queue - Removed
appwrite_health_storage - Removed
appwrite_health_time - Removed
appwrite_list_attributes - Removed
appwrite_list_buckets - Removed
appwrite_list_collections - Removed
appwrite_list_databases - Removed
appwrite_list_deployments - Removed
appwrite_list_documents - Removed
appwrite_list_documents_paginated - Removed
appwrite_list_executions - Removed
appwrite_list_files - Removed
appwrite_list_functions - Removed
appwrite_list_indexes - Removed
appwrite_list_messages - Removed
appwrite_list_team_memberships - Removed
appwrite_list_teams - Removed
appwrite_list_topics - Removed
appwrite_list_user_sessions - Removed
appwrite_list_users - Removed
appwrite_search_documents - Removed
appwrite_send_email - Removed
appwrite_send_push - Removed
appwrite_send_sms - Removed
appwrite_update_bucket - Removed
appwrite_update_collection - Removed
appwrite_update_database - Removed
appwrite_update_document - Removed
appwrite_update_function - Removed
appwrite_update_membership - Removed
appwrite_update_team - Removed
appwrite_update_user_email - Removed
appwrite_update_user_labels - Removed
appwrite_update_user_name - Removed
appwrite_update_user_phone - Removed
appwrite_update_user_status - Changed
check_all_projects_health1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Removed
directus_aggregate_items - Removed
directus_create_collection - Removed
directus_create_comment - Removed
directus_create_dashboard - Removed
directus_create_field - Removed
directus_create_flow - Removed
directus_create_folder - Removed
directus_create_item - Removed
directus_create_items - Removed
directus_create_operation - Removed
directus_create_panel - Removed
directus_create_permission - Removed
directus_create_relation - Removed
directus_create_role - Removed
directus_create_user - Removed
directus_create_version - Removed
directus_create_webhook - Removed
directus_delete_collection - Removed
directus_delete_dashboard - Removed
directus_delete_field - Removed
directus_delete_file - Removed
directus_delete_files - Removed
directus_delete_flow - Removed
directus_delete_folder - Removed
directus_delete_item - Removed
directus_delete_items - Removed
directus_delete_panel - Removed
directus_delete_permission - Removed
directus_delete_relation - Removed
directus_delete_role - Removed
directus_delete_user - Removed
directus_delete_users - Removed
directus_delete_version - Removed
directus_delete_webhook - Removed
directus_export_items - Removed
directus_get_collection - Removed
directus_get_current_user - Removed
directus_get_dashboard - Removed
directus_get_field - Removed
directus_get_file - Removed
directus_get_file_url - Removed
directus_get_flow - Removed
directus_get_folder - Removed
directus_get_graphql_sdl - Removed
directus_get_item - Removed
directus_get_my_permissions - Removed
directus_get_openapi_spec - Removed
directus_get_permission - Removed
directus_get_relation - Removed
directus_get_revision - Removed
directus_get_role - Removed
directus_get_schema_snapshot - Removed
directus_get_server_info - Removed
directus_get_settings - Removed
directus_get_user - Removed
directus_get_user_role - Removed
directus_get_version - Removed
directus_health_check - Removed
directus_import_file_url - Removed
directus_import_items - Removed
directus_invite_user - Removed
directus_list_activity - Removed
directus_list_collections - Removed
directus_list_comments - Removed
directus_list_dashboards - Removed
directus_list_fields - Removed
directus_list_files - Removed
directus_list_flows - Removed
directus_list_folders - Removed
directus_list_items - Removed
directus_list_operations - Removed
directus_list_panels - Removed
directus_list_permissions - Removed
directus_list_policies - Removed
directus_list_relations - Removed
directus_list_revisions - Removed
directus_list_roles - Removed
directus_list_users - Removed
directus_list_versions - Removed
directus_list_webhooks - Removed
directus_promote_version - Removed
directus_schema_apply - Removed
directus_schema_diff - Removed
directus_search_items - Removed
directus_trigger_flow - Removed
directus_update_collection - Removed
directus_update_current_user - Removed
directus_update_dashboard - Removed
directus_update_field - Removed
directus_update_file - Removed
directus_update_flow - Removed
directus_update_folder - Removed
directus_update_item - Removed
directus_update_items - Removed
directus_update_permission - Removed
directus_update_role - Removed
directus_update_settings - Removed
directus_update_user - Removed
directus_update_version - Removed
directus_update_webhook - Changed
export_health_metrics2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / output_path / descriptionAdded value: +"Path to output file (default: logs/metrics_export.json)"
- Removed
get_audit_log - Removed
get_endpoints - Changed
get_project_health2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / project_id / descriptionAdded value: +"Full project identifier (e.g., \"wordpress_site1\")"
- Changed
get_project_info2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / project_id / descriptionAdded value: +"Full project identifier (e.g., 'wordpress_site1')"
- Changed
get_project_metrics3 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / hours / descriptionAdded value: +"Number of hours of history to analyze (default: 1, max: 24)" - added
Input schema / properties / project_id / descriptionAdded value: +"Full project identifier (e.g., \"wordpress_site1\")"
- Changed
get_rate_limit_stats2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / client_id / descriptionAdded value: +"Optional client identifier to get specific client stats.\n If not provided, returns global statistics for all clients."
- Removed
get_system_info - Changed
get_system_metrics1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
get_system_uptime1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Removed
gitea_close_issue - Removed
gitea_close_pull_request - Removed
gitea_create_branch - Removed
gitea_create_file - Removed
gitea_create_issue - Removed
gitea_create_issue_comment - Removed
gitea_create_label - Removed
gitea_create_milestone - Removed
gitea_create_pr_comment - Removed
gitea_create_pr_review - Removed
gitea_create_pull_request - Removed
gitea_create_repository - Removed
gitea_create_tag - Removed
gitea_create_webhook - Removed
gitea_delete_branch - Removed
gitea_delete_file - Removed
gitea_delete_repository - Removed
gitea_delete_tag - Removed
gitea_delete_webhook - Removed
gitea_get_branch - Removed
gitea_get_file - Removed
gitea_get_issue - Removed
gitea_get_organization - Removed
gitea_get_pr_diff - Removed
gitea_get_pull_request - Removed
gitea_get_repository - Removed
gitea_get_user - Removed
gitea_get_webhook - Removed
gitea_list_branches - Removed
gitea_list_issue_comments - Removed
gitea_list_issues - Removed
gitea_list_labels - Removed
gitea_list_milestones - Removed
gitea_list_org_repos - Removed
gitea_list_org_teams - Removed
gitea_list_organizations - Removed
gitea_list_pr_comments - Removed
gitea_list_pr_commits - Removed
gitea_list_pr_files - Removed
gitea_list_pr_reviews - Removed
gitea_list_pull_requests - Removed
gitea_list_repositories - Removed
gitea_list_tags - Removed
gitea_list_team_members - Removed
gitea_list_user_repos - Removed
gitea_list_webhooks - Removed
gitea_merge_pull_request - Removed
gitea_reopen_issue - Removed
gitea_reopen_pull_request - Removed
gitea_request_pr_reviewers - Removed
gitea_search_users - Removed
gitea_test_webhook - Removed
gitea_update_file - Removed
gitea_update_issue - Removed
gitea_update_pull_request - Removed
gitea_update_repository - Changed
list_projects1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Removed
manage_api_keys_create - Removed
manage_api_keys_delete - Removed
manage_api_keys_get_info - Removed
manage_api_keys_list - Removed
manage_api_keys_revoke - Removed
manage_api_keys_rotate - Removed
n8n_activate_workflow - Removed
n8n_add_project_users - Removed
n8n_change_project_user_role - Removed
n8n_change_user_role - Removed
n8n_create_credential - Removed
n8n_create_project - Removed
n8n_create_tag - Removed
n8n_create_user - Removed
n8n_create_variable - Removed
n8n_create_workflow - Removed
n8n_deactivate_workflow - Removed
n8n_delete_credential - Removed
n8n_delete_execution - Removed
n8n_delete_executions - Removed
n8n_delete_project - Removed
n8n_delete_tag - Removed
n8n_delete_tags - Removed
n8n_delete_user - Removed
n8n_delete_variable - Removed
n8n_delete_workflow - Removed
n8n_duplicate_workflow - Removed
n8n_execute_workflow - Removed
n8n_execute_workflow_with_data - Removed
n8n_export_workflow - Removed
n8n_get_credential - Removed
n8n_get_credential_schema - Removed
n8n_get_execution - Removed
n8n_get_execution_data - Removed
n8n_get_instance_info - Removed
n8n_get_project - Removed
n8n_get_tag - Removed
n8n_get_user - Removed
n8n_get_variable - Removed
n8n_get_workflow - Removed
n8n_get_workflow_tags - Removed
n8n_health_check - Removed
n8n_import_workflow - Removed
n8n_list_executions - Removed
n8n_list_projects - Removed
n8n_list_tags - Removed
n8n_list_users - Removed
n8n_list_variables - Removed
n8n_list_workflows - Removed
n8n_remove_project_user - Removed
n8n_retry_execution - Removed
n8n_run_security_audit - Removed
n8n_set_variables - Removed
n8n_set_workflow_tags - Removed
n8n_source_control_pull - Removed
n8n_stop_execution - Removed
n8n_transfer_credential - Removed
n8n_update_project - Removed
n8n_update_tag - Removed
n8n_update_variable - Removed
n8n_update_workflow - Removed
n8n_wait_for_execution - Removed
oauth_get_client_info - Removed
oauth_list_clients - Removed
oauth_register_client - Removed
oauth_revoke_client - Removed
openpanel_add_chart - Removed
openpanel_compare_funnels - Removed
openpanel_create_client - Removed
openpanel_create_dashboard - Removed
openpanel_create_funnel - Removed
openpanel_create_project - Removed
openpanel_create_scheduled_report - Removed
openpanel_decrement_property - Removed
openpanel_delete_chart - Removed
openpanel_delete_client - Removed
openpanel_delete_dashboard - Removed
openpanel_delete_funnel - Removed
openpanel_delete_profile - Removed
openpanel_delete_project - Removed
openpanel_duplicate_dashboard - Removed
openpanel_export_chart_data - Removed
openpanel_export_events - Removed
openpanel_export_events_csv - Removed
openpanel_export_profile_data - Removed
openpanel_export_report_pdf - Removed
openpanel_get_ab_test_results - Removed
openpanel_get_client - Removed
openpanel_get_cohort_report - Removed
openpanel_get_dashboard - Removed
openpanel_get_device_data - Removed
openpanel_get_event_count - Removed
openpanel_get_funnel - Removed
openpanel_get_funnel_breakdown - Removed
openpanel_get_funnel_conversion - Removed
openpanel_get_geo_data - Removed
openpanel_get_instance_info - Removed
openpanel_get_overview_report - Removed
openpanel_get_page_views - Removed
openpanel_get_paths_report - Removed
openpanel_get_profile - Removed
openpanel_get_profile_events - Removed
openpanel_get_profile_sessions - Removed
openpanel_get_project - Removed
openpanel_get_project_settings - Removed
openpanel_get_project_stats - Removed
openpanel_get_rate_limit_status - Removed
openpanel_get_realtime_stats - Removed
openpanel_get_retention_report - Removed
openpanel_get_storage_stats - Removed
openpanel_get_top_pages - Removed
openpanel_get_top_referrers - Removed
openpanel_get_unique_users - Removed
openpanel_get_usage_stats - Removed
openpanel_health_check - Removed
openpanel_identify_user - Removed
openpanel_increment_property - Removed
openpanel_list_clients - Removed
openpanel_list_dashboards - Removed
openpanel_list_funnels - Removed
openpanel_list_profiles - Removed
openpanel_list_projects - Removed
openpanel_merge_profiles - Removed
openpanel_regenerate_client_secret - Removed
openpanel_search_profiles - Removed
openpanel_set_user_properties - Removed
openpanel_share_dashboard - Removed
openpanel_test_connection - Removed
openpanel_track_batch - Removed
openpanel_track_event - Removed
openpanel_track_page_view - Removed
openpanel_track_revenue - Removed
openpanel_track_screen_view - Removed
openpanel_update_chart - Removed
openpanel_update_client_mode - Removed
openpanel_update_dashboard - Removed
openpanel_update_funnel - Removed
openpanel_update_project - Removed
openpanel_update_project_settings - Changed
reset_rate_limit2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / client_id / descriptionAdded value: +"Optional client identifier to reset.\n If not provided, resets ALL clients."
- Removed
set_rate_limit_config - Removed
supabase_add_column - Removed
supabase_ban_user - Removed
supabase_check_function_health - Removed
supabase_count_rows - Removed
supabase_create_bucket - Removed
supabase_create_policy - Removed
supabase_create_table - Removed
supabase_create_user - Removed
supabase_delete_bucket - Removed
supabase_delete_files - Removed
supabase_delete_policy - Removed
supabase_delete_rows - Removed
supabase_delete_user - Removed
supabase_delete_user_factor - Removed
supabase_disable_extension - Removed
supabase_disable_rls - Removed
supabase_download_file - Removed
supabase_drop_column - Removed
supabase_drop_table - Removed
supabase_empty_bucket - Removed
supabase_enable_extension - Removed
supabase_enable_rls - Removed
supabase_execute_rpc - Removed
supabase_execute_sql - Removed
supabase_generate_link - Removed
supabase_get_auth_config - Removed
supabase_get_auth_stats - Removed
supabase_get_bucket - Removed
supabase_get_database_size - Removed
supabase_get_database_stats - Removed
supabase_get_function_info - Removed
supabase_get_function_url - Removed
supabase_get_instance_info - Removed
supabase_get_public_url - Removed
supabase_get_service_status - Removed
supabase_get_storage_stats - Removed
supabase_get_table_constraints - Removed
supabase_get_table_indexes - Removed
supabase_get_table_relationships - Removed
supabase_get_table_schema - Removed
supabase_get_user - Removed
supabase_get_user_by_email - Removed
supabase_health_check - Removed
supabase_insert_rows - Removed
supabase_invite_user - Removed
supabase_invoke_function - Removed
supabase_invoke_function_batch - Removed
supabase_invoke_function_get - Removed
supabase_list_buckets - Removed
supabase_list_edge_functions - Removed
supabase_list_extensions - Removed
supabase_list_files - Removed
supabase_list_functions - Removed
supabase_list_policies - Removed
supabase_list_roles - Removed
supabase_list_schemas - Removed
supabase_list_tables - Removed
supabase_list_triggers - Removed
supabase_list_user_factors - Removed
supabase_list_users - Removed
supabase_move_file - Removed
supabase_query_table - Removed
supabase_search_users - Removed
supabase_test_function - Removed
supabase_unban_user - Removed
supabase_update_bucket - Removed
supabase_update_policy - Removed
supabase_update_rows - Removed
supabase_update_user - Removed
supabase_upload_file - Removed
woocommerce_create_coupon - Removed
woocommerce_create_customer - Removed
woocommerce_create_order - Removed
woocommerce_create_product - Removed
woocommerce_create_product_attribute - Removed
woocommerce_create_product_category - Removed
woocommerce_create_product_variation - Removed
woocommerce_delete_coupon - Removed
woocommerce_delete_order - Removed
woocommerce_delete_product - Removed
woocommerce_get_customer - Removed
woocommerce_get_customer_report - Removed
woocommerce_get_order - Removed
woocommerce_get_product - Removed
woocommerce_get_sales_report - Removed
woocommerce_get_top_sellers - Removed
woocommerce_list_coupons - Removed
woocommerce_list_customers - Removed
woocommerce_list_orders - Removed
woocommerce_list_product_attributes - Removed
woocommerce_list_product_categories - Removed
woocommerce_list_product_tags - Removed
woocommerce_list_product_variations - Removed
woocommerce_list_products - Removed
woocommerce_update_coupon - Removed
woocommerce_update_customer - Removed
woocommerce_update_order_status - Removed
woocommerce_update_product - Removed
wordpress_advanced_bulk_assign_categories - Removed
wordpress_advanced_bulk_assign_tags - Removed
wordpress_advanced_bulk_delete_media - Removed
wordpress_advanced_bulk_delete_posts - Removed
wordpress_advanced_bulk_delete_products - Removed
wordpress_advanced_bulk_update_media - Removed
wordpress_advanced_bulk_update_posts - Removed
wordpress_advanced_bulk_update_products - Removed
wordpress_advanced_cron_list - Removed
wordpress_advanced_cron_run - Removed
wordpress_advanced_error_log - Removed
wordpress_advanced_system_clear_all_caches - Removed
wordpress_advanced_system_disk_usage - Removed
wordpress_advanced_system_info - Removed
wordpress_advanced_system_phpinfo - Removed
wordpress_advanced_wp_db_export - Removed
wordpress_advanced_wp_db_import - Removed
wordpress_advanced_wp_db_query - Removed
wordpress_advanced_wp_db_repair - Removed
wordpress_advanced_wp_db_search - Removed
wordpress_advanced_wp_db_size - Removed
wordpress_advanced_wp_db_tables - Added
wordpress_audit_hook_configure - Added
wordpress_audit_hook_disable - Added
wordpress_audit_hook_status - Added
wordpress_bulk_delete_media - Added
wordpress_bulk_reassign_media - Added
wordpress_bulk_update_meta - Added
wordpress_cache_purge - Changed
wordpress_create_category1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_comment1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_custom_post1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_menu1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_menu_item2 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / titleAdded value: +{ + "type": "string" +}
- Changed
wordpress_create_page1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_post1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_tag1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_create_taxonomy_term1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_delete_category1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_delete_comment1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_delete_media1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_delete_page1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_delete_post1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_delete_tag1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Added
wordpress_export_content - Added
wordpress_generate_and_upload_image - Changed
wordpress_get_active_theme1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_comment1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_current_user1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_internal_links1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_media1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_menu1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Added
wordpress_get_navigation - Changed
wordpress_get_post1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_post_seo1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_post_type_info1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_product_seo1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_settings1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_get_site_health1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_categories1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_comments1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_custom_posts1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_media1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_menu_items1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_menus1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Added
wordpress_list_navigations - Changed
wordpress_list_pages1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_plugins1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_post_types1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_posts1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_tags1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_taxonomies1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_taxonomy_terms1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_themes1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_list_users1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Added
wordpress_probe_capabilities - Added
wordpress_probe_upload_limits - Added
wordpress_regenerate_thumbnails - Added
wordpress_site_health - Added
wordpress_transient_flush - Changed
wordpress_update_category1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_update_comment1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_update_media1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_update_menu_item1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Added
wordpress_update_navigation - Changed
wordpress_update_page3 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / featured_mediaAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +} - added
Input schema / properties / metaAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +}
- Changed
wordpress_update_post1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_update_post_seo1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_update_product_seo1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_update_tag1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Added
wordpress_upload_media_chunked_abort - Added
wordpress_upload_media_chunked_chunk - Added
wordpress_upload_media_chunked_finish - Added
wordpress_upload_media_chunked_start - Added
wordpress_upload_media_chunked_status - Added
wordpress_upload_media_from_base64 - Changed
wordpress_upload_media_from_url6 fields changed- added
Input schema / additionalPropertiesAdded value: +false - added
Input schema / properties / attach_to_postAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +} - added
Input schema / properties / convert_toAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +} - added
Input schema / properties / filenameAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null +} - added
Input schema / properties / set_featuredAdded value: +{ + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": false +} - added
Input schema / properties / skip_optimizeAdded value: +{ + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ], + "default": false +}
- Changed
wordpress_wp_cache_flush1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_cache_type1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_core_update1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_core_verify_checksums1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_db_check1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_db_export1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_db_optimize1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_plugin_list_detailed1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_plugin_update1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_plugin_verify_checksums1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_search_replace_dry_run1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_theme_list_detailed1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_theme_update1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_transient_delete_all1 field changed- added
Input schema / additionalPropertiesAdded value: +false
- Changed
wordpress_wp_transient_list1 field changed- added
Input schema / additionalPropertiesAdded value: +false
596 tool updates
v3.4.0- First observed
appwrite_activate_deployment - First observed
appwrite_bulk_create_documents - First observed
appwrite_bulk_delete_documents - First observed
appwrite_bulk_delete_files - First observed
appwrite_bulk_update_documents - First observed
appwrite_count_documents - First observed
appwrite_create_boolean_attribute - First observed
appwrite_create_bucket - First observed
appwrite_create_collection - First observed
appwrite_create_database - First observed
appwrite_create_document - First observed
appwrite_create_function - First observed
appwrite_create_index - First observed
appwrite_create_integer_attribute - First observed
appwrite_create_string_attribute - First observed
appwrite_create_subscriber - First observed
appwrite_create_team - First observed
appwrite_create_team_membership - First observed
appwrite_create_topic - First observed
appwrite_create_user - First observed
appwrite_delete_attribute - First observed
appwrite_delete_bucket - First observed
appwrite_delete_collection - First observed
appwrite_delete_database - First observed
appwrite_delete_deployment - First observed
appwrite_delete_document - First observed
appwrite_delete_execution - First observed
appwrite_delete_file - First observed
appwrite_delete_function - First observed
appwrite_delete_index - First observed
appwrite_delete_membership - First observed
appwrite_delete_message - First observed
appwrite_delete_subscriber - First observed
appwrite_delete_team - First observed
appwrite_delete_topic - First observed
appwrite_delete_user - First observed
appwrite_delete_user_session - First observed
appwrite_delete_user_sessions - First observed
appwrite_download_file - First observed
appwrite_execute_function - First observed
appwrite_get_active_deployment - First observed
appwrite_get_avatar_initials - First observed
appwrite_get_bucket - First observed
appwrite_get_bucket_stats - First observed
appwrite_get_collection - First observed
appwrite_get_database - First observed
appwrite_get_deployment - First observed
appwrite_get_document - First observed
appwrite_get_documents_by_ids - First observed
appwrite_get_execution - First observed
appwrite_get_file - First observed
appwrite_get_file_preview - First observed
appwrite_get_file_url - First observed
appwrite_get_file_view - First observed
appwrite_get_function - First observed
appwrite_get_message - First observed
appwrite_get_qr_code - First observed
appwrite_get_team - First observed
appwrite_get_team_prefs - First observed
appwrite_get_topic - First observed
appwrite_get_user - First observed
appwrite_health_cache - First observed
appwrite_health_check - First observed
appwrite_health_db - First observed
appwrite_health_queue - First observed
appwrite_health_storage - First observed
appwrite_health_time - First observed
appwrite_list_attributes - First observed
appwrite_list_buckets - First observed
appwrite_list_collections - First observed
appwrite_list_databases - First observed
appwrite_list_deployments - First observed
appwrite_list_documents - First observed
appwrite_list_documents_paginated - First observed
appwrite_list_executions - First observed
appwrite_list_files - First observed
appwrite_list_functions - First observed
appwrite_list_indexes - First observed
appwrite_list_messages - First observed
appwrite_list_team_memberships - First observed
appwrite_list_teams - First observed
appwrite_list_topics - First observed
appwrite_list_user_sessions - First observed
appwrite_list_users - First observed
appwrite_search_documents - First observed
appwrite_send_email - First observed
appwrite_send_push - First observed
appwrite_send_sms - First observed
appwrite_update_bucket - First observed
appwrite_update_collection - First observed
appwrite_update_database - First observed
appwrite_update_document - First observed
appwrite_update_function - First observed
appwrite_update_membership - First observed
appwrite_update_team - First observed
appwrite_update_user_email - First observed
appwrite_update_user_labels - First observed
appwrite_update_user_name - First observed
appwrite_update_user_phone - First observed
appwrite_update_user_status - First observed
check_all_projects_health - First observed
directus_aggregate_items - First observed
directus_create_collection - First observed
directus_create_comment - First observed
directus_create_dashboard - First observed
directus_create_field - First observed
directus_create_flow - First observed
directus_create_folder - First observed
directus_create_item - First observed
directus_create_items - First observed
directus_create_operation - First observed
directus_create_panel - First observed
directus_create_permission - First observed
directus_create_relation - First observed
directus_create_role - First observed
directus_create_user - First observed
directus_create_version - First observed
directus_create_webhook - First observed
directus_delete_collection - First observed
directus_delete_dashboard - First observed
directus_delete_field - First observed
directus_delete_file - First observed
directus_delete_files - First observed
directus_delete_flow - First observed
directus_delete_folder - First observed
directus_delete_item - First observed
directus_delete_items - First observed
directus_delete_panel - First observed
directus_delete_permission - First observed
directus_delete_relation - First observed
directus_delete_role - First observed
directus_delete_user - First observed
directus_delete_users - First observed
directus_delete_version - First observed
directus_delete_webhook - First observed
directus_export_items - First observed
directus_get_collection - First observed
directus_get_current_user - First observed
directus_get_dashboard - First observed
directus_get_field - First observed
directus_get_file - First observed
directus_get_file_url - First observed
directus_get_flow - First observed
directus_get_folder - First observed
directus_get_graphql_sdl - First observed
directus_get_item - First observed
directus_get_my_permissions - First observed
directus_get_openapi_spec - First observed
directus_get_permission - First observed
directus_get_relation - First observed
directus_get_revision - First observed
directus_get_role - First observed
directus_get_schema_snapshot - First observed
directus_get_server_info - First observed
directus_get_settings - First observed
directus_get_user - First observed
directus_get_user_role - First observed
directus_get_version - First observed
directus_health_check - First observed
directus_import_file_url - First observed
directus_import_items - First observed
directus_invite_user - First observed
directus_list_activity - First observed
directus_list_collections - First observed
directus_list_comments - First observed
directus_list_dashboards - First observed
directus_list_fields - First observed
directus_list_files - First observed
directus_list_flows - First observed
directus_list_folders - First observed
directus_list_items - First observed
directus_list_operations - First observed
directus_list_panels - First observed
directus_list_permissions - First observed
directus_list_policies - First observed
directus_list_relations - First observed
directus_list_revisions - First observed
directus_list_roles - First observed
directus_list_users - First observed
directus_list_versions - First observed
directus_list_webhooks - First observed
directus_promote_version - First observed
directus_schema_apply - First observed
directus_schema_diff - First observed
directus_search_items - First observed
directus_trigger_flow - First observed
directus_update_collection - First observed
directus_update_current_user - First observed
directus_update_dashboard - First observed
directus_update_field - First observed
directus_update_file - First observed
directus_update_flow - First observed
directus_update_folder - First observed
directus_update_item - First observed
directus_update_items - First observed
directus_update_permission - First observed
directus_update_role - First observed
directus_update_settings - First observed
directus_update_user - First observed
directus_update_version - First observed
directus_update_webhook - First observed
export_health_metrics - First observed
get_audit_log - First observed
get_endpoints - First observed
get_project_health - First observed
get_project_info - First observed
get_project_metrics - First observed
get_rate_limit_stats - First observed
get_system_info - First observed
get_system_metrics - First observed
get_system_uptime - First observed
gitea_close_issue - First observed
gitea_close_pull_request - First observed
gitea_create_branch - First observed
gitea_create_file - First observed
gitea_create_issue - First observed
gitea_create_issue_comment - First observed
gitea_create_label - First observed
gitea_create_milestone - First observed
gitea_create_pr_comment - First observed
gitea_create_pr_review - First observed
gitea_create_pull_request - First observed
gitea_create_repository - First observed
gitea_create_tag - First observed
gitea_create_webhook - First observed
gitea_delete_branch - First observed
gitea_delete_file - First observed
gitea_delete_repository - First observed
gitea_delete_tag - First observed
gitea_delete_webhook - First observed
gitea_get_branch - First observed
gitea_get_file - First observed
gitea_get_issue - First observed
gitea_get_organization - First observed
gitea_get_pr_diff - First observed
gitea_get_pull_request - First observed
gitea_get_repository - First observed
gitea_get_user - First observed
gitea_get_webhook - First observed
gitea_list_branches - First observed
gitea_list_issue_comments - First observed
gitea_list_issues - First observed
gitea_list_labels - First observed
gitea_list_milestones - First observed
gitea_list_org_repos - First observed
gitea_list_org_teams - First observed
gitea_list_organizations - First observed
gitea_list_pr_comments - First observed
gitea_list_pr_commits - First observed
gitea_list_pr_files - First observed
gitea_list_pr_reviews - First observed
gitea_list_pull_requests - First observed
gitea_list_repositories - First observed
gitea_list_tags - First observed
gitea_list_team_members - First observed
gitea_list_user_repos - First observed
gitea_list_webhooks - First observed
gitea_merge_pull_request - First observed
gitea_reopen_issue - First observed
gitea_reopen_pull_request - First observed
gitea_request_pr_reviewers - First observed
gitea_search_users - First observed
gitea_test_webhook - First observed
gitea_update_file - First observed
gitea_update_issue - First observed
gitea_update_pull_request - First observed
gitea_update_repository - First observed
list_projects - First observed
manage_api_keys_create - First observed
manage_api_keys_delete - First observed
manage_api_keys_get_info - First observed
manage_api_keys_list - First observed
manage_api_keys_revoke - First observed
manage_api_keys_rotate - First observed
n8n_activate_workflow - First observed
n8n_add_project_users - First observed
n8n_change_project_user_role - First observed
n8n_change_user_role - First observed
n8n_create_credential - First observed
n8n_create_project - First observed
n8n_create_tag - First observed
n8n_create_user - First observed
n8n_create_variable - First observed
n8n_create_workflow - First observed
n8n_deactivate_workflow - First observed
n8n_delete_credential - First observed
n8n_delete_execution - First observed
n8n_delete_executions - First observed
n8n_delete_project - First observed
n8n_delete_tag - First observed
n8n_delete_tags - First observed
n8n_delete_user - First observed
n8n_delete_variable - First observed
n8n_delete_workflow - First observed
n8n_duplicate_workflow - First observed
n8n_execute_workflow - First observed
n8n_execute_workflow_with_data - First observed
n8n_export_workflow - First observed
n8n_get_credential - First observed
n8n_get_credential_schema - First observed
n8n_get_execution - First observed
n8n_get_execution_data - First observed
n8n_get_instance_info - First observed
n8n_get_project - First observed
n8n_get_tag - First observed
n8n_get_user - First observed
n8n_get_variable - First observed
n8n_get_workflow - First observed
n8n_get_workflow_tags - First observed
n8n_health_check - First observed
n8n_import_workflow - First observed
n8n_list_executions - First observed
n8n_list_projects - First observed
n8n_list_tags - First observed
n8n_list_users - First observed
n8n_list_variables - First observed
n8n_list_workflows - First observed
n8n_remove_project_user - First observed
n8n_retry_execution - First observed
n8n_run_security_audit - First observed
n8n_set_variables - First observed
n8n_set_workflow_tags - First observed
n8n_source_control_pull - First observed
n8n_stop_execution - First observed
n8n_transfer_credential - First observed
n8n_update_project - First observed
n8n_update_tag - First observed
n8n_update_variable - First observed
n8n_update_workflow - First observed
n8n_wait_for_execution - First observed
oauth_get_client_info - First observed
oauth_list_clients - First observed
oauth_register_client - First observed
oauth_revoke_client - First observed
openpanel_add_chart - First observed
openpanel_compare_funnels - First observed
openpanel_create_client - First observed
openpanel_create_dashboard - First observed
openpanel_create_funnel - First observed
openpanel_create_project - First observed
openpanel_create_scheduled_report - First observed
openpanel_decrement_property - First observed
openpanel_delete_chart - First observed
openpanel_delete_client - First observed
openpanel_delete_dashboard - First observed
openpanel_delete_funnel - First observed
openpanel_delete_profile - First observed
openpanel_delete_project - First observed
openpanel_duplicate_dashboard - First observed
openpanel_export_chart_data - First observed
openpanel_export_events - First observed
openpanel_export_events_csv - First observed
openpanel_export_profile_data - First observed
openpanel_export_report_pdf - First observed
openpanel_get_ab_test_results - First observed
openpanel_get_client - First observed
openpanel_get_cohort_report - First observed
openpanel_get_dashboard - First observed
openpanel_get_device_data - First observed
openpanel_get_event_count - First observed
openpanel_get_funnel - First observed
openpanel_get_funnel_breakdown - First observed
openpanel_get_funnel_conversion - First observed
openpanel_get_geo_data - First observed
openpanel_get_instance_info - First observed
openpanel_get_overview_report - First observed
openpanel_get_page_views - First observed
openpanel_get_paths_report - First observed
openpanel_get_profile - First observed
openpanel_get_profile_events - First observed
openpanel_get_profile_sessions - First observed
openpanel_get_project - First observed
openpanel_get_project_settings - First observed
openpanel_get_project_stats - First observed
openpanel_get_rate_limit_status - First observed
openpanel_get_realtime_stats - First observed
openpanel_get_retention_report - First observed
openpanel_get_storage_stats - First observed
openpanel_get_top_pages - First observed
openpanel_get_top_referrers - First observed
openpanel_get_unique_users - First observed
openpanel_get_usage_stats - First observed
openpanel_health_check - First observed
openpanel_identify_user - First observed
openpanel_increment_property - First observed
openpanel_list_clients - First observed
openpanel_list_dashboards - First observed
openpanel_list_funnels - First observed
openpanel_list_profiles - First observed
openpanel_list_projects - First observed
openpanel_merge_profiles - First observed
openpanel_regenerate_client_secret - First observed
openpanel_search_profiles - First observed
openpanel_set_user_properties - First observed
openpanel_share_dashboard - First observed
openpanel_test_connection - First observed
openpanel_track_batch - First observed
openpanel_track_event - First observed
openpanel_track_page_view - First observed
openpanel_track_revenue - First observed
openpanel_track_screen_view - First observed
openpanel_update_chart - First observed
openpanel_update_client_mode - First observed
openpanel_update_dashboard - First observed
openpanel_update_funnel - First observed
openpanel_update_project - First observed
openpanel_update_project_settings - First observed
reset_rate_limit - First observed
set_rate_limit_config - First observed
supabase_add_column - First observed
supabase_ban_user - First observed
supabase_check_function_health - First observed
supabase_count_rows - First observed
supabase_create_bucket - First observed
supabase_create_policy - First observed
supabase_create_table - First observed
supabase_create_user - First observed
supabase_delete_bucket - First observed
supabase_delete_files - First observed
supabase_delete_policy - First observed
supabase_delete_rows - First observed
supabase_delete_user - First observed
supabase_delete_user_factor - First observed
supabase_disable_extension - First observed
supabase_disable_rls - First observed
supabase_download_file - First observed
supabase_drop_column - First observed
supabase_drop_table - First observed
supabase_empty_bucket - First observed
supabase_enable_extension - First observed
supabase_enable_rls - First observed
supabase_execute_rpc - First observed
supabase_execute_sql - First observed
supabase_generate_link - First observed
supabase_get_auth_config - First observed
supabase_get_auth_stats - First observed
supabase_get_bucket - First observed
supabase_get_database_size - First observed
supabase_get_database_stats - First observed
supabase_get_function_info - First observed
supabase_get_function_url - First observed
supabase_get_instance_info - First observed
supabase_get_public_url - First observed
supabase_get_service_status - First observed
supabase_get_storage_stats - First observed
supabase_get_table_constraints - First observed
supabase_get_table_indexes - First observed
supabase_get_table_relationships - First observed
supabase_get_table_schema - First observed
supabase_get_user - First observed
supabase_get_user_by_email - First observed
supabase_health_check - First observed
supabase_insert_rows - First observed
supabase_invite_user - First observed
supabase_invoke_function - First observed
supabase_invoke_function_batch - First observed
supabase_invoke_function_get - First observed
supabase_list_buckets - First observed
supabase_list_edge_functions - First observed
supabase_list_extensions - First observed
supabase_list_files - First observed
supabase_list_functions - First observed
supabase_list_policies - First observed
supabase_list_roles - First observed
supabase_list_schemas - First observed
supabase_list_tables - First observed
supabase_list_triggers - First observed
supabase_list_user_factors - First observed
supabase_list_users - First observed
supabase_move_file - First observed
supabase_query_table - First observed
supabase_search_users - First observed
supabase_test_function - First observed
supabase_unban_user - First observed
supabase_update_bucket - First observed
supabase_update_policy - First observed
supabase_update_rows - First observed
supabase_update_user - First observed
supabase_upload_file - First observed
woocommerce_create_coupon - First observed
woocommerce_create_customer - First observed
woocommerce_create_order - First observed
woocommerce_create_product - First observed
woocommerce_create_product_attribute - First observed
woocommerce_create_product_category - First observed
woocommerce_create_product_variation - First observed
woocommerce_delete_coupon - First observed
woocommerce_delete_order - First observed
woocommerce_delete_product - First observed
woocommerce_get_customer - First observed
woocommerce_get_customer_report - First observed
woocommerce_get_order - First observed
woocommerce_get_product - First observed
woocommerce_get_sales_report - First observed
woocommerce_get_top_sellers - First observed
woocommerce_list_coupons - First observed
woocommerce_list_customers - First observed
woocommerce_list_orders - First observed
woocommerce_list_product_attributes - First observed
woocommerce_list_product_categories - First observed
woocommerce_list_product_tags - First observed
woocommerce_list_product_variations - First observed
woocommerce_list_products - First observed
woocommerce_update_coupon - First observed
woocommerce_update_customer - First observed
woocommerce_update_order_status - First observed
woocommerce_update_product - First observed
wordpress_advanced_bulk_assign_categories - First observed
wordpress_advanced_bulk_assign_tags - First observed
wordpress_advanced_bulk_delete_media - First observed
wordpress_advanced_bulk_delete_posts - First observed
wordpress_advanced_bulk_delete_products - First observed
wordpress_advanced_bulk_update_media - First observed
wordpress_advanced_bulk_update_posts - First observed
wordpress_advanced_bulk_update_products - First observed
wordpress_advanced_cron_list - First observed
wordpress_advanced_cron_run - First observed
wordpress_advanced_error_log - First observed
wordpress_advanced_system_clear_all_caches - First observed
wordpress_advanced_system_disk_usage - First observed
wordpress_advanced_system_info - First observed
wordpress_advanced_system_phpinfo - First observed
wordpress_advanced_wp_db_export - First observed
wordpress_advanced_wp_db_import - First observed
wordpress_advanced_wp_db_query - First observed
wordpress_advanced_wp_db_repair - First observed
wordpress_advanced_wp_db_search - First observed
wordpress_advanced_wp_db_size - First observed
wordpress_advanced_wp_db_tables - First observed
wordpress_create_category - First observed
wordpress_create_comment - First observed
wordpress_create_custom_post - First observed
wordpress_create_menu - First observed
wordpress_create_menu_item - First observed
wordpress_create_page - First observed
wordpress_create_post - First observed
wordpress_create_tag - First observed
wordpress_create_taxonomy_term - First observed
wordpress_delete_category - First observed
wordpress_delete_comment - First observed
wordpress_delete_media - First observed
wordpress_delete_page - First observed
wordpress_delete_post - First observed
wordpress_delete_tag - First observed
wordpress_get_active_theme - First observed
wordpress_get_comment - First observed
wordpress_get_current_user - First observed
wordpress_get_internal_links - First observed
wordpress_get_media - First observed
wordpress_get_menu - First observed
wordpress_get_post - First observed
wordpress_get_post_seo - First observed
wordpress_get_post_type_info - First observed
wordpress_get_product_seo - First observed
wordpress_get_settings - First observed
wordpress_get_site_health - First observed
wordpress_list_categories - First observed
wordpress_list_comments - First observed
wordpress_list_custom_posts - First observed
wordpress_list_media - First observed
wordpress_list_menu_items - First observed
wordpress_list_menus - First observed
wordpress_list_pages - First observed
wordpress_list_plugins - First observed
wordpress_list_post_types - First observed
wordpress_list_posts - First observed
wordpress_list_tags - First observed
wordpress_list_taxonomies - First observed
wordpress_list_taxonomy_terms - First observed
wordpress_list_themes - First observed
wordpress_list_users - First observed
wordpress_update_category - First observed
wordpress_update_comment - First observed
wordpress_update_media - First observed
wordpress_update_menu_item - First observed
wordpress_update_page - First observed
wordpress_update_post - First observed
wordpress_update_post_seo - First observed
wordpress_update_product_seo - First observed
wordpress_update_tag - First observed
wordpress_upload_media_from_url - First observed
wordpress_wp_cache_flush - First observed
wordpress_wp_cache_type - First observed
wordpress_wp_core_update - First observed
wordpress_wp_core_verify_checksums - First observed
wordpress_wp_db_check - First observed
wordpress_wp_db_export - First observed
wordpress_wp_db_optimize - First observed
wordpress_wp_plugin_list_detailed - First observed
wordpress_wp_plugin_update - First observed
wordpress_wp_plugin_verify_checksums - First observed
wordpress_wp_search_replace_dry_run - First observed
wordpress_wp_theme_list_detailed - First observed
wordpress_wp_theme_update - First observed
wordpress_wp_transient_delete_all - First observed
wordpress_wp_transient_list
TDQS
Scored across 100 tools
WordPress tools are largely distinct (posts, pages, media, settings), but several system tools overlap: check_all_projects_health, get_project_health, and get_system_metrics all touch health/metrics. wordpress_audit_hook_status vs wordpress_probe_capabilities and wordpress_probe_upload_limits also blur the line between 'probe' and 'audit' actions.
The wordpress_ prefix provides consistency within that domainaine, but the overall set mixes verbs inconsistently (check_all_projects_health, get_project_health, get_system_uptime, probe_upload_limits, audit_hook_status). Generic tools like get_system_metrics and get_project_health use divergent naming from the rest.
100 tools is excessive for a single MCP server and creates a heavy surface area for agents to parse. Even if it aggregates many sub-domains, the cognitive load and prompt size make selection error-prone; this should likely be split into focused servers.
WordPress coverage is fairly broad (posts, pages, media, plugins, themes, settings, health), but there are gaps: no get_single_page tool, no user/comment management, and no media upload from local files. The project/system side lacks obvious workflow actions beyond health checks and metrics.
Maintenance
Related MCP Connectors
AI-native git hosting — repos, PRs, issues, CI gates, and AI code review over MCP (60 tools).
Deploy and manage your apps, databases, storage, and scheduled jobs from your AI agent
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
The agent-native cloud: database, functions, AI, storage, computers. 50 tools, one API key.
Related MCP Servers
- AlicenseCqualityBmaintenanceEnables AI agents to manage WordPress sites with 190+ tools for content management, theme/plugin customization, file system operations, WooCommerce, and complete site control through natural language.10020 npm56MIT
- AlicenseCqualityDmaintenanceEnables AI to manage WordPress sites with 190+ tools for complete control over content, themes, plugins, files, and more.10020 npmMIT
- FlicenseNot gradedqualityBmaintenanceControls any WordPress site via natural language, offering tools for site health, plugins, posts, SEO, WooCommerce, and more.-
- FlicenseNot gradedqualityDmaintenanceEnables AI clients to manage WordPress and WooCommerce sites with over 194 tools for content, users, security, performance, and e-commerce operations.-