200+ MCP tools. OAuth 2.0 + WebMCP. Connect Claude, ChatGPT, Gemini, Cursor & any MCP agent to your WordPress site. 100% self-hosted.
Prioritized issue groups from the latest Plugin Check scan
Security
88
9 issue groups
Maintainability
87
15 issue groups
I18n
2
1 issue group
Sample message
Use placeholders and $wpdb->prepare(); found interpolated variable $table at "SELECT `id` AS ID, `name`, `hash`, `status`, `created`, `owner`, `package` FROM `$table` WHERE `id` = %d"
Sample message
Global variables defined by a theme/plugin should start with the theme/plugin prefix. Found: "$btn_style".
Sample message
Use of a direct database call is discouraged.
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$class'.
Sample message
All output should be run through an escaping function (see the Security sections in the WordPress Developer Handbooks), found '$install_target'.
Sample message
Unescaped parameter $auth_codes_table used in $wpdb->query()\n$auth_codes_table assigned unsafely at line 477.
Sample message
error_log() found. Debug code should not normally be used in production.
Sample message
Direct database call without caching detected. Consider using wp_cache_get() / wp_cache_set() or wp_cache_delete().
Sample message
The %i modifier is only supported in WP 6.2 or higher. Found: "%i".
Sample message
Detected usage of meta_key, possible slow query.
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "post_updated".
Sample message
Direct integration with a third-party AI provider (api.anthropic.com) detected. Consider the WordPress AI Client (wp_ai_client_prompt()) introduced in WordPress 7.0.
Sample message
Use placeholders and $wpdb->prepare(); found $prepared
Sample message
Detected usage of meta_query, possible slow query.
Sample message
Replacement variables found, but no valid placeholders found in the query.
Sample message
Detected usage of tax_query, possible slow query.
Sample message
Processing form data without nonce verification.
Sample message
Unescaped parameter $prepared used in $wpdb->get_col()\n$prepared assigned unsafely at line 866.
Sample message
A function call to __() with texts containing placeholders was found, but was not accompanied by a "translators:" comment on the line above to clarify the meaning of the placeholders.
Sample message
Function "str_starts_with()" requires WordPress 5.9.0, but your plugin minimum supported version is WordPress 5.8.0.
Sample message
Attempting a database schema change is discouraged.
Sample message
Hook names invoked by a theme/plugin should start with the theme/plugin prefix. Found: "$event".
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fclose().
Sample message
File operations should use WP_Filesystem methods instead of direct PHP filesystem calls. Found: fopen().
Sample message
Resource version not set in call to wp_enqueue_style(). This means new versions of the style may not always be loaded due to browser caching.
Potential connections found in static code analysis.
Outbound calls
87
External assets
1
Incoming endpoints
13
register_rest_route
register_rest_route
register_rest_route
register_rest_route
register_rest_route
register_rest_route
wp_ajax
wp_ajax
wp_ajax
wp_ajax
20 score snapshots
v1.5.2
37
Latest
v1.5.1
37
Score
| Scan | Score | Findings | Errors | Warnings | Plugin | Check |
|---|---|---|---|---|---|---|
| Latest | 37 | 178 | 47 | 131 | v1.5.2 | 2.1.0 |
| 37 | 161 | 47 | 114 | v1.5.1 | 2.1.0 |
Author, categories, issues, domains, and nearby plugins.