MxChat – AI Chatbot & Content Generation for WordPress Security & Risk Analysis

wordpress.org/plugins/mxchat-basic

The best free AI chatbot and content generation plugin for WordPress. Train ChatGPT, Claude, Gemini, or Grok on your website content.

1K active installs v3.1.2 PHP 7.2+ WP 5.0+ Updated Mar 13, 2026
ai-chatbotchatgptcontent-generationcustomer-supportwoocommerce
98
A · Safe
CVEs total2
Unpatched0
Last CVEDec 2, 2025
Safety Verdict

Is MxChat – AI Chatbot & Content Generation for WordPress Safe to Use in 2026?

Generally Safe

Score 98/100

MxChat – AI Chatbot & Content Generation for WordPress has a strong security track record. Known vulnerabilities have been patched promptly.

2 known CVEsLast CVE: Dec 2, 2025Updated 21d ago
Risk Assessment

The mxchat-basic plugin v3.1.2 presents a mixed security posture. On one hand, it demonstrates good practices with a high percentage of SQL prepared statements and output escaping, as well as a significant number of nonce and capability checks. The absence of bundled libraries and zero currently unpatched CVEs are also positive indicators. However, there are notable concerns regarding the attack surface. A substantial number of AJAX handlers (23 out of 119) lack proper authentication checks, creating potential entry points for unauthorized actions. The taint analysis reveals 9 high-severity flows with unsanitized paths, indicating a risk of attackers manipulating data leading to unintended consequences, though no critical severity flows were identified. The vulnerability history shows past issues with Exposure of Sensitive Information and SSRF, even though they are currently patched. This historical pattern, coupled with the identified taint flows, suggests a recurring weakness in input sanitization and secure handling of external data.

In conclusion, while the plugin has strengths in its implementation of security features like prepared statements and escaping, the significant number of unprotected AJAX endpoints and high-severity unsanitized taint flows represent immediate risks that require attention. The historical vulnerability types also warrant caution. Addressing these specific areas will be crucial for improving the overall security of mxchat-basic.

Key Concerns

  • Unprotected AJAX handlers
  • High severity taint flows (unsanitized paths)
  • Past SSRF vulnerabilities
  • Past Exposure of Sensitive Information vulnerabilities
Vulnerabilities
2

MxChat – AI Chatbot & Content Generation for WordPress Security Vulnerabilities

CVEs by Year

2 CVEs in 2025
2025
Patched Has unpatched

Severity Breakdown

Medium
2

2 total CVEs

CVE-2025-12585medium · 5.3Exposure of Sensitive Information to an Unauthorized Actor

MxChat – AI Chatbot for WordPress <= 2.5.5 - Unauthenticated Information Exposure

Dec 2, 2025 Patched in 2.5.6 (2d)
CVE-2025-10705medium · 5.3Server-Side Request Forgery (SSRF)

MxChat – AI Chatbot for WordPress <= 2.4.6 - Unauthenticated Blind Server-Side Request Forgery

Oct 22, 2025 Patched in 2.4.7 (2d)
Code Analysis
Analyzed Mar 16, 2026

MxChat – AI Chatbot & Content Generation for WordPress Code Analysis

Dangerous Functions
4
Raw SQL Queries
74
170 prepared
Unescaped Output
329
1497 escaped
Nonce Checks
94
Capability Checks
90
File Operations
27
External Requests
112
Bundled Libraries
0

Dangerous Functions Found

shell_exec$output = shell_exec($command);admin\class-knowledge-manager.php:427
unserialize? unserialize($intent_embedding_serialized, ['allowed_classes' => false])includes\class-mxchat-integrator.php:2073
unserialize? unserialize($embedding->embedding_vector, ['allowed_classes' => false])includes\class-mxchat-integrator.php:4765
unserialize? unserialize($embedding->embedding_vector, ['allowed_classes' => false])includes\class-mxchat-integrator.php:6063

SQL Query Safety

70% prepared244 total queries

Output Escaping

82% escaped1826 total outputs
Data Flows
10 unsanitized

Data Flow Analysis

25 flows10 with unsanitized paths
mxchat_save_setting_callback (admin\class-ajax-handler.php:60)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
23 unprotected

MxChat – AI Chatbot & Content Generation for WordPress Attack Surface

Entry Points125
Unprotected23

AJAX Handlers 119

authwp_ajax_mxchat_save_settingadmin\class-ajax-handler.php:29
authwp_ajax_mxchat_save_prompts_settingadmin\class-ajax-handler.php:30
authwp_ajax_migrate_pinecone_settingsadmin\class-ajax-handler.php:31
authwp_ajax_mxchat_handle_activate_licenseadmin\class-ajax-handler.php:34
authwp_ajax_mxchat_check_license_statusadmin\class-ajax-handler.php:35
authwp_ajax_mxchat_deactivate_licenseadmin\class-ajax-handler.php:36
authwp_ajax_mxchat_toggle_actionadmin\class-ajax-handler.php:39
authwp_ajax_mxchat_update_intent_thresholdadmin\class-ajax-handler.php:40
authwp_ajax_mxchat_save_selected_botadmin\class-ajax-handler.php:42
authwp_ajax_mxchat_check_api_keysadmin\class-ajax-handler.php:43
authwp_ajax_mxchat_toggle_debug_modeadmin\class-ajax-handler.php:46
authwp_ajax_mxchat_get_debug_logadmin\class-ajax-handler.php:47
authwp_ajax_mxchat_clear_debug_logadmin\class-ajax-handler.php:48
authwp_ajax_mxchat_export_settingsadmin\class-ajax-handler.php:49
authwp_ajax_mxchat_reset_all_settingsadmin\class-ajax-handler.php:50
authwp_ajax_mxchat_get_status_updatesadmin\class-knowledge-manager.php:38
authwp_ajax_mxchat_dismiss_completed_statusadmin\class-knowledge-manager.php:39
authwp_ajax_mxchat_get_content_listadmin\class-knowledge-manager.php:40
authwp_ajax_mxchat_process_selected_contentadmin\class-knowledge-manager.php:41
authwp_ajax_mxchat_save_inline_promptadmin\class-knowledge-manager.php:42
authwp_ajax_mxchat_delete_pinecone_promptadmin\class-knowledge-manager.php:44
authwp_ajax_mxchat_delete_chunks_by_urladmin\class-knowledge-manager.php:45
authwp_ajax_mxchat_delete_wordpress_promptadmin\class-knowledge-manager.php:46
authwp_ajax_mxchat_bulk_delete_knowledgeadmin\class-knowledge-manager.php:47
authwp_ajax_mxchat_update_role_restrictionadmin\class-knowledge-manager.php:48
authwp_ajax_mxchat_get_next_queue_itemadmin\class-knowledge-manager.php:51
authwp_ajax_mxchat_process_queue_itemadmin\class-knowledge-manager.php:52
authwp_ajax_mxchat_get_queue_statusadmin\class-knowledge-manager.php:53
authwp_ajax_mxchat_clear_queueadmin\class-knowledge-manager.php:54
authwp_ajax_mxchat_retry_failedadmin\class-knowledge-manager.php:55
authwp_ajax_mxchat_get_recent_entriesadmin\class-knowledge-manager.php:56
authwp_ajax_mxchat_detect_sitemapsadmin\class-knowledge-manager.php:57
authwp_ajax_mxchat_refresh_pinecone_entriesadmin\class-knowledge-manager.php:58
authwp_ajax_mxchat_paginate_entriesadmin\class-knowledge-manager.php:59
authwp_ajax_mxchat_mark_queue_completeadmin\class-knowledge-manager.php:74
authwp_ajax_mxchat_add_tag_role_mappingadmin\class-knowledge-manager.php:6030
authwp_ajax_mxchat_delete_tag_role_mappingadmin\class-knowledge-manager.php:6031
authwp_ajax_mxchat_get_tag_role_mappingsadmin\class-knowledge-manager.php:6032
authwp_ajax_mxchat_bulk_update_tag_rolesadmin\class-knowledge-manager.php:6033
authwp_ajax_mxchat_delete_chat_historyincludes\class-mxchat-admin.php:44
authwp_ajax_mxchat_fetch_chat_historyincludes\class-mxchat-admin.php:46
noprivwp_ajax_mxchat_fetch_chat_historyincludes\class-mxchat-admin.php:47
authwp_ajax_mxchat_fetch_conversationincludes\class-mxchat-admin.php:48
authwp_ajax_mxchat_export_transcriptsincludes\class-mxchat-admin.php:57
authwp_ajax_dismiss_live_agent_noticeincludes\class-mxchat-admin.php:59
authwp_ajax_dismiss_theme_migration_noticeincludes\class-mxchat-admin.php:60
authwp_ajax_mxchat_test_streaming_actualincludes\class-mxchat-admin.php:68
authwp_ajax_mxchat_test_streamingincludes\class-mxchat-admin.php:69
authwp_ajax_mxchat_test_vectorstore_connectionincludes\class-mxchat-admin.php:70
authwp_ajax_mxchat_save_selected_botincludes\class-mxchat-admin.php:72
authwp_ajax_mxchat_fetch_openrouter_modelsincludes\class-mxchat-admin.php:73
authwp_ajax_mxchat_get_rag_contextincludes\class-mxchat-admin.php:74
authwp_ajax_mxchat_fetch_actions_listincludes\class-mxchat-admin.php:77
authwp_ajax_mxchat_toggle_action_statusincludes\class-mxchat-admin.php:78
authwp_ajax_mxchat_bulk_delete_actionsincludes\class-mxchat-admin.php:79
authwp_ajax_mxchat_add_intent_ajaxincludes\class-mxchat-admin.php:80
authwp_ajax_mxchat_edit_intent_ajaxincludes\class-mxchat-admin.php:81
authwp_ajax_mxchat_delete_intent_ajaxincludes\class-mxchat-admin.php:82
authwp_ajax_mxchat_test_slack_connectionincludes\class-mxchat-admin.php:85
authwp_ajax_mxchat_translate_messagesincludes\class-mxchat-admin.php:88
authwp_ajax_mxchat_get_transcript_translationincludes\class-mxchat-admin.php:89
authwp_ajax_mxchat_generate_contentincludes\class-mxchat-content-generator.php:24
authwp_ajax_mxchat_content_editincludes\class-mxchat-content-generator.php:25
authwp_ajax_mxchat_content_progressincludes\class-mxchat-content-generator.php:26
authwp_ajax_mxchat_save_content_settingincludes\class-mxchat-content-generator.php:27
authwp_ajax_mxchat_content_historyincludes\class-mxchat-content-generator.php:28
authwp_ajax_mxchat_load_post_for_editincludes\class-mxchat-content-generator.php:29
authwp_ajax_mxchat_delete_contentincludes\class-mxchat-content-generator.php:30
authwp_ajax_mxchat_update_post_statusincludes\class-mxchat-content-generator.php:31
authwp_ajax_mxchat_seo_analyzeincludes\class-mxchat-content-generator.php:32
authwp_ajax_mxchat_seo_analyze_batchincludes\class-mxchat-content-generator.php:33
authwp_ajax_mxchat_seo_suggestincludes\class-mxchat-content-generator.php:34
authwp_ajax_mxchat_seo_list_postsincludes\class-mxchat-content-generator.php:35
noprivwp_ajax_mxchat_generate_content_backgroundincludes\class-mxchat-content-generator.php:38
authwp_ajax_mxchat_generate_content_backgroundincludes\class-mxchat-content-generator.php:39
authwp_ajax_mxchat_handle_chat_requestincludes\class-mxchat-integrator.php:56
noprivwp_ajax_mxchat_handle_chat_requestincludes\class-mxchat-integrator.php:57
authwp_ajax_mxchat_dismiss_pre_chat_messageincludes\class-mxchat-integrator.php:58
noprivwp_ajax_mxchat_dismiss_pre_chat_messageincludes\class-mxchat-integrator.php:59
authwp_ajax_mxchat_check_pre_chat_message_statusincludes\class-mxchat-integrator.php:62
noprivwp_ajax_mxchat_check_pre_chat_message_statusincludes\class-mxchat-integrator.php:63
authwp_ajax_mxchat_fetch_conversation_historyincludes\class-mxchat-integrator.php:64
noprivwp_ajax_mxchat_fetch_conversation_historyincludes\class-mxchat-integrator.php:65
authwp_ajax_mxchat_add_to_cartincludes\class-mxchat-integrator.php:66
noprivwp_ajax_mxchat_add_to_cartincludes\class-mxchat-integrator.php:67
authwp_ajax_mxchat_fetch_new_messagesincludes\class-mxchat-integrator.php:71
noprivwp_ajax_mxchat_fetch_new_messagesincludes\class-mxchat-integrator.php:72
authwp_ajax_mxchat_upload_pdfincludes\class-mxchat-integrator.php:78
noprivwp_ajax_mxchat_upload_pdfincludes\class-mxchat-integrator.php:79
authwp_ajax_mxchat_remove_pdfincludes\class-mxchat-integrator.php:80
noprivwp_ajax_mxchat_remove_pdfincludes\class-mxchat-integrator.php:81
authwp_ajax_mxchat_upload_wordincludes\class-mxchat-integrator.php:84
noprivwp_ajax_mxchat_upload_wordincludes\class-mxchat-integrator.php:85
authwp_ajax_mxchat_remove_wordincludes\class-mxchat-integrator.php:86
noprivwp_ajax_mxchat_remove_wordincludes\class-mxchat-integrator.php:87
authwp_ajax_mxchat_check_word_statusincludes\class-mxchat-integrator.php:88
noprivwp_ajax_mxchat_check_word_statusincludes\class-mxchat-integrator.php:89
noprivwp_ajax_mxchat_handle_save_email_and_responseincludes\class-mxchat-integrator.php:92
authwp_ajax_mxchat_handle_save_email_and_responseincludes\class-mxchat-integrator.php:93
noprivwp_ajax_mxchat_check_email_providedincludes\class-mxchat-integrator.php:94
authwp_ajax_mxchat_check_email_providedincludes\class-mxchat-integrator.php:95
authwp_ajax_mxchat_stream_chatincludes\class-mxchat-integrator.php:97
noprivwp_ajax_mxchat_stream_chatincludes\class-mxchat-integrator.php:98
authwp_ajax_mxchat_get_system_infoincludes\class-mxchat-integrator.php:101
authwp_ajax_mxchat_get_similarity_thresholdincludes\class-mxchat-integrator.php:102
authwp_ajax_mxchat_get_kb_statusincludes\class-mxchat-integrator.php:103
authwp_ajax_mxchat_start_fresh_sessionincludes\class-mxchat-integrator.php:104
authwp_ajax_mxchat_track_url_clickincludes\class-mxchat-integrator.php:106
noprivwp_ajax_mxchat_track_url_clickincludes\class-mxchat-integrator.php:107
authwp_ajax_mxchat_track_originating_pageincludes\class-mxchat-integrator.php:108
noprivwp_ajax_mxchat_track_originating_pageincludes\class-mxchat-integrator.php:109
authwp_ajax_mxchat_get_current_chat_modeincludes\class-mxchat-integrator.php:111
noprivwp_ajax_mxchat_get_current_chat_modeincludes\class-mxchat-integrator.php:112
authwp_ajax_mxchat_refresh_nonceincludes\class-mxchat-integrator.php:115
noprivwp_ajax_mxchat_refresh_nonceincludes\class-mxchat-integrator.php:116
authwp_ajax_mxchat_fetch_user_ordersincludes\class-mxchat-woocommerce.php:10
noprivwp_ajax_mxchat_fetch_user_ordersincludes\class-mxchat-woocommerce.php:11
authwp_ajax_mxchat_add_to_cartincludes\class-mxchat-woocommerce.php:13
noprivwp_ajax_mxchat_add_to_cartincludes\class-mxchat-woocommerce.php:14

REST API Routes 5

GET/wp-json/mxchat/v1/streamincludes\class-mxchat-integrator.php:290
POST/wp-json/mxchat/v1/agent-responseincludes\class-mxchat-integrator.php:296
POST/wp-json/mxchat/v1/slack-interactionincludes\class-mxchat-integrator.php:302
POST/wp-json/mxchat/v1/slack-messagesincludes\class-mxchat-integrator.php:308
POST/wp-json/mxchat/v1/telegram-webhookincludes\class-mxchat-integrator.php:315

Shortcodes 1

[mxchat_chatbot] includes\class-mxchat-public.php:12
WordPress Hooks 89
actionadmin_post_mxchat_submit_contentadmin\class-knowledge-manager.php:32
actionadmin_post_mxchat_submit_sitemapadmin\class-knowledge-manager.php:33
actionadmin_post_mxchat_submit_pdf_fileadmin\class-knowledge-manager.php:34
actionadmin_post_mxchat_stop_processingadmin\class-knowledge-manager.php:35
actionadmin_post_mxchat_delete_pinecone_promptadmin\class-knowledge-manager.php:43
actionmxchat_delete_contentadmin\class-knowledge-manager.php:62
actionpre_post_updateadmin\class-knowledge-manager.php:65
actionpost_updatedadmin\class-knowledge-manager.php:66
actionbefore_delete_postadmin\class-knowledge-manager.php:67
actionwp_trash_postadmin\class-knowledge-manager.php:68
actionacf/save_postadmin\class-knowledge-manager.php:72
actionpre_post_updateadmin\class-knowledge-manager.php:78
actionsave_post_productadmin\class-knowledge-manager.php:79
actionwp_trash_postadmin\class-knowledge-manager.php:80
actionbefore_delete_postadmin\class-knowledge-manager.php:81
actionshutdownadmin\class-knowledge-manager.php:5182
actionset_object_termsadmin\class-knowledge-manager.php:6036
actionmxchat_content_storedadmin\class-knowledge-manager.php:6039
actionmxchat_delete_contentadmin\class-pinecone-manager.php:19
actionadmin_menuincludes\class-mxchat-admin.php:40
actionadmin_initincludes\class-mxchat-admin.php:41
actionadmin_initincludes\class-mxchat-admin.php:42
actionadmin_enqueue_scriptsincludes\class-mxchat-admin.php:43
actionadmin_post_mxchat_delete_promptincludes\class-mxchat-admin.php:45
actionwp_footerincludes\class-mxchat-admin.php:49
actionadmin_head-mxchat-promptsincludes\class-mxchat-admin.php:50
actionadmin_head-toplevel_page_mxchat-maxincludes\class-mxchat-admin.php:51
actionadmin_noticesincludes\class-mxchat-admin.php:52
actionadmin_post_mxchat_delete_all_promptsincludes\class-mxchat-admin.php:53
actionadmin_post_mxchat_add_intentincludes\class-mxchat-admin.php:54
actionadmin_post_mxchat_delete_intentincludes\class-mxchat-admin.php:55
actionadmin_post_mxchat_edit_intentincludes\class-mxchat-admin.php:56
actionadmin_initincludes\class-mxchat-admin.php:58
actionmxchat_cleanup_old_transcriptsincludes\class-mxchat-admin.php:61
actionadmin_initincludes\class-mxchat-admin.php:63
actionadmin_initincludes\class-mxchat-admin.php:64
actionadmin_noticesincludes\class-mxchat-admin.php:66
actionadmin_noticesincludes\class-mxchat-admin.php:5143
actionadmin_footerincludes\class-mxchat-admin.php:5640
actionwp_headincludes\class-mxchat-content-generator.php:42
filtershow_admin_barincludes\class-mxchat-content-generator.php:45
filterthe_contentincludes\class-mxchat-content-generator.php:51
filterthe_contentincludes\class-mxchat-content-generator.php:52
filterthe_contentincludes\class-mxchat-content-generator.php:92
filterthe_contentincludes\class-mxchat-content-generator.php:95
filtersafe_style_cssincludes\class-mxchat-content-generator.php:269
actionwp_enqueue_scriptsincludes\class-mxchat-integrator.php:55
actionrest_api_initincludes\class-mxchat-integrator.php:70
actionmxchat_reset_rate_limitsincludes\class-mxchat-integrator.php:75
actionmxchat_send_delayed_transcriptincludes\class-mxchat-integrator.php:119
filtermxchat_check_actions_onlyincludes\class-mxchat-integrator.php:121
filterstyle_loader_tagincludes\class-mxchat-integrator.php:9285
actionwp_footerincludes\class-mxchat-integrator.php:9311
filterscript_loader_tagincludes\class-mxchat-integrator.php:9315
actionadd_meta_boxesincludes\class-mxchat-meta-box.php:12
actionsave_postincludes\class-mxchat-meta-box.php:13
actionenqueue_block_editor_assetsincludes\class-mxchat-meta-box.php:14
actioninitincludes\class-mxchat-meta-box.php:15
actionwp_footerincludes\class-mxchat-public.php:13
actionwp_enqueue_scriptsincludes\class-mxchat-public.php:16
actionwp_footerincludes\class-mxchat-public.php:19
actionwp_footerincludes\class-mxchat-public.php:62
actioninitmxchat-basic.php:40
filterrocket_rucss_inline_atts_exclusionsmxchat-basic.php:56
filterrocket_exclude_cssmxchat-basic.php:63
filterrocket_exclude_jsmxchat-basic.php:70
filterrocket_exclude_defer_jsmxchat-basic.php:82
filterrocket_delay_js_exclusionsmxchat-basic.php:94
filterlitespeed_optimize_css_excludesmxchat-basic.php:109
filterlitespeed_ucss_whitelistmxchat-basic.php:117
filterlitespeed_optm_ccss_excmxchat-basic.php:139
filterlitespeed_optm_js_defer_excmxchat-basic.php:147
filterlitespeed_optm_js_excmxchat-basic.php:158
filterlitespeed_optm_js_delay_excmxchat-basic.php:169
filterlitespeed_guest_optm_excmxchat-basic.php:178
filterautoptimize_filter_css_excludemxchat-basic.php:190
filterautoptimize_filter_js_excludemxchat-basic.php:196
filtersgo_js_minify_excludemxchat-basic.php:203
filtersgo_javascript_combine_excludemxchat-basic.php:211
filtersgo_js_async_excludemxchat-basic.php:219
filterw3tc_minify_js_do_tag_minificationmxchat-basic.php:229
filterwpsc_rejected_urimxchat-basic.php:241
actionadmin_initmxchat-basic.php:1259
actioninitmxchat-basic.php:1262
actionadmin_noticesmxchat-basic.php:1265
actionadmin_noticesmxchat-basic.php:1307
actionplugins_loadedmxchat-basic.php:1318
actionadmin_initmxchat-basic.php:1321
filtercron_schedulesmxchat-basic.php:1376

Scheduled Events 7

mxchat_cleanup_old_transcripts
mxchat_reset_rate_limits
mxchat_reset_rate_limits
mxchat_reset_rate_limits
mxchat_reset_rate_limits
mxchat_reset_rate_limits
mxchat_cleanup_old_transcripts
Maintenance & Trust

MxChat – AI Chatbot & Content Generation for WordPress Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 13, 2026
PHP min version7.2
Downloads49K

Community Trust

Rating100/100
Number of ratings27
Active installs1K
Developer Profile

MxChat – AI Chatbot & Content Generation for WordPress Developer Profile

MxChat

1 plugin · 1K total installs

99
trust score
Avg Security Score
98/100
Avg Patch Time
2 days
View full developer profile
Detection Fingerprints

How We Detect MxChat – AI Chatbot & Content Generation for WordPress

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/mxchat-basic/css/chat-style.css/wp-content/plugins/mxchat-basic/js/chat-script.js/wp-content/plugins/mxchat-basic/js/floating-script.js
Version Parameters
mxchat-basic/css/chat-style.css?ver=mxchat-basic/js/chat-script.js?ver=mxchat-basic/js/floating-script.js?ver=

HTML / DOM Fingerprints

CSS Classes
mxchat-chatbot-wrapperfloating-chatbotfloating-chatbot-buttonchatbot-top-barmxchat-chatbotchat-containerchat-boxbot-message+8 more
Data Attributes
data-mxchat-id
JS Globals
mxchat_init_params
FAQ

Frequently Asked Questions about MxChat – AI Chatbot & Content Generation for WordPress