WordPressCAUTION
A WordPress MCP server that provides 190+ tools for complete WordPress site management through AI.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
Enable AI to manage WordPress sites like a professional developer 190+ tools for complete WordPress control
Also Available on glama.ai | Cursor.store
[](https://www.npmjs.com/package/wpmcp) [](LICENSE) [](https://wordpress.org)
Video Demo : https://youtu.be/6hwMqXQFKN0
💝 Support This Project
If this project helps you, consider supporting its development:
Cryptocurrency Donation
Your support helps maintain and improve this project! 🙏
WPMCP server gives AI agents complete control over WordPress sites. Connect it to Claude, Cline, or any MCP-compatible AI, and manage WordPress through natural language.
Key Capabilities:
- ✅ Content Management - Posts, pages, media, users, comments
- ✅ File System Access - Read and write theme/plugin files
- ✅ Theme Customization - Create child themes, modify styles, customize block themes
- ✅ Plugin Control - Activate, deactivate, and modify plugins
- ✅ Menu Management - Create menus, add items, assign to locations
- ✅ Custom Content Types - Manage post types and taxonomies
- ✅ Shortcodes & Cron - Execute shortcodes, schedule tasks
- ✅ Widget System - Manage sidebars and widgets
- ✅ Database Operations - Execute queries, ma
b810b6edc5b3OBSERVED · 2026-10-08Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add wpmcp --env WORDPRESS_PASSWORD=${WORDPRESS_PASSWORD} -- npx -y [email protected]{
"mcpServers": {
"wpmcp": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"WORDPRESS_PASSWORD": "${WORDPRESS_PASSWORD}"
}
}
}
}Exposed tools (190)
107 read · 61 write · 22 destructive. Blast radius: 22 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.
| Tool | Risk | Description |
|---|---|---|
wordpress_activate_plugin | read | |
wordpress_activate_theme | read | |
wordpress_add_capability | write | |
wordpress_analyze_seo | read | |
wordpress_assign_menu_to_location | read | |
wordpress_assign_role | read | |
wordpress_backup_database | read | |
wordpress_backup_files | read | |
wordpress_bulk_create_posts | write | |
wordpress_bulk_delete_media | destructive | |
wordpress_bulk_delete_posts | destructive | |
wordpress_bulk_optimize_images | read | |
wordpress_bulk_update_posts | write | |
wordpress_check_updates | read | |
wordpress_check_user_capability | read | |
wordpress_cleanup_database | read | |
wordpress_clear_cache | destructive | |
wordpress_clone_to_staging | read | |
wordpress_convert_to_webp | read | |
wordpress_copy_file | read | |
wordpress_create_category | write | |
wordpress_create_child_theme | write | |
wordpress_create_comment | write | |
wordpress_create_menu | write | |
wordpress_create_menu_item | write | |
wordpress_create_page | write | |
wordpress_create_post | write | |
wordpress_create_redirect | write | |
wordpress_create_reusable_block | write | |
wordpress_create_role | write | |
wordpress_create_tag | write | |
wordpress_create_term | write | |
wordpress_create_user | write | |
wordpress_deactivate_plugin | read | |
wordpress_delete_backup | destructive | |
wordpress_delete_category | destructive | |
wordpress_delete_comment | destructive | |
wordpress_delete_file | destructive | |
wordpress_delete_media | destructive | |
wordpress_delete_menu | destructive | |
wordpress_delete_menu_item | destructive | |
wordpress_delete_page | destructive | |
wordpress_delete_plugin | destructive | |
wordpress_delete_post | destructive | |
wordpress_delete_redirect | destructive | |
wordpress_delete_reusable_block | destructive | |
wordpress_delete_role | destructive | |
wordpress_delete_term | destructive | |
wordpress_delete_theme | destructive | |
wordpress_delete_user | destructive | |
wordpress_delete_widget | destructive | |
wordpress_duplicate_post | write | |
wordpress_enable_maintenance_mode | write | |
wordpress_execute_shortcode | write | |
wordpress_execute_sql | write | |
wordpress_export_content | read | |
wordpress_file_info | read | |
wordpress_flush_rewrite_rules | read | |
wordpress_full_backup | read | |
wordpress_generate_sitemap | read | |
wordpress_get_active_plugins | read | |
wordpress_get_active_theme | read | |
wordpress_get_block_categories | read | |
wordpress_get_block_editor_settings | read | |
wordpress_get_block_patterns | read | |
wordpress_get_block_template | read | |
wordpress_get_block_types | read | |
wordpress_get_capabilities | read | |
wordpress_get_categories | read | |
wordpress_get_comments | read | |
wordpress_get_cron_schedules | read | |
wordpress_get_debug_log | read | |
wordpress_get_failed_logins | read | |
wordpress_get_global_styles | read | |
wordpress_get_media | read | |
wordpress_get_media_analytics | read | |
wordpress_get_menu_items | read | |
wordpress_get_menu_locations | read | |
wordpress_get_menus | read | |
wordpress_get_option | read | |
wordpress_get_pages | read | |
wordpress_get_performance_metrics | read | |
wordpress_get_plugin_status | read | |
wordpress_get_plugins | read | |
wordpress_get_plugins_detailed | read | |
wordpress_get_post | write | |
wordpress_get_post_revisions | write | |
wordpress_get_post_type | write | |
wordpress_get_post_types | write | |
wordpress_get_posts | read | |
wordpress_get_redirects | read | |
wordpress_get_reusable_blocks | read | |
wordpress_get_robots_txt | read | |
wordpress_get_roles | read | |
wordpress_get_settings | read | |
wordpress_get_sidebar | read | |
wordpress_get_sidebars | read | |
wordpress_get_site_health | read | |
wordpress_get_site_info | read | |
wordpress_get_style_variations | read | |
wordpress_get_system_info | read | |
wordpress_get_table_preview | read | |
wordpress_get_table_structure | read | |
wordpress_get_tags | read | |
wordpress_get_taxonomies | read | |
wordpress_get_taxonomy | read | |
wordpress_get_template_parts | read | |
wordpress_get_terms | read | |
wordpress_get_theme_json | read | |
wordpress_get_theme_mods | read | |
wordpress_get_theme_templates | read | |
wordpress_get_themes | read | |
wordpress_get_themes_detailed | read | |
wordpress_get_unused_media | read | |
wordpress_get_users | read | |
wordpress_get_version_info | read | |
wordpress_get_widget_types | read | |
wordpress_get_widgets | read | |
wordpress_import_content | write | |
wordpress_list_backups | read | |
wordpress_list_cron_jobs | read | |
wordpress_list_files | read | |
wordpress_list_plugin_files | read | |
wordpress_list_shortcodes | read | |
wordpress_list_tables | read | |
wordpress_list_theme_files | read | |
wordpress_move_file | write | |
wordpress_optimize_database | read | |
wordpress_parse_blocks | read | |
wordpress_plugin_exists | read | |
wordpress_publish_post | write | |
wordpress_read_file | read | |
wordpress_read_plugin_file | read | |
wordpress_read_theme_file | read | |
wordpress_regenerate_thumbnails | read | |
wordpress_remove_capability | destructive | |
wordpress_restore_backup | read | |
wordpress_run_cron | write | |
wordpress_scan_permissions | read | |
wordpress_schedule_backups | write | |
wordpress_schedule_event | write | |
wordpress_schedule_post | write | |
wordpress_search_block_directory | read | |
wordpress_search_posts | read | |
wordpress_set_canonical_url | write | |
wordpress_set_custom_meta | write | |
wordpress_set_featured_image | write | |
wordpress_set_og_tags | write | |
wordpress_set_schema_markup | write | |
wordpress_set_seo_meta | write | |
wordpress_set_twitter_cards | write | |
wordpress_shortcode_exists | read | |
wordpress_test_connection | read | |
wordpress_theme_exists | read | |
wordpress_unschedule_event | read | |
wordpress_update_category | write | |
wordpress_update_comment | write | |
wordpress_update_media | write | |
wordpress_update_menu_item | write | |
wordpress_update_option | write | |
wordpress_update_page | write | |
wordpress_update_post | write | |
wordpress_update_reusable_block | write | |
wordpress_update_robots_txt | write | |
wordpress_update_settings | write | |
wordpress_update_term | write | |
wordpress_update_theme_json | write | |
wordpress_update_user | write | |
wordpress_update_widget | write | |
wordpress_upload_media | write | |
wordpress_verify_core_files | read | |
wordpress_wc_create_coupon | write | |
wordpress_wc_create_product | write | |
wordpress_wc_delete_product | destructive | |
wordpress_wc_get_coupons | read | |
wordpress_wc_get_customers | read | |
wordpress_wc_get_orders | read | |
wordpress_wc_get_payment_gateways | read | |
wordpress_wc_get_product_categories | read | |
wordpress_wc_get_products | read | |
wordpress_wc_get_sales_report | read | |
wordpress_wc_get_shipping_zones | read | |
wordpress_wc_get_top_sellers | read | |
wordpress_wc_is_active | read | |
wordpress_wc_update_order_status | write | |
wordpress_wc_update_product | write | |
wordpress_wc_update_stock | write | |
wordpress_write_file | write | |
wordpress_write_plugin_file | write | |
wordpress_write_theme_file | write |
Trust audit
CAUTIONgrade B · trust 89/100 Install with care. The audit found things worth knowing before you trust its output.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | WARN |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | WARN |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (1 observation(s))
- Network
- declared (4 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (3)
wpmcp.zip
wordpress_bulk_delete_media, wordpress_bulk_delete_posts, wordpress_clear_cache, wordpress_delete_backup, wordpress_delete_category, wordpress_delete_comment, wordpress_delete_file, wordpress_delete_m
node-fetch, quickmcp-sdk, @types/node, tsx, typescript
Gates applied: no_behavioural_pass.
b810b6edc5b3full audit observations/trust-audit/mcp-server/raheesahmed__wordpress-10.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | b810b6edc5b3 | CAUTION | B | 89 | first audit |
Questions
What is the WordPress MCP server?
A WordPress MCP server that provides 190+ tools for complete WordPress site management through AI.
What tools does WordPress expose?
190 in total: 107 read-only, 61 that write, and 22 that can delete or overwrite (wordpress_bulk_delete_media, wordpress_bulk_delete_posts, wordpress_clear_cache, wordpress_delete_backup, wordpress_delete_category). Every one is listed on this page with its risk.
Is WordPress safe to connect to an agent?
With care. The audit graded it B (89/100) and found 3 things worth knowing before you trust this server, listed below with the exact line each was found on. Separately from the audit: 22 of its tools can destroy data, so scope the token you give it to what you actually need.
What credentials does WordPress need?
It reads WORDPRESS_PASSWORD from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How current is this page?
The grade is for one exact copy of the source (b810b6edc5b3), read on 2026-10-08. The repository is watched and re-audited when it changes.