MCP Admin Tools for WordPress
Registers abilities for managing WordPress content and viewing audit logs from MCP clients.
by shokun0803, GitHub Copilot · github.com/shokun0803/wordpress-mcp-admin-tools · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/shokun0803/wordpress-mcp-admin-tools/archive/refs/heads/master.zip※ 100% AI 生成のため自己責任でご利用ください。
MCP クライアントから WordPress の管理操作を行うための Ability を登録するプラグインです。
このプラグインは WordPress の Abilities API と WordPress の MCP Adapter を前提に動作します。投稿や固定ページの作成・更新・削除、投稿ごとのコメント許可設定変更、コメント一覧取得とスパムコメント確認および削除・一括削除・同一 IP 単位の削除、テーマの追加・作成・編集・一覧取得・削除、アクティブな block theme のサイトテンプレート・テンプレートパーツ・ブロックナビゲーション・reusable pattern・global styles の取得と作成・更新・削除、固定ページのテンプレート割当変更、プラグインの追加・作成・更新・一覧取得・削除・有効化・無効化・自動更新切替、フロントページ設定を含む一部の一般設定更新、任意 option や custom post type や post meta / term meta の汎用操作、メディア操作、ナビゲーションメニュー操作、Contact Form 7 / WPForms Lite 用の専用フォーム操作、サイトヘルス状態の取得、管理画面で実行可能な一部のサイトヘルス修正、実行監査ログの取得を MCP 経由で利用できます。
前提条件
- WordPress 6.9 以上
- WordPress MCP Adapter がインストール済みで有効化されていること
- Ability を実行するユーザーに適切な権限があること
リリースノート
0.8.0
- block theme 向けのサイトテンプレート、テンプレートパーツ、ブロックナビゲーション、reusable pattern、global styles の取得・保存・削除 Ability を追加
- 固定ページごとのテンプレート割当取得と更新に対応
- README の概要と機能一覧を FSE 関連 Ability に合わせて更新
0.7.0
- コメント一覧に投稿元 IP アドレスを追加し、
author_ipでの絞り込みに対応 - 同一 IP からのコメントをまとめて削除できる Ability
wordpress-mcp-admin/delete-comments-by-ipを追加 - 既知スパムの 1 件から同一 IP の未承認コメントをまとめて処理しやすく改善
0.6.0
- コメントの一括削除 Ability
wordpress-mcp-admin/delete-commentsを追加 - 最大 100 件までのレビュー済みコメントを 1 回のリクエストで削除またはゴミ箱移動できるように変更
- README にコメント一括削除 Ability の説明と利用例を追記
0.5.0
- コメント一覧取得、コメント状態更新、コメント削除の専用 Ability を追加
- 投稿と固定ページの discussion 設定更新を強化し、コメント受付やピンバック受付の切替に対応
- README にコメントモデレーションとプラグイン運用 Ability の説明を整理して追記
リリース運用
- GitHub Release を publish すると、GitHub Actions が WordPress 用 ZIP を自動生成して添付します。
- WordPress にアップロードする際は、Release ページの添付ファイル
wordpress-mcp-admin-tools-x.y.z.zipを使用してください。 - GitHub が自動生成する Source code の ZIP は開発者向けで、既存プラグインの更新用パッケージには適しません。
主な機能
- 投稿の新規作成
- 投稿の更新
- 投稿ごとのコメント受付とピンバック受付の設定変更
- 投稿の削除またはゴミ箱移動
- 固定ページの新規作成
- 固定ページの更新
- 固定ページごとのコメント受付とピンバック受付の設定変更
- コメント一覧取得
- コメントの承認、保留、スパム化、ゴミ箱移動
- コメントの削除
- コメントの一括削除
- 同一 IP のコメント一括削除
- 任意の WordPress option の読取と更新
- 任意の custom post type 一覧取得と単体更新
- post meta / term meta の読取と更新
- Contact Form 7 / WPForms Lite のフォーム一覧取得
- Contact Form 7 / WPForms Lite のフォーム取得
- Contact Form 7 / WPForms Lite のフォーム作成・更新
- フロントページ、投稿ページ、投稿表示件数の更新
- リモート URL からのメディア取り込み
- メディアライブラリ一覧取得
- アイキャッチ画像の設定と解除
- サイトロゴとサイトアイコンの更新
- ナビゲーションメニュー一覧取得
- ナビゲーションメニュー作成・更新・ロケーション割当
- アクティブな block theme のブロックナビゲーション一覧取得と単体取得
- アクティブな block theme のブロックナビゲーション作成・更新
- WordPress.org からのテーマ追加
- 新規テーマ雛形の作成
- インストール済みテーマファイルの編集
- インストール済みテーマファイルの読取
- インストール済みテーマ一覧の取得
- インストール済みテーマの削除
- アクティブな block theme のサイトテンプレート一覧取得と単体取得
- アクティブな block theme のサイトテンプレート作成・更新
- アクティブな block theme のサイトテンプレート削除
- アクティブな block theme のテンプレートパーツ一覧取得と単体取得
- アクティブな block theme のテンプレートパーツ作成・更新
- アクティブな block theme のテンプレートパーツ削除
- reusable pattern として保存されている wp_block 一覧取得と単体取得
- reusable pattern として保存されている wp_block 作成・更新
- reusable pattern として保存されている wp_block 削除
- アクティブな block theme の global styles 取得と更新
- アクティブな block theme のブロックナビゲーション削除
- WordPress.org からのプラグイン追加
- 新規プラグイン雛形の作成
- インストール済みプラグインファイルの読取
- インストール済みプラグインファイルの更新
- インストール済みプラグイン一覧の取得
- インストール済みプラグインの削除
- インストール済みプラグインの有効化と無効化
- プラグイン自動更新の有効化と無効化
- サイトタイトルとキャッチフレーズの更新
- サイトヘルス状態の取得
- サイトヘルスから実行可能な修正の一部実行
- MCP 経由の実行監査ログ取得
- WordPress 管理画面の Tools 配下での Activity Log 表示
公開される Ability
このプラグインは以下の Ability を wordpress-mcp-admin/* 名前空間で登録します。
wordpress-mcp-admin/create-postwordpress-mcp-admin/update-postwordpress-mcp-admin/delete-postwordpress-mcp-admin/get-commentswordpress-mcp-admin/update-comment-statuswordpress-mcp-admin/delete-commentwordpress-mcp-admin/delete-commentswordpress-mcp-admin/delete-comments-by-ipwordpress-mcp-admin/create-pagewordpress-mcp-admin/update-pagewordpress-mcp-admin/get-page-template-assignmentwordpress-mcp-admin/set-page-template-assignmentwordpress-mcp-admin/edit-page-blockswordpress-mcp-admin/edit-post-blockswordpress-mcp-admin/get-page-blockswordpress-mcp-admin/get-post-blockswordpress-mcp-admin/edit-page-designwordpress-mcp-admin/import-media-from-urlwordpress-mcp-admin/get-media-itemswordpress-mcp-admin/set-featured-imagewordpress-mcp-admin/update-site-mediawordpress-mcp-admin/get-optionswordpress-mcp-admin/update-optionswordpress-mcp-admin/get-post-type-entrieswordpress-mcp-admin/update-post-type-entrywordpress-mcp-admin/get-object-metawordpress-mcp-admin/update-object-metawordpress-mcp-admin/list-contact-formswordpress-mcp-admin/get-contact-formwordpress-mcp-admin/save-contact-formwordpress-mcp-admin/install-themewordpress-mcp-admin/create-themewordpress-mcp-admin/get-theme-filewordpress-mcp-admin/list-site-templateswordpress-mcp-admin/get-site-templatewordpress-mcp-admin/save-site-templatewordpress-mcp-admin/delete-site-templatewordpress-mcp-admin/list-template-partswordpress-mcp-admin/get-template-partwordpress-mcp-admin/save-template-partwordpress-mcp-admin/delete-template-partwordpress-mcp-admin/list-reusable-patternswordpress-mcp-admin/get-reusable-patternwordpress-mcp-admin/save-reusable-patternwordpress-mcp-admin/delete-reusable-patternwordpress-mcp-admin/get-global-styleswordpress-mcp-admin/update-global-styleswordpress-mcp-admin/edit-themewordpress-mcp-admin/get-themeswordpress-mcp-admin/delete-themewordpress-mcp-admin/get-navigation-menuswordpress-mcp-admin/list-block-navigationwordpress-mcp-admin/get-block-navigationwordpress-mcp-admin/save-block-navigationwordpress-mcp-admin/delete-block-navigationwordpress-mcp-admin/set-navigation-menuwordpress-mcp-admin/install-pluginwordpress-mcp-admin/create-pluginwordpress-mcp-admin/get-plugin-filewordpress-mcp-admin/update-pluginwordpress-mcp-admin/get-pluginswordpress-mcp-admin/delete-pluginwordpress-mcp-admin/activate-pluginwordpress-mcp-admin/deactivate-pluginwordpress-mcp-admin/enable-plugin-auto-updatewordpress-mcp-admin/disable-plugin-auto-updatewordpress-mcp-admin/get-site-health-statuswordpress-mcp-admin/run-site-health-fixwordpress-mcp-admin/update-general-settingswordpress-mcp-admin/get-audit-log
これらの Ability は mcp.public を有効にしているため、MCP Adapter のデフォルトサーバから discover できます。
インストール
- このディレクトリを
wp-content/plugins/wordpress-mcp-admin-toolsに配置します。 - WordPress 管理画面、または WP-CLI でプラグインを有効化します。
mcp-adapterプラグインが有効であることを確認します。
WP-CLI 例:
wp plugin activate wordpress-mcp-admin-tools --allow-root --path=/var/www/html
MCP での確認例
Ability 一覧の確認
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-discover-abilities","arguments":{}}}
EOF
投稿作成の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/create-post","parameters":{"title":"MCP Post","content":"Created via MCP.","status":"draft"}}}}
EOF
監査ログ取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-audit-log","parameters":{"limit":10}}}}
EOF
スパムコメント確認の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-comments","parameters":{"status":"spam","per_page":20,"include_content":true}}}}
EOF
同一 IP のコメント確認と削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-comments","parameters":{"status":"hold","author_ip":"203.0.113.10","per_page":20}}}}
EOF
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-comments-by-ip","parameters":{"comment_id":12345,"status":"hold","limit":100,"force":true}}}}
EOF
スパムコメント削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-comment","parameters":{"comment_id":321,"force":true}}}}
EOF
スパムコメント一括削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-comments","parameters":{"comment_ids":[321,322,323],"force":true}}}}
EOF
投稿のコメント受付を閉じる例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-post","parameters":{"post_id":456,"comment_status":"closed","ping_status":"closed"}}}}
EOF
サイトヘルス状態取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-site-health-status","parameters":{}}}}
EOF
サイトヘルス修正実行の例
現在は以下の修正をサポートします。
flush-permalinksenable-search-engine-indexingupdate-urls-to-https
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/run-site-health-fix","parameters":{"fix":"flush-permalinks"}}}}
EOF
テーマ追加の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/install-theme","parameters":{"slug":"twentytwentyfour","activate":false}}}}
EOF
テーマ作成の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/create-theme","parameters":{"slug":"mcp-custom-theme","name":"MCP Custom Theme","type":"block","description":"Created via MCP.","activate":false}}}}
EOF
テーマ編集の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/edit-theme","parameters":{"theme":"mcp-custom-theme","relative_path":"templates/index.html","content":"<!-- wp:paragraph --><p>Updated via MCP.</p><!-- /wp:paragraph -->","create_missing":true}}}}
EOF
テーマファイル読取の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-theme-file","parameters":{"theme":"twentytwentyfour","relative_path":"functions.php"}}}}
EOF
固定ページ本文のブロック編集例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/edit-page-blocks","parameters":{"page_id":123,"content":"<!-- wp:cover {\"dimRatio\":40,\"minHeight\":360} -->
<div class=\"wp-block-cover\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-background-dim-40 has-background-dim\"></span><div class=\"wp-block-cover__inner-container\"><!-- wp:heading {\"textAlign\":\"center\",\"level\":1} -->
<h1 class=\"wp-block-heading has-text-align-center\">Landing Page</h1>
<!-- /wp:heading --><!-- wp:paragraph {\"align\":\"center\"} -->
<p class=\"has-text-align-center\">Updated via MCP block content.</p>
<!-- /wp:paragraph --></div></div>
<!-- /wp:cover -->"}}}}
EOF
固定ページ本文のブロック取得例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-page-blocks","parameters":{"page_id":123}}}}
EOF
投稿やカスタム投稿タイプ本文のブロック編集例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/edit-post-blocks","parameters":{"post_id":456,"content":"<!-- wp:columns --><div class=\"wp-block-columns\"><!-- wp:column --><div class=\"wp-block-column\"><!-- wp:heading --><h2>Custom Entry</h2><!-- /wp:heading --></div><!-- /wp:column --></div><!-- /wp:columns -->"}}}}
EOF
投稿やカスタム投稿タイプ本文のブロック取得例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-post-blocks","parameters":{"post_id":456}}}}
EOF
固定ページデザイン編集の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/edit-page-design","parameters":{"page_id":123,"content":"<!-- wp:template-part {\"slug\":\"header\",\"tagName\":\"header\"} /-->
<!-- wp:group {\"tagName\":\"main\",\"layout\":{\"type\":\"constrained\"}} -->
<main class=\"wp-block-group\"><!-- wp:post-title {\"level\":1} /-->
<!-- wp:post-content /--></main>
<!-- /wp:group -->
<!-- wp:template-part {\"slug\":\"footer\",\"tagName\":\"footer\"} /-->"}}}}
EOF
サイトテンプレート取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-site-template","parameters":{"slug":"page-home"}}}}
EOF
サイトテンプレート保存の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/save-site-template","parameters":{"slug":"page-home","title":"Front Page","status":"publish","content":"<!-- wp:template-part {\"slug\":\"header\",\"tagName\":\"header\"} /-->\n<!-- wp:group {\"tagName\":\"main\",\"layout\":{\"type\":\"constrained\"}} --><main class=\"wp-block-group\"><!-- wp:heading --><h1>Welcome</h1><!-- /wp:heading --><!-- wp:paragraph --><p>Updated via MCP template API.</p><!-- /wp:paragraph --></main><!-- /wp:group -->\n<!-- wp:template-part {\"slug\":\"footer\",\"tagName\":\"footer\"} /-->"}}}}
EOF
サイトテンプレート削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-site-template","parameters":{"slug":"page-home","force":true}}}}
EOF
テンプレートパーツ保存の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/save-template-part","parameters":{"slug":"promo-footer","title":"Promo Footer","status":"publish","areas":["footer"],"content":"<!-- wp:group {\"style\":{\"spacing\":{\"padding\":{\"top\":\"32px\",\"bottom\":\"32px\"}}},\"backgroundColor\":\"contrast\",\"textColor\":\"base\",\"layout\":{\"type\":\"constrained\"}} --><div class=\"wp-block-group has-base-color has-contrast-background-color has-text-color has-background\"><!-- wp:paragraph {\"align\":\"center\"} --><p class=\"has-text-align-center\">Subscribe for weekly updates.</p><!-- /wp:paragraph --></div><!-- /wp:group -->"}}}}
EOF
テンプレートパーツ削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-template-part","parameters":{"slug":"promo-footer","force":true}}}}
EOF
固定ページへのテンプレート割当の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/set-page-template-assignment","parameters":{"page_id":123,"template_slug":"page-home"}}}}
EOF
global styles 取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-global-styles","parameters":{}}}}
EOF
global styles 更新の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-global-styles","parameters":{"content":"{\"version\":3,\"isGlobalStylesUserThemeJSON\":true,\"styles\":{\"elements\":{\"button\":{\"border\":{\"radius\":\"999px\"}}},\"typography\":{\"fontSize\":\"18px\"}}}"}}}}
EOF
ブロックナビゲーション保存の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/save-block-navigation","parameters":{"slug":"footer-links","title":"Footer Links","status":"publish","content":"<!-- wp:navigation-link {\"label\":\"Home\",\"type\":\"page\",\"id\":123,\"url\":\"https://example.com/\",\"kind\":\"post-type\",\"isTopLevelLink\":true} /--><!-- wp:navigation-link {\"label\":\"Contact\",\"type\":\"page\",\"id\":125,\"url\":\"https://example.com/contact/\",\"kind\":\"post-type\",\"isTopLevelLink\":true} /-->"}}}}
EOF
ブロックナビゲーション削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-block-navigation","parameters":{"slug":"footer-links","force":true}}}}
EOF
reusable pattern 保存の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/save-reusable-pattern","parameters":{"slug":"cta-banner","title":"CTA Banner","status":"publish","categories":["call-to-action"],"content":"<!-- wp:cover {\"dimRatio\":50,\"overlayColor\":\"contrast\",\"minHeight\":280,\"isDark\":false} --><div class=\"wp-block-cover is-light\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-contrast-background-color has-background-dim\"></span><div class=\"wp-block-cover__inner-container\"><!-- wp:heading {\"textAlign\":\"center\"} --><h2 class=\"has-text-align-center\">Launch your next campaign</h2><!-- /wp:heading --><!-- wp:buttons {\"layout\":{\"type\":\"flex\",\"justifyContent\":\"center\"}} --><div class=\"wp-block-buttons\"><!-- wp:button --><div class=\"wp-block-button"><a class=\"wp-block-button__link wp-element-button\">Get started</a></div><!-- /wp:button --></div><!-- /wp:buttons --></div></div><!-- /wp:cover -->"}}}}
EOF
reusable pattern 削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-reusable-pattern","parameters":{"slug":"cta-banner","force":true}}}}
EOF
フロントページと投稿ページ設定の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-general-settings","parameters":{"show_on_front":"page","page_on_front":123,"page_for_posts":124,"posts_per_page":10}}}}
EOF
任意 option 読取の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-options","parameters":{"names":["blogname","stylesheet","wpseo"]}}}}
EOF
任意 option 更新の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-options","parameters":{"options":[{"name":"blogname","value":"MCP Corporate Site"},{"name":"my_plugin_settings","value":{"headline":"Hello","enabled":true}}]}}}}
EOF
Contact Form 7 フォーム作成の例
Contact Form 7 や WPForms Lite のフォームは、汎用の post/meta Ability ではなく専用 Ability を使って保存してください。
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/save-contact-form","parameters":{"provider":"contact-form-7","title":"お問い合わせ","configuration":{"form":"<label>お名前 [text* your-name]</label>\n<label>メールアドレス [email* your-email]</label>\n<label>お問い合わせ内容 [textarea* your-message]</label>","mail":{"subject":"[your-subject]","body":"お名前: [your-name]\nメール: [your-email]\n\n[your-message]"}}}}}}
EOF
Contact Form 7 フォーム取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-contact-form","parameters":{"provider":"contact-form-7","form_id":1805}}}}
EOF
WPForms Lite フォーム一覧の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/list-contact-forms","parameters":{"provider":"wpforms-lite","per_page":10}}}}
EOF
custom post type 一覧取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-post-type-entries","parameters":{"post_type":"news","per_page":10,"page":1}}}}
EOF
custom post type 単体更新の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-post-type-entry","parameters":{"post_id":456,"post_type":"news","title":"Updated News","status":"publish"}}}}
EOF
post meta 読取の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-object-meta","parameters":{"object_type":"post","object_id":456,"keys":["_thumbnail_id","custom_layout"]}}}}
EOF
term meta 更新の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-object-meta","parameters":{"object_type":"term","object_id":12,"entries":[{"key":"banner_title","value":"News Category"},{"key":"accent_color","value":"#0f766e"}]}}}}
EOF
メディア取り込みの例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/import-media-from-url","parameters":{"source_url":"https://example.com/hero.jpg","title":"Hero Image","alt_text":"Office building exterior"}}}}
EOF
ナビゲーションメニュー更新の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/set-navigation-menu","parameters":{"name":"Primary Navigation","locations":["primary"],"items":[{"title":"Home","type":"page","object_id":123},{"title":"News","type":"page","object_id":124},{"title":"Contact","type":"page","object_id":125}]}}}}
EOF
テーマ一覧取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-themes","parameters":{"include_inactive":true}}}}
EOF
テーマ削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-theme","parameters":{"theme":"mcp-custom-theme"}}}}
EOF
プラグイン追加の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/install-plugin","parameters":{"slug":"classic-editor","activate":false}}}}
EOF
プラグイン作成の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/create-plugin","parameters":{"slug":"mcp-custom-plugin","name":"MCP Custom Plugin","description":"Created via MCP.","activate":false}}}}
EOF
プラグイン更新の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/update-plugin","parameters":{"plugin":"mcp-custom-plugin","relative_path":"includes/bootstrap.php","content":"<?php\n\ndeclare( strict_types = 1 );\n\nadd_action( 'init', static function (): void {\n\t// Updated via MCP.\n} );\n","create_missing":true}}}}
EOF
プラグインファイル読取の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-plugin-file","parameters":{"plugin":"classic-editor","relative_path":"classic-editor.php"}}}}
EOF
サイトヘルスのコード調査に関する考え方
Site Health の一部の問題は、未使用テーマや未使用プラグインの削除のように直接修正できるだけでなく、アクティブな子テーマの functions.php やプラグインファイルの修正で改善できる場合があります。
このため、get-site-health-status で問題を把握し、get-themes や get-plugins で対象候補を絞り込み、get-theme-file / get-plugin-file で既存コードを確認してから edit-theme / update-plugin で差分反映する流れを推奨します。
プラグイン一覧取得の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/get-plugins","parameters":{"include_inactive":true}}}}
EOF
プラグイン削除の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/delete-plugin","parameters":{"plugin":"mcp-custom-plugin"}}}}
EOF
プラグイン有効化の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/activate-plugin","parameters":{"plugin":"mcp-custom-plugin"}}}}
EOF
プラグイン無効化の例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/deactivate-plugin","parameters":{"plugin":"mcp-custom-plugin"}}}}
EOF
プラグイン自動更新を有効化する例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/enable-plugin-auto-update","parameters":{"plugin":"classic-editor"}}}}
EOF
プラグイン自動更新を無効化する例
cat <<'EOF' | wp mcp-adapter serve --allow-root --user=1 --server=mcp-adapter-default-server --path=/var/www/html
{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"mcp-adapter-execute-ability","arguments":{"ability_name":"wordpress-mcp-admin/disable-plugin-auto-update","parameters":{"plugin":"classic-editor"}}}}
EOF
管理画面
有効化後、WordPress 管理画面の Tools 配下に MCP Activity Log が追加されます。
この画面では以下を確認できます。
- 実行日時
- Ability 名
- 成功または失敗
- 対象オブジェクト
- 入力要約
- エラーコードとエラーメッセージ
監査ログについて
- 監査ログは WordPress option に保存されます。
- 最新 50 件を保持します。
- 旧 namespace のログが残っている場合は、新 namespace へ自動移行されます。
注意事項
- このプラグインは WordPress の管理操作を外部クライアントから実行できるようにします。
- 本番環境では、MCP Adapter の接続経路、認証、実行ユーザー権限を必ず制御してください。
- 破壊的な Ability を有効にする場合は、監査ログ確認と権限分離を推奨します。