Manual integration test steps for verifying update-options on a live LocalWP site.
- LocalWP site with
ai-ddtk-abilities.phpinstalled as an mu-plugin - MCP Adapter enabled (
wordpress/mcp-adapter) - Site selected via
local_wp_select_site
Write a WooCommerce option and verify it persists:
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": { "updates": { "woocommerce_default_country": "US:CA" } }
}
}Then read it back:
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/get-options",
"params": { "keys": ["woocommerce_default_country"] }
}
}Expected: success: true, value matches "US:CA".
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": { "updates": { "active_plugins": [] } }
}
}Expected: success: false, blocked_keys: ["active_plugins"], error mentions WP-CLI.
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": { "updates": { "siteurl": "https://example.local" } }
}
}Expected: success: false, blocked_keys: ["siteurl"].
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": {
"updates": { "admin_email": "test@example.com" },
"confirm_dangerous": true
}
}
}Expected: success: true, dangerous_keys_present: true.
Check PHP error log for [AI-DDTK] audit entry:
# Via WP-CLI:
wp eval 'echo ini_get("error_log");'
tail -5 "$(wp eval 'echo ini_get("error_log");')"{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": {
"updates": { "siteurl": "not-a-url" },
"confirm_dangerous": true
}
}
}Expected: success: false, error mentions "not a valid URL".
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": {
"updates": { "template": "nonexistent-theme-slug" },
"confirm_dangerous": true
}
}
}Expected: success: false, error mentions "does not match any installed theme" and lists valid slugs.
{
"tool": "mcp-adapter-execute-ability",
"arguments": {
"ability_name": "ai-ddtk/update-options",
"params": {
"updates": { "my_custom_option": "test_value" },
"autoload": "no"
}
}
}Verify autoload column via WP-CLI:
wp db query "SELECT option_name, autoload FROM wp_options WHERE option_name = 'my_custom_option';"Expected: autoload = no.