<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>WPBeginner</title>
	<atom:link href="https://www.wpbeginner.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.wpbeginner.com</link>
	<description>Beginner&#039;s Guide for WordPress</description>
	<lastBuildDate>Fri, 17 Jul 2026 17:01:52 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>Ultimate WordPress Spam Protection Guide &#8211; Step by Step (2026)</title>
		<link>https://www.wpbeginner.com/wp-tutorials/wordpress-spam-protection-guide/</link>
					<comments>https://www.wpbeginner.com/wp-tutorials/wordpress-spam-protection-guide/#respond</comments>
		
		<dc:creator><![CDATA[Editorial Staff]]></dc:creator>
		<pubDate>Fri, 17 Jul 2026 17:01:27 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[activelayer]]></category>
		<category><![CDATA[spam]]></category>
		<category><![CDATA[wpforms]]></category>
		<guid isPermaLink="false">https://www.wpbeginner.com/?p=408541</guid>

					<description><![CDATA[<p>If you run a WordPress site, then you know that spam is a real annoying problem whether it comes to contact forms, WordPress comments, or user registrations. The good news is that stopping spam in WordPress is a lot easier than you probably think, and&#8230;&#160;<strong><a href="https://www.wpbeginner.com/wp-tutorials/wordpress-spam-protection-guide/">Read More &#187;</a></strong></p>
<p>The post <a href="https://www.wpbeginner.com/wp-tutorials/wordpress-spam-protection-guide/">Ultimate WordPress Spam Protection Guide – Step by Step (2026)</a> first appeared on <a href="https://www.wpbeginner.com">WPBeginner</a>.</p>]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">If you run a WordPress site, then you know that spam is a real annoying problem whether it comes to contact forms, WordPress comments, or user registrations.</p>



<p class="wp-block-paragraph">The good news is that stopping spam in WordPress is a lot easier than you probably think, and you don&#8217;t need expensive tools either. </p>



<p class="wp-block-paragraph">We have spent over 16 years testing anti-spam plugins, tools, and refining strategies to keep WPBeginner and our other business websites safe from daily spam attacks. </p>



<p class="wp-block-paragraph">In this ultimate guide, we&#8217;ll walk you through how to block each type of WordPress spam, step by step from the basics to advanced modern automated spam protection. These are the exact methods we&#8217;re using to protect our own websites.</p>



<figure class="wp-block-image size-full"><img fetchpriority="high" decoding="async" width="680" height="383" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/spam-protection-guide-wordpress-wpbeginner-featured.png" alt="The Ultimate WordPress Spam Protection Guide - Step by Step" class="wp-image-410007" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/spam-protection-guide-wordpress-wpbeginner-featured.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/spam-protection-guide-wordpress-wpbeginner-featured-300x169.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">We&#8217;re covering a lot of ground in this ultimate guide, so use the quick links below to jump straight to the section you want to learn about first:</p>


<div class="wp-block-aioseo-table-of-contents"><ul><li><a class="aioseo-toc-item" href="#aioseo-1-free-built-in-settings-to-turn-on-first-7">1. Free Built-In Settings to Turn On First</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-set-up-modern-spam-bot-protection">2. Set Up Modern AI-Powered Spam Bot Protection for WordPress</a></li><li><a class="aioseo-toc-item" href="#aioseo-2-stopping-comment-spam-58">3. Power-User Tips for Stopping WordPress Comment Spam</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-3-stopping-contact-and-lead-form-spam-137">4. Stopping WordPress Contact Form Spam (Best Practices)</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-4-stopping-spam-user-registrations-246">5. Stopping Spam User Registrations in WordPress (Best Practices)</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-5-site-wide-spam-defenses-the-side-doors-285">6. Add a Site-Wide WordPress Firewall</a></li><li><a class="aioseo-toc-item" href="#aioseo-7-cleanup-and-ongoing-monitoring-334">7. Cleanup WordPress Spam and Ongoing Monitoring</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-frequently-asked-questions-376">Frequently Asked Questions About WordPress Spam Protection</a></li></ul></div>


<h4 id="aioseo-1-free-built-in-settings-to-turn-on-first-7" class="wp-block-heading">1. Free Built-In Settings to Turn On First</h4>



<p class="wp-block-paragraph">WordPress comes with several anti-spam options that can protect your site against spam. These built-in options won&#8217;t stop every bot, but they will remove the easiest targets right away.</p>



<p class="wp-block-paragraph">We always recommend turning these settings on first, because they cost nothing and take only a few minutes to set up. </p>



<h5 id="aioseo-tighten-your-wordpress-discussion-settings-10" class="wp-block-heading">Tighten Your WordPress Discussion Settings</h5>



<p class="wp-block-paragraph">To prevent comment spam, the built-in discussion settings in WordPress act as your first line of defense. They allow you to control who can post, what kind of links are permitted, and how much control you have over the conversation.</p>



<p class="wp-block-paragraph">To configure these anti-spam controls, go to <strong>Settings » Discussion</strong> in your WordPress dashboard. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="317" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wordpress-settings-discussion-.png" alt="Protecting the WordPress comment section against spammers " class="wp-image-408631" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wordpress-settings-discussion-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wordpress-settings-discussion--300x140.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">The most useful tool on this screen is the comment moderation queue. This tool acts as a holding area that keeps submissions hidden from the public until you have a chance to look them over.</p>



<p class="wp-block-paragraph">Because nothing goes live automatically, spam never reaches your visitors, even if it manages to get past your other filters.</p>



<p class="wp-block-paragraph">To turn this on, scroll down to the &#8216;Before a comment appears&#8217; section and check the box next to &#8216;Comment must be manually approved.&#8217;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="261" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/comment-manually-approved.png" alt="How to require manual approval for WordPress comments " class="wp-image-408633" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/comment-manually-approved.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/comment-manually-approved-300x115.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">If you want, you can also enable &#8216;Comment author must have a previously approved comment.&#8217; This lets returning commenters post without waiting for approval. However, be sure to review your published comments regularly since they won&#8217;t appear in your moderation queue.</p>



<p class="wp-block-paragraph">After that, scroll to the &#8216;Comment Moderation&#8217; box, where you&#8217;ll find a setting that limits links. Because spam comments almost always contain web addresses, WordPress can automatically hold any submission that includes too many links. </p>



<p class="wp-block-paragraph">The field labeled &#8216;Hold a comment in the queue if it contains [X] or more links&#8217; is set to 2 by default. Lowering that number to 1 will help you catch even more junk.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="278" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/hold-comment-queue.png" alt="Adding comments to an approval queue in WordPress " class="wp-image-408634" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/hold-comment-queue.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/hold-comment-queue-300x123.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">On the same screen, you can use the comment blocklist to automatically filter out unwanted content. This tool looks for specific words, names, email addresses, or web addresses and sends any matching comment straight to the trash. </p>



<p class="wp-block-paragraph">In the &#8216;Disallowed Comment Keys&#8217; box, you can paste your own trigger words, putting one on each line, and then save your changes. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="191" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/disallowed-comment-keys.png" alt="Filtering your WordPress comments " class="wp-image-408635" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/disallowed-comment-keys.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/disallowed-comment-keys-300x84.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-require-a-name-and-email-and-hold-first-time-commenters-25" class="wp-block-heading">Require a Name and Email, and Hold First-Time Commenters</h5>



<p class="wp-block-paragraph">Healthy discussions start with real people. Requiring commenters to enter a name and email encourages more thoughtful conversations and discourages anonymous drive-by comments.</p>



<p class="wp-block-paragraph">Most genuine visitors won&#8217;t mind providing these details, and it helps create a more welcoming and trustworthy community around your website.</p>



<p class="wp-block-paragraph">To enable this, scroll to the &#8216;Other comment settings&#8217; section and check the box next to &#8216;Comment author must fill out name and email.&#8217;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="277" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/banning-anonymous-comments-.png" alt="How to block anonymous comments on your WordPress website " class="wp-image-408636" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/banning-anonymous-comments-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/banning-anonymous-comments--300x122.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">If you want to master the review process and manage your queue efficiently, our <a href="https://www.wpbeginner.com/beginners-guide/beginners-guide-on-how-to-moderate-comments-in-wordpress/" title="Beginner’s Guide on How to Moderate Comments in WordPress">beginner&#8217;s guide to moderating comments in WordPress</a> covers the full workflow.</p>



<h5 id="aioseo-disable-comments-where-you-do-not-need-them-35" class="wp-block-heading">Disable Comments Where You Do Not Need Them</h5>



<p class="wp-block-paragraph">Depending on the type of website you have, you may not need a comment section at all. If that&#8217;s the case, then you can simply disable comments entirely and that&#8217;ll get rid of the WordPress comment spam problem once and for all.</p>



<p class="wp-block-paragraph">The most thorough option is the code method, which disables comment support across your entire site at once. It&#8217;s safest to add the snippet with a free code snippets plugin like <a href="https://wordpress.org/plugins/insert-headers-and-footers" target="_blank" title="WPCode Free Code Snippet Plugin for WordPress">WPCode</a> rather than editing your theme&#8217;s files directly, so a theme update can&#8217;t undo it.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: php; title: ; notranslate">
add_action('admin_init', function () {
    // Redirect any user trying to access comments page
    global $pagenow;
    
    if ($pagenow === 'edit-comments.php') {
        wp_safe_redirect(admin_url());
        exit;
    }

    // Remove comments metabox from dashboard
    remove_meta_box('dashboard_recent_comments', 'dashboard', 'normal');

    // Disable support for comments and trackbacks in post types
    foreach (get_post_types() as $post_type) {
        if (post_type_supports($post_type, 'comments')) {
            remove_post_type_support($post_type, 'comments');
            remove_post_type_support($post_type, 'trackbacks');
        }
    }
});

// Close comments on the front-end
add_filter('comments_open', '__return_false', 20, 2);
add_filter('pings_open', '__return_false', 20, 2);

// Hide existing comments
add_filter('comments_array', '__return_empty_array', 10, 2);

// Remove comments page in menu
add_action('admin_menu', function () {
    remove_menu_page('edit-comments.php');
});

// Remove comments links from admin bar
add_action('init', function () {
    if (is_admin_bar_showing()) {
        remove_action('admin_bar_menu', 'wp_admin_bar_comments_menu', 60);
    }
});
</pre><div class="wpcode-syntax-footer">
		<div class="wpcode-syntax-code-footer-left">Hosted with ❤️ by <strong><a href="https://wpcode.com" target="_blank">WPCode</a></strong></div>
		<div class="wpcode-syntax-code-footer-right">
			<svg width="65" height="16" viewBox="0 0 65 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M38.0415 7.99972C38.0415 6.44437 38.4062 5.38018 39.128 4.59879C39.8499 3.80995 40.8769 3.42297 42.1941 3.42297C42.8117 3.42297 43.4071 3.54949 43.9206 3.80251C44.4564 4.05553 44.8582 4.39786 45.1782 4.82204C45.2452 4.9039 45.2601 4.99321 45.2601 5.09739C45.2601 5.2239 45.2155 5.31321 45.1336 5.39507C45.0517 5.47693 44.9624 5.52158 44.8359 5.52158C44.6871 5.52158 44.5829 5.4546 44.4936 5.35042C44.2555 5.03042 43.9429 4.75507 43.5113 4.53925C43.1094 4.32344 42.6555 4.21925 42.1643 4.21925C41.1224 4.21925 40.3336 4.53925 39.7755 5.17925C39.2248 5.81925 38.942 6.68995 38.942 7.96995C38.942 9.30948 39.2173 10.2025 39.7531 10.7979C40.2889 11.3932 41.0927 11.7132 42.1643 11.7132C42.6331 11.7132 43.0573 11.6313 43.4889 11.4379C43.8908 11.2444 44.2331 10.9913 44.4936 10.6267C44.5755 10.5225 44.6871 10.4555 44.8359 10.4555C44.9624 10.4555 45.0517 10.5002 45.1336 10.582C45.2155 10.6639 45.2601 10.7755 45.2601 10.8797C45.2601 10.9616 45.2378 11.0509 45.1782 11.1327C44.8806 11.5569 44.4713 11.8993 43.9206 12.1523C43.3699 12.4053 42.7894 12.5318 42.1717 12.5318C40.8322 12.5318 39.8052 12.1523 39.0982 11.4006C38.3987 10.6788 38.0415 9.59228 38.0415 7.99972Z" fill="#1F2937"></path><path d="M46.9268 11.7654C46.4356 11.237 46.1826 10.4258 46.1826 9.36164C46.1826 8.29745 46.4208 7.50862 46.9045 6.98024C47.3956 6.45187 48.0803 6.19141 48.9733 6.19141C49.8663 6.19141 50.551 6.44443 51.0422 6.98024C51.5333 7.50862 51.764 8.29745 51.764 9.36164C51.764 10.4258 51.5259 11.237 51.0422 11.7654C50.551 12.2937 49.8663 12.5765 48.9733 12.5765C48.1026 12.5765 47.418 12.3012 46.9268 11.7654ZM47.0608 9.36164C47.0608 10.9765 47.7008 11.7877 48.9808 11.7877C50.2608 11.7877 50.9008 10.9765 50.9008 9.36164C50.9008 7.74676 50.2608 6.93559 48.9808 6.93559C47.6933 6.93559 47.0608 7.76908 47.0608 9.36164Z" fill="#1F2937"></path><path d="M52.583 9.3839C52.583 7.25553 53.476 6.31786 55.2472 6.31786C55.6491 6.31786 56.0137 6.39972 56.3337 6.57088C56.6537 6.74204 56.9067 6.93553 57.0556 7.18855V3.84716C57.0556 3.72065 57.1002 3.63135 57.1821 3.54949C57.2639 3.46762 57.3532 3.42297 57.4798 3.42297C57.6063 3.42297 57.6956 3.46762 57.7774 3.54949C57.8593 3.63135 57.9039 3.72065 57.9039 3.84716V9.95693C57.9039 10.8053 57.6658 11.4453 57.1821 11.8918C56.7132 12.3383 56.0732 12.569 55.2844 12.569C54.4137 12.569 53.7291 12.2937 53.2602 11.7579C52.8137 11.2369 52.583 10.4481 52.583 9.3839ZM53.4314 9.3839C53.4314 10.9988 54.0491 11.81 55.3067 11.81C55.8425 11.81 56.2667 11.6611 56.5867 11.3411C56.9067 11.0211 57.0556 10.5746 57.0556 9.95693V8.25274C57.0332 8.23042 57.0109 8.18576 56.9886 8.12623C56.9663 8.05925 56.9067 7.97739 56.7951 7.85088C56.6909 7.72437 56.5793 7.59786 56.4528 7.48623C56.3263 7.38204 56.1551 7.29274 55.9616 7.21088C55.7458 7.12902 55.5374 7.08437 55.2993 7.08437C54.6816 7.08437 54.2351 7.27786 53.8928 7.67972C53.5802 8.08158 53.4314 8.57274 53.4314 9.3839Z" fill="#1F2937"></path><path d="M58.9312 9.36193C58.9312 8.3424 59.1693 7.55356 59.653 7.00286C60.1367 6.45216 60.8065 6.16937 61.6772 6.16937C62.0195 6.16937 62.3395 6.21402 62.5925 6.29588C62.8679 6.37774 63.106 6.48937 63.2772 6.63821C63.4484 6.78705 63.6195 6.93588 63.746 7.12937C63.8725 7.30054 63.9842 7.49402 64.0437 7.7024C64.1107 7.91821 64.1479 8.08193 64.1925 8.25309C64.2372 8.42426 64.2372 8.59542 64.2372 8.76658C64.2372 8.89309 64.2372 8.99728 64.2372 9.06426C64.2372 9.13123 64.2149 9.21309 64.1702 9.31728C64.1479 9.42147 64.0884 9.48844 63.9991 9.53309C63.9172 9.57774 63.8279 9.60007 63.7014 9.60007H59.8316C59.8316 10.2624 60.0028 10.7908 60.3674 11.1777C60.7321 11.5573 61.2232 11.7731 61.8409 11.7731C62.1832 11.7731 62.4809 11.7284 62.7116 11.6243C62.9498 11.5201 63.2028 11.3936 63.4335 11.2001C63.5153 11.1331 63.6046 11.1182 63.6716 11.1182C63.7758 11.1182 63.8651 11.1629 63.947 11.2224C64.0139 11.3043 64.0512 11.3936 64.0512 11.4977C64.0512 11.6019 64.0065 11.7136 63.9023 11.7954C63.8205 11.8773 63.6865 11.9889 63.5377 12.0931C63.3888 12.1973 63.1507 12.2866 62.8307 12.3908C62.5107 12.495 62.1684 12.5396 61.8037 12.5396C60.8884 12.5396 60.1814 12.2866 59.6902 11.7508C59.1916 11.2522 58.9312 10.4484 58.9312 9.36193ZM59.8093 8.87077H63.3888C63.3888 8.61774 63.3665 8.37961 63.307 8.17123C63.2623 7.95542 63.1805 7.76937 63.0539 7.57588C62.9274 7.3824 62.7563 7.23356 62.5181 7.12937C62.28 7.02519 62.0046 6.95821 61.6846 6.95821C61.1116 6.95821 60.68 7.12937 60.3377 7.4717C60.0251 7.80658 59.8316 8.27542 59.8093 8.87077Z" fill="#1F2937"></path><path d="M19.229 4.18977C19.229 3.97395 19.3109 3.78791 19.4671 3.63907C19.616 3.49023 19.8095 3.40837 20.0253 3.40837C20.2188 3.40837 20.3899 3.47535 20.5164 3.57954C20.643 3.68372 20.7323 3.81023 20.7695 3.94419L22.3248 9.51814L23.8355 3.96651C23.8802 3.79535 23.962 3.66884 24.1109 3.56465C24.2597 3.46047 24.4085 3.41581 24.5574 3.41581C24.7285 3.41581 24.8774 3.46047 25.0039 3.56465C25.1304 3.66884 25.242 3.79535 25.2792 3.96651L26.7899 9.51814L28.3453 3.92186C28.3899 3.79535 28.4718 3.66884 28.5983 3.55721C28.7248 3.45302 28.8737 3.38605 29.0895 3.38605C29.3053 3.38605 29.4764 3.45302 29.6253 3.60186C29.7741 3.7507 29.8411 3.92186 29.8411 4.13023C29.8411 4.21209 29.8188 4.3014 29.7964 4.36093L27.5118 11.9591C27.4671 12.1079 27.3853 12.2567 27.2364 12.3386C27.1099 12.4428 26.9611 12.4874 26.7899 12.4874C26.6188 12.4874 26.4699 12.4428 26.3434 12.3386C26.2169 12.2344 26.1276 12.1079 26.0904 11.9367L24.5574 6.4893L23.0244 11.9963C22.9797 12.1674 22.8755 12.294 22.749 12.3981C22.6225 12.5023 22.4513 12.547 22.2802 12.547C22.109 12.547 21.9602 12.5023 21.8337 12.3981C21.7071 12.294 21.5955 12.1674 21.5583 12.0186L19.2737 4.42791C19.2513 4.36093 19.229 4.27907 19.229 4.18977Z" fill="#1F2937"></path><path d="M30.9351 11.8101V4.18967C30.9351 3.97386 31.0169 3.81014 31.1509 3.6613C31.2997 3.51246 31.4932 3.4306 31.709 3.4306H34.2467C35.0802 3.4306 35.7425 3.6613 36.2485 4.13014C36.762 4.59898 37.0374 5.27618 37.0374 6.15432C37.0374 7.04735 36.7844 7.70967 36.2709 8.17851C35.7574 8.64735 35.0802 8.87805 34.269 8.87805H32.4978V11.8176C32.4978 12.0334 32.4309 12.2194 32.282 12.3683C32.1332 12.5171 31.962 12.5841 31.7239 12.5841C31.4858 12.5841 31.322 12.5022 31.1732 12.3534C31.002 12.1897 30.9351 12.0185 30.9351 11.8101ZM32.4755 7.48642H34.1202C34.5444 7.48642 34.8644 7.35991 35.1025 7.12177C35.3406 6.89107 35.4448 6.54874 35.4448 6.12456C35.4448 5.70037 35.3406 5.35805 35.1025 5.12735C34.8644 4.89665 34.5444 4.78502 34.1425 4.78502H32.4978V7.48642H32.4755V7.48642Z" fill="#1F2937"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M14.3916 15.9999H1.64367C0.720884 15.9999 -0.000976562 15.278 -0.000976562 14.3627V1.63709C-0.000976562 0.721738 0.720884 -0.00012207 1.64367 -0.00012207H14.3916C15.3069 -0.00012207 16.0362 0.721738 16.0362 1.63709V14.3627C16.0362 15.278 15.3069 15.9999 14.3916 15.9999ZM3.96553 13.0231C3.88367 13.0231 3.77205 13.0008 3.69019 12.9785C3.30321 12.8296 3.11716 12.4055 3.266 12.0185L6.61484 3.44546C6.76367 3.06592 7.18786 2.87244 7.57484 3.02127C7.96181 3.17011 8.14786 3.5943 7.99902 3.98127L4.66507 12.5543C4.56088 12.852 4.26321 13.0231 3.96553 13.0231ZM8.76554 11.9366C8.91437 12.0855 9.10786 12.1524 9.30135 12.1524C9.49484 12.1524 9.68833 12.0855 9.83716 11.9366L12.4567 9.33941C12.9255 8.87058 12.9255 8.08174 12.4567 7.6129L9.83716 4.99337C9.56181 4.69569 9.09298 4.69569 8.7953 4.99337C8.49763 5.26872 8.49763 5.73755 8.7953 6.03523L11.2065 8.46127L8.77298 10.8873C8.46042 11.1701 8.46042 11.6389 8.76554 11.9366Z" fill="#1F2937"></path></svg>
			<a href="https://library.wpcode.com/use-snippet/" target="_blank">1-click Use in WordPress</a>
		</div>
		</div></div>


<p class="wp-block-paragraph">Our guide on <a href="https://www.wpbeginner.com/wp-tutorials/how-to-completely-disable-comments-in-wordpress/" title="How to Completely Disable Comments in WordPress">how to completely disable comments in WordPress</a> walks through that snippet along with the other options.</p>



<p class="wp-block-paragraph">If you&#8217;d rather not go site-wide, you can also turn comments off on individual pages. This is handy when you only want them gone on specific pages, like your Contact or About pages, which rarely need a comment section.</p>



<p class="wp-block-paragraph">To do this, open the page in the WordPress content editor. Then click the &#8216;Discussion&#8217; option in the right-hand sidebar and select &#8216;Closed.&#8217;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="342" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/disabling-discussion-pages.png" alt="How to disable comments on your WordPress pages " class="wp-image-408649" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/disabling-discussion-pages.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/disabling-discussion-pages-300x150.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">You can also stop spam from piling up on older content without touching your newer posts. If you don&#8217;t expect comments on old posts, then WordPress can close them automatically after a set number of days.</p>



<p class="wp-block-paragraph">This gives spam bots fewer chances to target your archived content.</p>



<p class="wp-block-paragraph">To set this up, head to <strong>Settings » Discussion</strong> and find the &#8216;Other comment settings&#8217; section. Check the box next to &#8216;Automatically close comments on posts older than [X] days&#8217;, then set a sensible limit such as 30 or 90 days.</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://www.wpbeginner.com/wp-content/uploads/2019/06/spamtipsdisablecommentsonoldposts.png" alt="Automatically closing comments on older WordPress posts"/></figure>



<h5 id="aioseo-disable-trackbacks-and-pingbacks-53" class="wp-block-heading">Disable Trackbacks and Pingbacks</h5>



<p class="wp-block-paragraph">Trackbacks and pingbacks notify you when another website claims to have linked to one of your blog posts.</p>



<p class="wp-block-paragraph">While they were originally designed to help bloggers connect conversations across different websites, they&#8217;re now commonly abused by spammers to send fake link notifications.</p>



<p class="wp-block-paragraph">Turning this feature off completely removes a whole category of junk notifications from your dashboard.</p>



<p class="wp-block-paragraph">To disable these notifications, go to the <strong>Settings » Discussion</strong> screen in your WordPress dashboard. Here, uncheck the box next to &#8216;Allow link notifications from other blogs (pingbacks and trackbacks) on new posts.&#8217;</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://www.wpbeginner.com/wp-content/uploads/2019/06/spamtipsdisabletrackbacks.png" alt="Disabling pingbacks and trackbacks in WordPress Discussion settings"/><figcaption class="wp-element-caption"><br>With that done, don&#8217;t forget to click &#8216;Save Changes&#8217; at the bottom of the screen.<br><br>Just be aware that changing this option only protects the posts you publish from this moment forward. If you want to clean up the content you&#8217;ve already published in the past, you can follow our step-by-step guide on <a href="https://www.wpbeginner.com/wp-tutorials/how-to-disable-trackbacks-and-pings-on-existing-wordpress-posts/" title="how to disable trackbacks and pings on existing WordPress posts">how to disable trackbacks and pings on existing WordPress posts</a>.</figcaption></figure>



<h4 id="aioseo-set-up-modern-spam-bot-protection" class="wp-block-heading">2. Set Up Modern AI-Powered Spam Bot Protection for WordPress</h4>



<p class="wp-block-paragraph">In the era of AI where automated spam is increasing, the best defense against it is a modern AI-powered spam protection for WordPress.</p>



<p class="wp-block-paragraph">These spam filtering solutions automatically detect and block spam on your WordPress comments, contact forms, and user registrations without the use of CAPTCHA which can hurt conversions.</p>



<p class="wp-block-paragraph">On WPBeginner, we use <a href="https://wordpress.org/plugins/activelayer-anti-spam-spam-protection-for-forms-comments" target="_blank" title="ActiveLayer - Free AI Spam Protection Plugin for WordPress Forms and Comments">ActiveLayer</a> for this. It is AI-powered and runs server-side, so it stops spam invisibly, without a CAPTCHA and it&#8217;s <a href="https://www.wpbeginner.com/beginners-guide/the-ultimate-guide-to-wordpress-and-gdpr-compliance-everything-you-need-to-know/" title="The Ultimate Guide to WordPress and GDPR Compliance">GDPR</a> compliant.</p>



<p class="wp-block-paragraph">In the last 30 days, it has blocked over 25,739 spam comments and contact form submissions on our website. It even shows you a confidence score, and the reason behind every submission it flags, not just a pass-or-fail verdict when you look at their logs.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="467" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/activelayer-stats-wpbeginner.png" alt="ActiveLayer Spam Stats Screenshot for WPBeginner" class="wp-image-409997" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/activelayer-stats-wpbeginner.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/activelayer-stats-wpbeginner-300x206.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">The free plan includes 1,000 spam checks with no credit card, and paid plans start at around $4 per month billed yearly.</p>



<p class="wp-block-paragraph">The two other popular spam filtering plugins for WordPress you could try are <a href="https://wordpress.org/plugins/akismet/" target="_blank" rel="noopener nofollow" title="The Akismet anti-spam plugin">Akismet</a> or <a href="https://wordpress.org/plugins/cleantalk-spam-protect/" target="_blank" rel="noopener nofollow" title="The CleanTalk anti-spam solution">CleanTalk</a>.</p>



<p class="wp-block-paragraph">Akismet is very popular and still is a good fit for personal blogs, where its &#8220;name your price&#8221; plan can be free for non-commercial sites. But they have raised their prices significantly for commercial sites which is quite expensive for smaller businesses. For a business site, we would point you to either ActiveLayer or CleanTalk. </p>



<p class="wp-block-paragraph">Whichever tool you choose, stick to just one, because running two spam filters at once can conflict and block real visitors. The benefit of these spam protection plugins are that they integrate with all other popular contact form plugins by default. </p>



<h4 id="aioseo-2-stopping-comment-spam-58" class="wp-block-heading">3. Power-User Tips for Stopping WordPress Comment Spam</h4>



<p class="wp-block-paragraph">So far we&#8217;ve configured the built-in spam prevention settings in WordPress, and an automated spam filtering plugin for WordPress. The combination of these two should block most spam. </p>



<p class="wp-block-paragraph">However if you are not able to set up modern AI spam protection due to costs or another reason, then you can use one of these tips below to combat comment spam in WordPress.</p>



<h5 id="aioseo-add-a-free-captcha-to-your-comment-form-84" class="wp-block-heading">Add a Free CAPTCHA to Your Comment Form</h5>



<p class="wp-block-paragraph">CAPTCHA is a simple test that most human visitors pass without any effort, while automated scripts fail it. We recommend adding Cloudflare Turnstile CAPTCHA to your WordPress comments because it&#8217;s free and fairly straight forward to set up.</p>



<p class="wp-block-paragraph">To set it up, install and activate the free <a href="https://wordpress.org/plugins/simple-cloudflare-turnstile/" target="_blank" rel="noopener nofollow" title="The Simple CAPTCHA with Cloudflare Turnstile WordPress plugin ">Simple Cloudflare Turnstile</a> plugin. You will be asked to create a free account on Cloudflare&#8217;s website and connect it with the plugin.</p>



<p class="wp-block-paragraph">Once that&#8217;s done, you can scroll to the &#8216;Enable Turnstile on your forms&#8217; section. Simply check the boxes to protect all your WordPress forms and click &#8216;Save Changes&#8217;.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="353" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/simple-cloudflare-turnstile-.png" alt="How to protect your site against spammers and spambots using the free Simple Cloudflare Turnstile plugin" class="wp-image-408655" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/simple-cloudflare-turnstile-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/simple-cloudflare-turnstile--300x156.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Here&#8217;s our detailed guide on <a href="https://www.wpbeginner.com/plugins/how-to-add-cloudflare-turnstile-captcha-in-wordpress/" title="how to add Cloudflare Turnstile CAPTCHA in WordPress">how to add Cloudflare Turnstile CAPTCHA in WordPress</a>.</p>



<p class="wp-block-paragraph">Google reCAPTCHA is another option, which you can add with the <a href="https://wordpress.org/plugins/advanced-google-recaptcha/" target="_blank" rel="noopener nofollow" title="The Advanced Google reCAPTCHA WordPress plugin ">Advanced Google reCAPTCHA</a> plugin. We no longer recommend it because Google has capped their free tier at 10,000 assessments per month for your entire organization whereas Cloudflare Turnstile stay free without limits.</p>



<h5 id="aioseo-limit-or-require-login-to-comment-111" class="wp-block-heading">Limit or Require Login to Comment</h5>



<p class="wp-block-paragraph">Another really effective way to stop comment spam in WordPress is to control who&#8217;s allowed to participate in comments.</p>



<p class="wp-block-paragraph">If your comment section is open to everyone, then spammers can continuously flood your forms with automated links. Restricting comments to registered account holders ensures that only verified users can post. This forces a level of accountability that most bots will not bother trying to bypass.</p>



<p class="wp-block-paragraph">Because it requires readers to go through the extra step of creating and logging into an account, this approach is best suited for <a href="https://www.wpbeginner.com/wp-tutorials/ultimate-guide-to-creating-a-wordpress-membership-site/" title="Ultimate Guide to Creating a WordPress Membership Site">membership sites</a>, online forums, and private communities.</p>



<p class="wp-block-paragraph">If you run an open, public blog, then we&#8217;d recommend using an automated filtering service or a reader challenge instead as those add less friction.</p>



<p class="wp-block-paragraph">If you do decide to turn this restriction on, go to <strong>Settings » Discussion</strong> in your WordPress dashboard. Under the &#8216;Other comment settings&#8217; section, check the box next to &#8216;Users must be registered and logged in to comment.&#8217;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="256" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/comments-registered-users-.png" alt="Requiring user registration before allowing comments " class="wp-image-408656" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/comments-registered-users-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/comments-registered-users--300x113.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">As always, don&#8217;t forget to save your changes. </p>



<h5 id="aioseo-use-antispam-bee-for-free-keyword-and-pattern-filtering-120" class="wp-block-heading">Use Antispam Bee for Free Keyword and Pattern Filtering</h5>



<p class="wp-block-paragraph">Some spam slips through basic checks by mimicking human writing. This is where a dedicated filtering plugin can help protect your site. </p>



<p class="wp-block-paragraph"><a href="https://wordpress.org/plugins/antispam-bee/" target="_blank" rel="noopener nofollow" title="The Antispam Bee WordPress anti-spam plugin ">Antispam Bee</a> is an excellent free, privacy-friendly anti-spam plugin that doesn&#8217;t require an API key or account registration. Installing Antispam Bee gives you a powerful set of local rules to analyze comment data before it even hits your database.</p>



<p class="wp-block-paragraph">Once it&#8217;s activated, you can configure your rules by going to <strong>Settings » Antispam Bee</strong>.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="331" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/antispam-bee-settings.png" alt="Protecting your site against automated spam scripts using WordPress plugins " class="wp-image-408657" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/antispam-bee-settings.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/antispam-bee-settings-300x146.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">We recommend enabling the options to:</p>



<ul class="wp-block-list">
<li>Trust approved commenters.</li>



<li>Mark as spam.</li>



<li>Do not delete.</li>



<li>Use regular expressions (which allows the plugin to scan for known text and link patterns).</li>
</ul>



<p class="wp-block-paragraph">You should also check the box to &#8216;Look in the local spam database.&#8217; This allows Antispam Bee to cross-reference new submissions against previous spam history on your site. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="328" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/local-spam-database.png" alt="Look in your local spam database " class="wp-image-408658" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/local-spam-database.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/local-spam-database-300x145.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Under &#8216;Advanced,&#8217; you can set Antispam Bee to delete existing spam after a set number of days, which keeps your database tidy without any manual effort. </p>



<p class="wp-block-paragraph">We highly recommend leaving the email notifications for spam turned off in this section. A busy website can attract hundreds of automated submissions a day, and these alerts will quickly flood your inbox.</p>



<p class="wp-block-paragraph">If you want to try one more free tweak, then you can <strong>remove the website address field</strong> from the comment form. </p>



<p class="wp-block-paragraph">Our step-by-step guide on <a href="https://www.wpbeginner.com/plugins/how-to-remove-website-url-field-from-wordpress-comment-form/" title="How to Remove Website URL Field From WordPress Comment Form">how to remove the website URL field from the comment form</a> shows you how to do this in just a few quick steps.</p>



<h4 id="aioseo-3-stopping-contact-and-lead-form-spam-137" class="wp-block-heading">4. Stopping WordPress Contact Form Spam (Best Practices)</h4>



<p class="wp-block-paragraph">Contact and lead forms are among the most attacked parts of any WordPress site. We know this firsthand because we once had to combat more than 18,000 spam entries flooding a single form.</p>



<p class="wp-block-paragraph">We use <a href="https://wpforms.com/" target="_blank" rel="noopener" title="The WPForms form builder plugin for WordPress">WPForms</a> to build forms on WPBeginner, and it&#8217;s a popular form builder plugin used by over 5 million websites. Their <a href="https://wordpress.org/plugins/wpforms-lite" target="_blank" title="Free version of WPForms Contact Form builder plugin">free version</a> includes smart anti-spam protection, CAPTCHA integrations with Google / Cloudflare Turnstile, and the paid plans add the filtering options we cover below.</p>



<p class="wp-block-paragraph">Other popular form builders like Gravity Forms and Fluent Forms have similar anti-spam settings, so check the options in whichever form builder plugin you use. We will show WPForms here because it&#8217;s what we use and consider the best fit for beginners.</p>



<h5 id="aioseo-turn-on-the-built-in-anti-spam-token-144" class="wp-block-heading">Enable Default Anti-Spam Token (or Similar HoneyPot)</h5>



<p class="wp-block-paragraph">To combat lead form spam, WPForms silently attaches a unique, time-sensitive token to your form on every page load. The anti-spam token blocks automated scripts, which means spam entries are blocked before they reach your inbox.</p>



<p class="wp-block-paragraph">It&#8217;s turned on by default for new forms, but it&#8217;s worth confirming.</p>



<p class="wp-block-paragraph">Open your form, go to <strong>Settings » Spam Protection and Security</strong>, and make sure &#8216;Enable modern anti-spam protection&#8217; is switched on.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="304" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpforms-spam-protection-.png" alt="An example of a form builder with built-in anti-spam protection " class="wp-image-408659" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpforms-spam-protection-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpforms-spam-protection--300x134.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">This is a modern version of the Honeypot technology which <a href="https://www.wpbeginner.com/plugins/5-best-contact-form-plugins-for-wordpress-compared/" title="7 Best Contact Form Plugins for WordPress (Free &amp; Paid)">most WordPress form plugins</a> come with, so it may be labeled as Honeypot in another form tool that you might be using.</p>



<h5 id="aioseo-enable-a-captcha-on-your-contact-form-154" class="wp-block-heading">Enable a CAPTCHA on Your Contact Form</h5>



<p class="wp-block-paragraph">More aggressive bots mimic human browsing and slip past the invisible token. Adding a visible CAPTCHA field stops them by forcing a challenge they can&#8217;t read or solve.</p>



<p class="wp-block-paragraph">WPForms has both Cloudflare Turnstile and Google reCAPTCHA built in, and we default to Turnstile here. It&#8217;s free for everyone and runs its checks in the background, so most real visitors pass without solving a puzzle.</p>



<p class="wp-block-paragraph">To set it up, go to <strong>WPForms » Settings » CAPTCHA</strong> and choose &#8216;Cloudflare Turnstile&#8217;.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="370" src="https://www.wpbeginner.com/wp-content/uploads/2022/12/adding-turnstile-wordpress.png" alt="Adding Cloudflare Turnstile CAPTCHA to a WordPress website" class="wp-image-172627" srcset="https://www.wpbeginner.com/wp-content/uploads/2022/12/adding-turnstile-wordpress.png 680w, https://www.wpbeginner.com/wp-content/uploads/2022/12/adding-turnstile-wordpress-300x163.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Then add the Site Key and Secret Key from <a href="https://dash.cloudflare.com/login" target="_blank" rel="noopener nofollow" title="your Cloudflare account">your Cloudflare account</a>, and save your settings. </p>



<p class="wp-block-paragraph">Finally, add the CAPTCHA field to each form you want to protect. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="323" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/add-turnstile-field.jpg" alt="Add Turnstile field to WPForms" class="wp-image-409804" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/add-turnstile-field.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/add-turnstile-field-300x143.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">For a full walkthrough, see our guide on <a href="https://www.wpbeginner.com/plugins/how-to-add-cloudflare-turnstile-captcha-in-wordpress/" title="how to add Cloudflare Turnstile CAPTCHA in WordPress">how to add Cloudflare Turnstile CAPTCHA in WordPress</a>.</p>



<p class="wp-block-paragraph">Google reCAPTCHA is also selectable on that same <strong>WPForms » Settings » CAPTCHA</strong> screen. We default to Turnstile because it&#8217;s free without limits, but reCAPTCHA still works if you prefer it.</p>



<p class="wp-block-paragraph">If you&#8217;d rather not send visitor data to Google or Cloudflare, then WPForms&#8217; Custom Captcha field (available on any paid plan) builds the challenge on your own server instead.</p>



<p class="wp-block-paragraph">Add the field, then set it to a random math problem or your own question and answer.</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://www.wpbeginner.com/wp-content/uploads/2020/04/question-and-answer-captcha-1-1.png" alt="Setting a question and answer custom CAPTCHA in WPForms"/></figure>



<h5 id="aioseo-use-time-based-and-behavioral-checks-186" class="wp-block-heading">Use Time-Based Behavioral Checks to Stop Contact Form Spam</h5>



<p class="wp-block-paragraph">A real person needs several seconds to read a question and fill out a form, while a bot submits in a fraction of a second. Time-based checks flag those impossibly fast submissions without changing anything the visitor sees.</p>



<p class="wp-block-paragraph">With WPForms, the ‘Enable minimum time to submit’ option is enabled by default with a minimum time to submit of 2 seconds. However, you can update the minimum time to any value you like.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="679" height="503" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/minimum-time-to-submit.png" alt="The WPForms minimum time to submit anti-spam setting" class="wp-image-409408" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/minimum-time-to-submit.png 679w, https://www.wpbeginner.com/wp-content/uploads/2026/07/minimum-time-to-submit-300x222.png 300w" sizes="(max-width: 679px) 100vw, 679px" /></figure>



<h5 id="aioseo-filter-entries-before-they-reach-your-inbox-192" class="wp-block-heading">Block Form Submission by Country, IP, Email Address, and More</h5>



<p class="wp-block-paragraph">Some spam form submissions still gets through unless you screen the content itself. In the Pro version, WPForms lets you block entries by specific email address, by keyword, and by country or IP address.</p>



<p class="wp-block-paragraph">To block a sender, open your form, select the Email field, open the Advanced tab, choose Denylist, and enter the addresses or domains to ban. A wildcard like <code>*@example.com</code> blocks an entire domain.</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://www.wpbeginner.com/wp-content/uploads/2020/04/advanced-email-filtering-in-wpforms-1-1.png" alt="Advanced email allowlist and denylist filtering in WPForms"/></figure>



<p class="wp-block-paragraph">To block spammy phrases, go to <strong>Settings » Spam Protection and Security</strong>.</p>



<p class="wp-block-paragraph">Turn on &#8216;Enable keyword filter&#8217;, open &#8216;Edit keyword list&#8217;, and add each term on its own line.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="370" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/keyword-filter-wpforms-.png" alt="Creating a list of banned words for your online forms" class="wp-image-408669" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/keyword-filter-wpforms-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/keyword-filter-wpforms--300x163.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">And if you only serve certain regions, turn on &#8216;Enable country filter&#8217; on the same screen to allow or deny locations. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="295" src="https://www.wpbeginner.com/wp-content/uploads/2012/01/wpforms-settings-filter.png" alt="Country filter in WPForms" class="wp-image-295106" srcset="https://www.wpbeginner.com/wp-content/uploads/2012/01/wpforms-settings-filter.png 680w, https://www.wpbeginner.com/wp-content/uploads/2012/01/wpforms-settings-filter-300x130.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Alternatively if your WordPress form solution doesn&#8217;t have this option, you can also <a href="https://www.wpbeginner.com/wp-tutorials/how-to-block-ip-addresses-in-wordpress/" title="How to Block IP Addresses in WordPress">block IP addresses in WordPress</a>.</p>



<h4 id="aioseo-4-stopping-spam-user-registrations-246" class="wp-block-heading">5. Stopping Spam User Registrations in WordPress (Best Practices)</h4>



<p class="wp-block-paragraph">On a <a href="https://www.wpbeginner.com/wp-tutorials/ultimate-guide-to-creating-a-wordpress-membership-site/" title="Ultimate Guide to Creating a WordPress Membership Site">membership site</a> or WooCommerce store, spam registrations are more than a nuisance. Fake accounts clog your user database and skew your customer and email metrics.</p>



<p class="wp-block-paragraph">Here&#8217;s what you can do to prevent spam user registrations in WordPress.</p>



<h5 id="aioseo-turn-registration-off-when-you-do-not-need-it-250" class="wp-block-heading">Turn Registration Off When You Do Not Need It</h5>



<p class="wp-block-paragraph">If you&#8217;re not running a membership site or an eCommerce store, then you likely don&#8217;t need to allow user registration. The easiest thing to prevent user registration spam there is to turn it off.</p>



<p class="wp-block-paragraph">Simply go to <strong>Settings » General</strong> in your WordPress admin area, and uncheck the &#8216;Anyone can register&#8217; box.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="316" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/disabling-user-registration-.png" alt="Disabling user registration on your website, blog, or eCommerce store " class="wp-image-408671" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/disabling-user-registration-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/disabling-user-registration--300x139.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-require-email-confirmation-before-an-account-activates-257" class="wp-block-heading">Require Email Confirmation Before an Account Activates</h5>



<p class="wp-block-paragraph">If you do need open registration, then the goal is to let only real people in while keeping spam bots out. The setting that stops the most fake signups is requiring a confirmed email address, or a manual review, before an account goes live.</p>



<p class="wp-block-paragraph">Where that control lives depends on what plugin you&#8217;re using to manage user registration in WordPress. You will want to start with your platform&#8217;s default setting instead of bolting a general form plugin onto a system that already handles this.</p>



<p class="wp-block-paragraph">If you run a <a href="https://www.wpbeginner.com/wp-tutorials/woocommerce-tutorial-ultimate-guide/" title="WooCommerce Ultimate Guide">WooCommerce store</a>, then go to <strong>WooCommerce » Settings » Accounts &amp; Privacy</strong>. This is where you decide whether shoppers can create an account at all, limit account creation to checkout, or keep guest checkout on so no account creation is needed.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="306" src="https://www.wpbeginner.com/wp-content/uploads/2025/09/force-guest-checkout-by-disabling-account-creation-and-login-during-checkout.png" alt="Force guest checkout by disabling account creation and login during checkout in WooCommerce" class="wp-image-377621" srcset="https://www.wpbeginner.com/wp-content/uploads/2025/09/force-guest-checkout-by-disabling-account-creation-and-login-during-checkout.png 680w, https://www.wpbeginner.com/wp-content/uploads/2025/09/force-guest-checkout-by-disabling-account-creation-and-login-during-checkout-300x135.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">WooCommerce core doesn&#8217;t add a separate email-confirmation step on its own. If you want one, then you&#8217;ll need a <a href="https://woocommerce.com/document/customer-email-verification/" target="_blank" rel="noopener" title="custom email verification extension">custom email verification extension</a> or the custom signup form covered below.</p>



<p class="wp-block-paragraph">Other membership and course platforms handle account verification in their own settings, so start there:</p>



<ul class="wp-block-list">
<li><strong>MemberPress:</strong> WordPress creates the account on registration, so pair it with the free User Verification plugin to keep the account inactive until the person confirms their email. <a href="https://memberpress.com/docs/how-to-require-email-verification-on-registration/" target="_blank" rel="noopener nofollow" title="See MemberPress' documentation for the full details">See MemberPress&#8217; documentation for the full details</a>.</li>



<li><strong>BuddyPress and BuddyBoss:</strong> email activation is built in, so new members stay inactive until they click the activation link. Enable registration under <strong>Settings » General</strong> (BuddyPress) or <strong>BuddyBoss » Settings » Login &amp; Registration</strong>. See <a href="https://github.com/buddypress/buddypress/blob/master/docs/user/administration/users/signups.md#alternative-registration-workflows" target="_blank" rel="noopener nofollow" title="BuddyPress documentation">BuddyPress documentation</a> and <a href="https://buddyboss.com/docs/configure-registration-settings-in-buddyboss/" target="_blank" rel="noopener" title="BuddyBoss documentation">BuddyBoss documentation</a> for more details.</li>



<li><strong>LearnDash:</strong> registration runs on WordPress&#8217;s own user system, so there&#8217;s no native email-confirmation step. An account goes live the moment someone signs up. To hold new accounts until the email is verified, add that check at the WordPress or form level, using a user verification plugin or the custom WPForms registration form covered below.</li>
</ul>



<p class="wp-block-paragraph">If you&#8217;re building a custom registration form rather than using one of the systems above, then you can use <a href="https://wpforms.com/docs/how-to-install-and-use-user-registration-addon-with-wpforms/" target="_blank" rel="noopener" title="The WPForms User Registration addon">WPForms User Registration addon</a> which lets you turn on email activation under the form&#8217;s <strong>User Registration</strong> settings, with either an email confirmation link or manual admin approval.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="316" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/enable-user-activation-.png" alt="Requiring email activation for new WordPress user accounts" class="wp-image-408673" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/enable-user-activation-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/enable-user-activation--300x139.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Similar options are available in Gravity Forms, WSForm, and other popular WordPress form plugins. For the full walkthrough, see our guide on <a href="https://www.wpbeginner.com/plugins/how-to-moderate-new-user-registrations-in-wordpress/" title="How to Moderate New User Registrations in WordPress">how to moderate new user registrations</a>. </p>



<h5 id="aioseo-add-a-captcha-and-a-honeypot-to-the-signup-form-270" class="wp-block-heading">Add CAPTCHA and Honeypot to WordPress Signup Form</h5>



<p class="wp-block-paragraph">The same tips that protect your WordPress contact forms also work on WordPress signup form. Since you already set up Cloudflare Turnstile earlier, you can switch it on for your registration form in a click.</p>



<p class="wp-block-paragraph">For a dedicated walkthrough, see our guide on <a href="https://www.wpbeginner.com/plugins/how-to-add-captcha-in-wordpress-login-and-registration-form/" title="How to Add CAPTCHA in WordPress Login and Registration Form">how to add a CAPTCHA to your login and registration forms</a>.</p>



<p class="wp-block-paragraph">If you&#8217;re using the default WordPress registration page, then you can add hidden honeypot fields to your registration form with the free <a href="https://wordpress.org/plugins/honeypot/" target="_blank" rel="noopener nofollow" title="The WP Armour honeypot plugin for WordPress ">WP Armour</a> plugin. The plugin logs every bot it blocks under <strong>WP Armour » Statistics</strong>. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="315" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wp-armour-statistics-.png" alt="The WP Armour WordPress plugin " class="wp-image-408674" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wp-armour-statistics-.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wp-armour-statistics--300x139.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-use-automated-detection-for-registrations-278" class="wp-block-heading">Use AI-Powered Tools for Blocking WordPress Registration Spam</h5>



<p class="wp-block-paragraph">Honeypots and CAPTCHAs stop obvious bots, but they can&#8217;t spot someone signing up with a throwaway email or from a known-bad IP address. </p>



<p class="wp-block-paragraph">That&#8217;s where automated detection helps. It screens each new signup against live reputation data and blocks the ones that look fraudulent.</p>



<p class="wp-block-paragraph"><a href="https://wordpress.org/plugins/activelayer-anti-spam-spam-protection-for-forms-comments" target="_blank" title="ActiveLayer - Free AI Spam Protection Plugin for WordPress Forms and Comments">ActiveLayer</a> and <a href="https://wordpress.org/plugins/cleantalk-spam-protect/" target="_blank" rel="noopener nofollow" title="CleanTalk">CleanTalk</a> both offer this for WordPress registrations, and you can switch it on for your signup form the same way you did for your contact forms.</p>



<h4 id="aioseo-5-site-wide-spam-defenses-the-side-doors-285" class="wp-block-heading">6. Add a Site-Wide WordPress Firewall</h4>



<p class="wp-block-paragraph">A Web Application Firewall (WAF) screens every visitor and blocks malicious requests before they reach your site. Since most form spam is automated, a good firewall can stop a lot of it at the perimeter.</p>



<p class="wp-block-paragraph">We recommend a DNS-level firewall, which filters traffic on the provider&#8217;s network before it touches your server. </p>



<p class="wp-block-paragraph">On WPBeginner, we use <a href="http://cloudflare.com/" target="_blank" rel="noopener nofollow" title="Cloudflare">Cloudflare</a>, which has a free plan with basic firewall protection (setup requires pointing your domain&#8217;s nameservers to Cloudflare).</p>



<figure class="wp-block-image size-large"><img decoding="async" src="https://www.wpbeginner.com/wp-content/uploads/2024/08/cloudflare-website-1.png" alt="The Cloudflare website, a DNS level firewall for WordPress"/></figure>



<p class="wp-block-paragraph">Our guide on <a href="https://www.wpbeginner.com/wp-tutorials/how-to-setup-cloudflare-free-cdn-in-wordpress/" title="How to Setup Cloudflare Free CDN in WordPress (Step by Step)">how to set up the free Cloudflare CDN and firewall</a> walks through it.</p>



<p class="wp-block-paragraph">Plus, our roundup of the <a href="https://www.wpbeginner.com/plugins/best-wordpress-firewall-plugins-compared/" title="Best WordPress Firewall Plugins Compared ">best WordPress firewall plugins</a> compares the other options if you want to weigh them up.</p>



<h4 id="aioseo-7-cleanup-and-ongoing-monitoring-334" class="wp-block-heading">7. Cleanup WordPress Spam and Ongoing Monitoring</h4>



<p class="wp-block-paragraph">Stopping new spam is only half the job. If you&#8217;re like most websites, you already have a backlog of old junk that needs cleaning up.</p>



<p class="wp-block-paragraph">A quick cleanup keeps your database tidy and helps your new tools run at their best.</p>


<div class="wpb-alert style-yellow">

<p class="wp-block-paragraph">🚨 Always <a href="https://www.wpbeginner.com/beginners-guide/how-to-backup-your-wordpress-site/" title="How to Backup Your WordPress Site (Ultimate Guide)">create a complete WordPress backup</a> before deleting anything in bulk. These actions permanently wipe data, with no undo button if you make a mistake.</p>

</div>


<h5 id="aioseo-bulk-delete-existing-spam-comments-338" class="wp-block-heading">Bulk-Delete Existing Spam Comments</h5>



<p class="wp-block-paragraph">WordPress spam filter flags junk comments but doesn&#8217;t delete them, so they can build up in your spam folder and take up database space until you clear them out.</p>



<p class="wp-block-paragraph">In your dashboard, go to <strong>Comments</strong>, click the &#8216;Spam&#8217; filter at the top, and hit &#8216;Empty Spam&#8217; to permanently clear everything your filters caught.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="261" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/empty-spam-wordpress.png" alt="Bulk deleting spam comments on your website, blog, or online store " class="wp-image-408754" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/empty-spam-wordpress.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/empty-spam-wordpress-300x115.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">If you have thousands of junk comments, the dashboard can freeze or time out. A free plugin like <a href="https://wordpress.org/plugins/wp-bulk-delete/" target="_blank" rel="noopener nofollow" title="The WP Bulk Delete WordPress plugin ">WP Bulk Delete</a> is faster and more reliable for big backlogs. </p>



<p class="wp-block-paragraph">For other methods, see our guide on <a href="https://www.wpbeginner.com/wp-tutorials/how-to-easily-bulk-delete-all-wordpress-comments/" title="How to Easily Bulk Delete All WordPress Comments">how to bulk delete WordPress comments</a>.</p>



<h5 id="aioseo-clean-out-existing-fake-user-accounts-352" class="wp-block-heading">Clean Out Existing Fake User Accounts</h5>



<p class="wp-block-paragraph">Leaving bot profiles in your database is a security risk and skews your analytics. That&#8217;s why it&#8217;s important to clean out these fake accounts.</p>



<p class="wp-block-paragraph">For a handful, go to <strong>Users » All Users</strong>, click the &#8216;Subscriber&#8217; <a href="https://www.wpbeginner.com/beginners-guide/wordpress-user-roles-and-permissions/" title="Beginner’s Guide to WordPress User Roles and Permissions">user role</a> filter (the role almost all registration bots use), select the fake accounts, and choose Delete from the &#8216;Bulk actions&#8217; menu.</p>



<p class="wp-block-paragraph">⚠️ Be very careful to select only fake Subscriber accounts, and never an Administrator account.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="264" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/deleting-spam-users.png" alt="Deleting fake users on your online store " class="wp-image-408758" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/deleting-spam-users.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/deleting-spam-users-300x116.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">For thousands of accounts, the free WP Bulk Delete plugin can remove users by role, inactivity, or registration date in one sweep. </p>



<p class="wp-block-paragraph">For more information, see our guide on <a href="https://www.wpbeginner.com/plugins/how-to-bulk-delete-wordpress-users-with-specific-roles/" title="How to Bulk Delete WordPress Users With Specific Roles">how to bulk delete WordPress users by role</a>.</p>



<h5 id="aioseo-handle-false-positives-363" class="wp-block-heading">Handle False Positives</h5>



<p class="wp-block-paragraph">No filter is perfect, so never auto-delete your spam folder without a quick glance first. </p>



<p class="wp-block-paragraph">In <strong>Comments » Spam</strong>, hover over a legitimate comment and click &#8216;Not Spam&#8217;. That also teaches your filter to recognize similar comments as safe in the future.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="309" src="https://www.wpbeginner.com/wp-content/uploads/2014/10/wpadmin-comments-notspam.png" alt="Marking a comment as Not Spam on WordPress" class="wp-image-379445" srcset="https://www.wpbeginner.com/wp-content/uploads/2014/10/wpadmin-comments-notspam.png 680w, https://www.wpbeginner.com/wp-content/uploads/2014/10/wpadmin-comments-notspam-300x136.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-set-a-monthly-anti-spam-review-routine-366" class="wp-block-heading">Set a Monthly Anti-Spam Review Routine</h5>



<p class="wp-block-paragraph">A few minutes each month keeps spam from piling back up. Add these three checks to your maintenance routine:</p>



<ul class="wp-block-list">
<li><strong>Scan for false positives:</strong> skim your spam comment folder and form entries so no real messages were caught by accident.</li>



<li><strong>Empty your spam folders:</strong> once you&#8217;ve rescued anything real, clear them to keep your database lean.</li>



<li><strong>Check your user list:</strong> glance at new registrations for gibberish usernames or suspicious email domains that slipped through.</li>
</ul>



<h4 id="aioseo-key-takeaways-368" class="wp-block-heading">Key Takeaways</h4>



<p class="wp-block-paragraph">Here is a summary of the best practices we have covered to completely protect your WordPress website from spam:</p>



<ul class="wp-block-list">
<li><strong>Start with free WordPress settings:</strong> turn on comment moderation, tighten your link limits, build a comment blocklist, and disable trackbacks. These cost nothing and clear out the easiest spam.</li>



<li><strong>Use automated, invisible filtering:</strong> a server-side tool like <a href="https://wordpress.org/plugins/activelayer-anti-spam-spam-protection-for-forms-comments" target="_blank" title="ActiveLayer - Free AI Spam Protection Plugin for WordPress Forms and Comments">ActiveLayer</a>, Akismet, or CleanTalk blocks bots in the background without making real visitors solve puzzles.</li>



<li><strong>Layer your contact form defenses:</strong> honeypots alone no longer stop modern bots, so combine them with timing checks, token validation, and an automated filter.</li>



<li><strong>Secure your registrations:</strong> require email confirmation for new accounts and screen every signup with an automated tool.</li>



<li><strong>Add a site-wide firewall:</strong> a DNS-level firewall like Cloudflare blocks a lot of automated spam at the perimeter, before it ever reaches your forms.</li>



<li><strong>Run regular cleanup:</strong> bulk-delete old spam comments and fake accounts, then spend a few minutes each month checking for false positives.</li>
</ul>



<h4 id="aioseo-frequently-asked-questions-376" class="wp-block-heading">Frequently Asked Questions About WordPress Spam Protection</h4>



<p class="wp-block-paragraph"><strong>Is free Akismet-style filtering enough, or do I need
  more?</strong></p>



<p class="wp-block-paragraph">For a small personal blog with only comment spam, a single free filter like Akismet is usually enough. Once you add contact forms, signup forms, or user registration, you&#8217;ll want a service that protects those too, like <a href="https://wordpress.org/plugins/activelayer-anti-spam-spam-protection-for-forms-comments" target="_blank" rel="noopener" title="ActiveLayer - Free AI Spam Protection
  Plugin for WordPress Forms and Comments">ActiveLayer</a> or CleanTalk.</p>



<p class="wp-block-paragraph"><strong>Will adding a CAPTCHA hurt my form conversions?</strong></p>



<p class="wp-block-paragraph">It can. The extra step causes some real visitors to give up on the form. This is why we prefer invisible, server-side detection that blocks bots without asking anyone to solve a puzzle.</p>



<p class="wp-block-paragraph"><strong>Why am I still getting spam after installing an anti-spam
  plugin?</strong></p>



<p class="wp-block-paragraph">Usually because the plugin only guards one entry point. If it protects your
  comments but not your signup or contact forms, bots just move to those
  instead, and older tricks like basic honeypots no longer stop modern bots. The
  fix is a layered setup: your built-in WordPress settings, an automated
  filter, and a firewall working together.</p>



<p class="wp-block-paragraph"><strong>How do I stop fake user registrations without turning off signups
  completely?</strong></p>



<p class="wp-block-paragraph">Turn on email confirmation so new accounts stay inactive until the person
  clicks a link in their inbox, which bots can&#8217;t do. Pair it with a honeypot and
  an automated filter, and real people can still sign up freely.</p>



<p class="wp-block-paragraph"><strong>Can spam actually hurt my SEO or get my site
  blacklisted?</strong></p>



<p class="wp-block-paragraph">It can, but it depends on where the spam is. Comment spam sitting in your moderation queue is never published, so search engines never see it and <a href="https://www.wpbeginner.com/wordpress-seo/" title="Ultimate WordPress SEO
  Guide: Rank in Google &amp; AI Search">your SEO</a> stays safe. </p>



<p class="wp-block-paragraph">Published spam is the real risk, because it can slowly pull down your rankings. WordPress does tag comment links as nofollow, which limits the damage. </p>



<p class="wp-block-paragraph">We hope this article helped you learn how to protect your WordPress website against spam. You may also want to check out our <a href="https://www.wpbeginner.com/wordpress-security/" title="The Ultimate WordPress Security Guide – Step by Step">ultimate WordPress security guide</a> to improve your website security.</p>



<p class="wp-block-paragraph">If you liked this article, then please subscribe to our&nbsp;<a href="https://youtube.com/wpbeginner?sub_confirmation=1" target="_blank" rel="noreferrer noopener nofollow" title="Subscribe to WPBeginner YouTube Channel">YouTube Channel</a>&nbsp;for WordPress video tutorials. You can also find us on&nbsp;<a href="https://twitter.com/wpbeginner" target="_blank" rel="noreferrer noopener nofollow" title="Follow WPBeginner on Twitter">Twitter</a>&nbsp;and <a href="https://facebook.com/wpbeginner" target="_blank" rel="noreferrer noopener nofollow" title="Join WPBeginner Community on Facebook">Facebook</a>.</p><p>The post <a href="https://www.wpbeginner.com/wp-tutorials/wordpress-spam-protection-guide/">Ultimate WordPress Spam Protection Guide – Step by Step (2026)</a> first appeared on <a href="https://www.wpbeginner.com">WPBeginner</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.wpbeginner.com/wp-tutorials/wordpress-spam-protection-guide/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>How to Connect AI Agents With WordPress using MCP (Step by Step)</title>
		<link>https://www.wpbeginner.com/wp-tutorials/how-to-connect-ai-agents-with-wordpress-using-mcp/</link>
					<comments>https://www.wpbeginner.com/wp-tutorials/how-to-connect-ai-agents-with-wordpress-using-mcp/#comments</comments>
		
		<dc:creator><![CDATA[Nouman Yaqoob]]></dc:creator>
		<pubDate>Fri, 10 Jul 2026 12:38:55 +0000</pubDate>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[ai plugins]]></category>
		<category><![CDATA[ai plugins for woocommerce]]></category>
		<category><![CDATA[mcp]]></category>
		<category><![CDATA[wpvibe]]></category>
		<guid isPermaLink="false">https://www.wpbeginner.com/?p=407695</guid>

					<description><![CDATA[<p>AI assistants like Claude Code, Cowork, and ChatGPT are incredible productivity boosters, and if you wished that you could connect these AI tools with WordPress directly, then you&#8217;re not alone. Lately, I have been using WordPress MCP by WPVibe to let my AI assistant manage&#8230;&#160;<strong><a href="https://www.wpbeginner.com/wp-tutorials/how-to-connect-ai-agents-with-wordpress-using-mcp/">Read More &#187;</a></strong></p>
<p>The post <a href="https://www.wpbeginner.com/wp-tutorials/how-to-connect-ai-agents-with-wordpress-using-mcp/">How to Connect AI Agents With WordPress using MCP (Step by Step)</a> first appeared on <a href="https://www.wpbeginner.com">WPBeginner</a>.</p>]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">AI assistants like Claude Code, Cowork, and ChatGPT are incredible productivity boosters, and if you wished that you could connect these AI tools with WordPress directly, then you&#8217;re not alone. </p>



<p class="wp-block-paragraph">Lately, I have been using WordPress MCP by WPVibe to let my AI assistant manage my website, and it&#8217;s truly amazing how much time this saves. You can simply ask it to create a post, upload image, handle admin tasks, and more from a single conversational prompt.</p>



<p class="wp-block-paragraph">In this step by step tutorial, I&#8217;ll show you how to connect your favorite AI tools with WordPress using MCP along with sharing a few work examples, so you can see what becomes possible when you combine WordPress + AI.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="385" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/how-to-connect-ai-ag-featured.jpg" alt="How to Connect AI Agents With WordPress Using MCP" class="wp-image-409227" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/how-to-connect-ai-ag-featured.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/how-to-connect-ai-ag-featured-300x170.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">You can use the quick links below to jump to any section:</p>


<div class="wp-block-aioseo-table-of-contents"><ul><li><a class="aioseo-toc-item" href="#aioseo-what-is-the-wordpress-model-context-protocol-18">What is a WordPress MCP and What Can It Do?</a></li><li><a class="aioseo-toc-item" href="#aioseo-what-you-need-before-getting-started-35">What You Need Before Getting Started</a></li><li><a class="aioseo-toc-item" href="#aioseo-step-1-set-up-mcp-on-your-wordpress-website-48">Step 1. Set Up MCP on Your WordPress Website</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-step-2-connect-your-ai-tools-to-wordpress-70">Step 2. Connect Your AI Tools to WordPress</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-3-things-you-can-do-right-away-worked-examples-95">What You Can Do Once You&#039;re Connected (Worked Examples)</a><ul></ul></li><li><a class="aioseo-toc-item" href="#aioseo-is-wordpress-mcp-safe-132">Is WordPress MCP Safe?</a></li><li><a class="aioseo-toc-item" href="#aioseo-troubleshooting-connection-issues-141">Troubleshooting Connection Issues</a></li><li><a class="aioseo-toc-item" href="#aioseo-frequently-asked-questions-139">Frequently Asked Questions About WordPress MCP</a></li></ul></div>


<h4 id="aioseo-what-is-the-wordpress-model-context-protocol-18" class="wp-block-heading">What is a WordPress MCP and What Can It Do?</h4>



<p class="wp-block-paragraph">MCP stands for Model Context Protocol. It is as an open standard that lets AI assistants connect to outside tools and services.</p>



<p class="wp-block-paragraph">Think of it as a universal adapter. Instead of every AI tool building a custom integration with every service, they all speak the same language, so any tool and service that support MCP can work together.</p>



<p class="wp-block-paragraph">With a WordPress MCP, your AI assistant can see what your website supports and carry out tasks from a plain-text prompt. It does this using a connection WordPress already has built in (the REST API), so there&#8217;s nothing extra to install.</p>



<p class="wp-block-paragraph">You can use WordPress MCP to manage your WordPress site and perform tasks including:</p>



<ul class="wp-block-list">
<li><strong>Draft and publish posts</strong> &#8211; Create blog posts as drafts, set titles, add categories and tags, and publish when you&#8217;re ready.</li>



<li><strong>Upload media</strong> &#8211; Pull images from any public URL directly into your WordPress media library.</li>



<li><strong>Manage categories and tags</strong> &#8211; Create or rename taxonomy terms and assign them to posts.</li>



<li><strong>Run admin tasks</strong> &#8211; Flush your site cache, check which plugins are active, and activate or deactivate plugins.</li>



<li><strong>Use plugin abilities</strong> &#8211; On WordPress 6.9+, many plugins register their own actions the AI can discover and run automatically</li>
</ul>



<p class="wp-block-paragraph">Each of these can be done from a plain-text prompt from your favorite AI tool like Claude Code, Cursor, ChatGPT, etc. I&#8217;ll show you the exact prompts once you&#8217;re fully set up.</p>



<h4 id="aioseo-what-you-need-before-getting-started-35" class="wp-block-heading">What You Need Before Getting Started</h4>



<ul class="wp-block-list">
<li><strong>Self-hosted WordPress 6.9 or later</strong> &#8211; With the REST API enabled (it&#8217;s on by default). You need version 6.9 or later for plugin abilities API which is allows you to use AI to manage plugins like AIOSEO, WPForms, etc.</li>



<li><strong>A publicly accessible site</strong> &#8211; Your site must be reachable on the internet because local development sites won&#8217;t work unless exposed via a tunnel.</li>



<li><strong>A free WPVibe account</strong> — You&#8217;ll create this during setup.</li>



<li><strong>An HTTPS-enabled site</strong> — WordPress application passwords require SSL and they won&#8217;t function on <code>http://</code> sites. See our guide on <a href="https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/" title="How to Add SSL and HTTPS in WordPress">how to add SSL and HTTPS to WordPress</a>.</li>
</ul>



<h4 id="aioseo-step-1-set-up-mcp-on-your-wordpress-website-48" class="wp-block-heading">Step 1. Set Up MCP on Your WordPress Website</h4>



<p class="wp-block-paragraph">The easiest way to add MCP to a self-hosted WordPress site is with <a href="https://wpvibe.ai/" target="_blank" rel="noopener" title="WPVibe - Your AI Just Learned WordPress">WPVibe.ai</a>. It&#8217;s free and runs on a hosted server, so there&#8217;s no infrastructure to configure. It also works with every major AI tool through a single setup.</p>



<p class="wp-block-paragraph">You can read our full <a href="https://www.wpbeginner.com/solutions/wpvibe/" title="WPVibe Review">WPVibe review</a> for a deeper look at everything it can do, but this guide covers what you need to get connected.</p>



<p class="wp-block-paragraph"><strong>Other ways to set this up:</strong> There&#8217;s also an official WordPress MCP Adapter, which pairs with the new Abilities API in WordPress 6.9, but it&#8217;s built for developers and needs manual configuration.</p>



<h5 id="aioseo-install-and-activate-the-vibe-ai-plugin-56" class="wp-block-heading">Install and Activate the Vibe AI Plugin</h5>



<p class="wp-block-paragraph">First, you will need to install and activate the <a href="https://wordpress.org/plugins/vibe-ai/" target="_blank" rel="noopener" title="WPVibe free plugin">free WPVibe plugin</a>. If you need any help, our guide on <a href="https://www.wpbeginner.com/beginners-guide/step-by-step-guide-to-install-a-wordpress-plugin-for-beginners/" title="How to Install a WordPress Plugin">how to install a WordPress plugin</a> covers each step.</p>



<p class="wp-block-paragraph">Along with connecting your AI tools, the WPVibe plugin unlocks WP-CLI commands, theme file editing, and the plugin abilities that I talk about later in this guide.</p>



<p class="wp-block-paragraph">Once activated, go to <strong>Vibe AI » Vibe AI</strong> in your WordPress dashboard. You&#8217;ll see the MCP server URL and a three-step setup guide. </p>



<p class="wp-block-paragraph">Keep this tab open. You&#8217;ll need the URL in the next step.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="383" src="https://www.wpbeginner.com/wp-content/uploads/2026/06/wpvibe-setup-2.jpg" alt="The Vibe AI plugin admin page in wp-admin showing the three-step connection setup" class="wp-image-407711" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/06/wpvibe-setup-2.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/06/wpvibe-setup-2-300x169.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h4 id="aioseo-step-2-connect-your-ai-tools-to-wordpress-70" class="wp-block-heading">Step 2. Connect Your AI Tools to WordPress</h4>



<p class="wp-block-paragraph">With WPVibe set up, connecting your AI tool takes under a minute. You add the same server URL to any AI client you use: <code>https://mcp.wpvibe.ai/mcp</code>.</p>



<p class="wp-block-paragraph">You&#8217;ll find instructions on how to do this in <a href="https://wpvibe.ai/docs/ai-client-setup/" target="_blank" rel="noopener" title="WPVibe Documentation: AI Client Setup">the official WPVibe documentation</a>. But let me show you exactly where to find that setting in some popular AI platforms.</p>



<h5 id="aioseo-claude-master-setup" class="wp-block-heading">Connecting Claude</h5>



<p class="wp-block-paragraph">If you&#8217;re just getting started, I recommend beginning with Claude. </p>



<p class="wp-block-paragraph">The simplest method is to add the WPVibe URL once via Claude.ai on the web, and it syncs automatically to Claude Desktop, Claude Code, and the Claude mobile apps with no separate setup needed.</p>



<p class="wp-block-paragraph"><strong>Note:</strong> On Team and Enterprise workspaces, only an Owner or Admin can add connectors. Individual members on those plans can authenticate with WPVibe once the admin has added it, or use the Claude Code method in step 3 below.</p>



<ol class="wp-block-list">
<li><strong>Free, Pro, and Max plans:</strong> In Claude.ai, go to <strong>Customize » Connectors</strong>. Click the + button, select &#8216;Add custom connector&#8217;, and paste <code>https://mcp.wpvibe.ai/mcp</code>.</li>



<li><strong>Team and Enterprise (admin only):</strong> Go to <strong>Organization settings » Connectors</strong>. Click &#8216;Add&#8217;, select <strong>Custom » Web</strong>, and paste the WPVibe URL.</li>



<li><strong>Claude Code (any plan):</strong> In your terminal, run <code>claude mcp add --scope user wpvibe --transport http https://mcp.wpvibe.ai/mcp</code>. Then, open Claude Code, type <code>/mcp</code>, select wpvibe, and choose &#8216;Authenticate&#8217;.</li>
</ol>



<p class="wp-block-paragraph">Once saved, follow the on-screen prompt to authorize your WordPress site.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="383" src="https://www.wpbeginner.com/wp-content/uploads/2026/06/wpvibe-connect-claudeai-web.png" alt="Connecting Claude.ai (Web) to WPVibe" class="wp-image-408004" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/06/wpvibe-connect-claudeai-web.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/06/wpvibe-connect-claudeai-web-300x169.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-connecting-chatgpt-85" class="wp-block-heading">Connecting ChatGPT</h5>



<p class="wp-block-paragraph">WPVibe is available directly in the ChatGPT App Marketplace, so both free and paid users can connect without copying server URLs or editing config files.</p>



<p class="wp-block-paragraph">In ChatGPT, click &#8216;Apps&#8217; in the sidebar and search for WPVibe. Then click &#8216;Connect&#8217; on the app page and sign in with your WPVibe account when prompted.</p>



<p class="wp-block-paragraph">After connecting, ChatGPT pre-fills &#8216;@WPVibe&#8217; at the start of each message. You can delete it with backspace for prompts unrelated to WordPress. Leave it in place when following the authorization step below.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="313" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-connect-chatgpt.jpg" alt="Connecting ChatGPT to WPVibe" class="wp-image-408725" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-connect-chatgpt.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-connect-chatgpt-300x138.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-connecting-cursor-90" class="wp-block-heading">Connecting Cursor</h5>



<p class="wp-block-paragraph">Cursor adds MCP servers through a JSON config file. In Cursor, go to <strong>Settings » MCP</strong> and click the &#8216;Add new global MCP server&#8217; button. This opens the <code>mcp.json</code> file.</p>



<p class="wp-block-paragraph">Add the following entry and save:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: jscript; title: ; notranslate">
{
  &quot;mcpServers&quot;: {
    &quot;wpvibe&quot;: {
      &quot;url&quot;: &quot;https://mcp.wpvibe.ai/mcp&quot;
    }
  }
}
</pre><div class="wpcode-syntax-footer">
		<div class="wpcode-syntax-code-footer-left">Hosted with ❤️ by <strong><a href="https://wpcode.com" target="_blank">WPCode</a></strong></div>
		<div class="wpcode-syntax-code-footer-right">
			<svg width="65" height="16" viewBox="0 0 65 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M38.0415 7.99972C38.0415 6.44437 38.4062 5.38018 39.128 4.59879C39.8499 3.80995 40.8769 3.42297 42.1941 3.42297C42.8117 3.42297 43.4071 3.54949 43.9206 3.80251C44.4564 4.05553 44.8582 4.39786 45.1782 4.82204C45.2452 4.9039 45.2601 4.99321 45.2601 5.09739C45.2601 5.2239 45.2155 5.31321 45.1336 5.39507C45.0517 5.47693 44.9624 5.52158 44.8359 5.52158C44.6871 5.52158 44.5829 5.4546 44.4936 5.35042C44.2555 5.03042 43.9429 4.75507 43.5113 4.53925C43.1094 4.32344 42.6555 4.21925 42.1643 4.21925C41.1224 4.21925 40.3336 4.53925 39.7755 5.17925C39.2248 5.81925 38.942 6.68995 38.942 7.96995C38.942 9.30948 39.2173 10.2025 39.7531 10.7979C40.2889 11.3932 41.0927 11.7132 42.1643 11.7132C42.6331 11.7132 43.0573 11.6313 43.4889 11.4379C43.8908 11.2444 44.2331 10.9913 44.4936 10.6267C44.5755 10.5225 44.6871 10.4555 44.8359 10.4555C44.9624 10.4555 45.0517 10.5002 45.1336 10.582C45.2155 10.6639 45.2601 10.7755 45.2601 10.8797C45.2601 10.9616 45.2378 11.0509 45.1782 11.1327C44.8806 11.5569 44.4713 11.8993 43.9206 12.1523C43.3699 12.4053 42.7894 12.5318 42.1717 12.5318C40.8322 12.5318 39.8052 12.1523 39.0982 11.4006C38.3987 10.6788 38.0415 9.59228 38.0415 7.99972Z" fill="#1F2937"></path><path d="M46.9268 11.7654C46.4356 11.237 46.1826 10.4258 46.1826 9.36164C46.1826 8.29745 46.4208 7.50862 46.9045 6.98024C47.3956 6.45187 48.0803 6.19141 48.9733 6.19141C49.8663 6.19141 50.551 6.44443 51.0422 6.98024C51.5333 7.50862 51.764 8.29745 51.764 9.36164C51.764 10.4258 51.5259 11.237 51.0422 11.7654C50.551 12.2937 49.8663 12.5765 48.9733 12.5765C48.1026 12.5765 47.418 12.3012 46.9268 11.7654ZM47.0608 9.36164C47.0608 10.9765 47.7008 11.7877 48.9808 11.7877C50.2608 11.7877 50.9008 10.9765 50.9008 9.36164C50.9008 7.74676 50.2608 6.93559 48.9808 6.93559C47.6933 6.93559 47.0608 7.76908 47.0608 9.36164Z" fill="#1F2937"></path><path d="M52.583 9.3839C52.583 7.25553 53.476 6.31786 55.2472 6.31786C55.6491 6.31786 56.0137 6.39972 56.3337 6.57088C56.6537 6.74204 56.9067 6.93553 57.0556 7.18855V3.84716C57.0556 3.72065 57.1002 3.63135 57.1821 3.54949C57.2639 3.46762 57.3532 3.42297 57.4798 3.42297C57.6063 3.42297 57.6956 3.46762 57.7774 3.54949C57.8593 3.63135 57.9039 3.72065 57.9039 3.84716V9.95693C57.9039 10.8053 57.6658 11.4453 57.1821 11.8918C56.7132 12.3383 56.0732 12.569 55.2844 12.569C54.4137 12.569 53.7291 12.2937 53.2602 11.7579C52.8137 11.2369 52.583 10.4481 52.583 9.3839ZM53.4314 9.3839C53.4314 10.9988 54.0491 11.81 55.3067 11.81C55.8425 11.81 56.2667 11.6611 56.5867 11.3411C56.9067 11.0211 57.0556 10.5746 57.0556 9.95693V8.25274C57.0332 8.23042 57.0109 8.18576 56.9886 8.12623C56.9663 8.05925 56.9067 7.97739 56.7951 7.85088C56.6909 7.72437 56.5793 7.59786 56.4528 7.48623C56.3263 7.38204 56.1551 7.29274 55.9616 7.21088C55.7458 7.12902 55.5374 7.08437 55.2993 7.08437C54.6816 7.08437 54.2351 7.27786 53.8928 7.67972C53.5802 8.08158 53.4314 8.57274 53.4314 9.3839Z" fill="#1F2937"></path><path d="M58.9312 9.36193C58.9312 8.3424 59.1693 7.55356 59.653 7.00286C60.1367 6.45216 60.8065 6.16937 61.6772 6.16937C62.0195 6.16937 62.3395 6.21402 62.5925 6.29588C62.8679 6.37774 63.106 6.48937 63.2772 6.63821C63.4484 6.78705 63.6195 6.93588 63.746 7.12937C63.8725 7.30054 63.9842 7.49402 64.0437 7.7024C64.1107 7.91821 64.1479 8.08193 64.1925 8.25309C64.2372 8.42426 64.2372 8.59542 64.2372 8.76658C64.2372 8.89309 64.2372 8.99728 64.2372 9.06426C64.2372 9.13123 64.2149 9.21309 64.1702 9.31728C64.1479 9.42147 64.0884 9.48844 63.9991 9.53309C63.9172 9.57774 63.8279 9.60007 63.7014 9.60007H59.8316C59.8316 10.2624 60.0028 10.7908 60.3674 11.1777C60.7321 11.5573 61.2232 11.7731 61.8409 11.7731C62.1832 11.7731 62.4809 11.7284 62.7116 11.6243C62.9498 11.5201 63.2028 11.3936 63.4335 11.2001C63.5153 11.1331 63.6046 11.1182 63.6716 11.1182C63.7758 11.1182 63.8651 11.1629 63.947 11.2224C64.0139 11.3043 64.0512 11.3936 64.0512 11.4977C64.0512 11.6019 64.0065 11.7136 63.9023 11.7954C63.8205 11.8773 63.6865 11.9889 63.5377 12.0931C63.3888 12.1973 63.1507 12.2866 62.8307 12.3908C62.5107 12.495 62.1684 12.5396 61.8037 12.5396C60.8884 12.5396 60.1814 12.2866 59.6902 11.7508C59.1916 11.2522 58.9312 10.4484 58.9312 9.36193ZM59.8093 8.87077H63.3888C63.3888 8.61774 63.3665 8.37961 63.307 8.17123C63.2623 7.95542 63.1805 7.76937 63.0539 7.57588C62.9274 7.3824 62.7563 7.23356 62.5181 7.12937C62.28 7.02519 62.0046 6.95821 61.6846 6.95821C61.1116 6.95821 60.68 7.12937 60.3377 7.4717C60.0251 7.80658 59.8316 8.27542 59.8093 8.87077Z" fill="#1F2937"></path><path d="M19.229 4.18977C19.229 3.97395 19.3109 3.78791 19.4671 3.63907C19.616 3.49023 19.8095 3.40837 20.0253 3.40837C20.2188 3.40837 20.3899 3.47535 20.5164 3.57954C20.643 3.68372 20.7323 3.81023 20.7695 3.94419L22.3248 9.51814L23.8355 3.96651C23.8802 3.79535 23.962 3.66884 24.1109 3.56465C24.2597 3.46047 24.4085 3.41581 24.5574 3.41581C24.7285 3.41581 24.8774 3.46047 25.0039 3.56465C25.1304 3.66884 25.242 3.79535 25.2792 3.96651L26.7899 9.51814L28.3453 3.92186C28.3899 3.79535 28.4718 3.66884 28.5983 3.55721C28.7248 3.45302 28.8737 3.38605 29.0895 3.38605C29.3053 3.38605 29.4764 3.45302 29.6253 3.60186C29.7741 3.7507 29.8411 3.92186 29.8411 4.13023C29.8411 4.21209 29.8188 4.3014 29.7964 4.36093L27.5118 11.9591C27.4671 12.1079 27.3853 12.2567 27.2364 12.3386C27.1099 12.4428 26.9611 12.4874 26.7899 12.4874C26.6188 12.4874 26.4699 12.4428 26.3434 12.3386C26.2169 12.2344 26.1276 12.1079 26.0904 11.9367L24.5574 6.4893L23.0244 11.9963C22.9797 12.1674 22.8755 12.294 22.749 12.3981C22.6225 12.5023 22.4513 12.547 22.2802 12.547C22.109 12.547 21.9602 12.5023 21.8337 12.3981C21.7071 12.294 21.5955 12.1674 21.5583 12.0186L19.2737 4.42791C19.2513 4.36093 19.229 4.27907 19.229 4.18977Z" fill="#1F2937"></path><path d="M30.9351 11.8101V4.18967C30.9351 3.97386 31.0169 3.81014 31.1509 3.6613C31.2997 3.51246 31.4932 3.4306 31.709 3.4306H34.2467C35.0802 3.4306 35.7425 3.6613 36.2485 4.13014C36.762 4.59898 37.0374 5.27618 37.0374 6.15432C37.0374 7.04735 36.7844 7.70967 36.2709 8.17851C35.7574 8.64735 35.0802 8.87805 34.269 8.87805H32.4978V11.8176C32.4978 12.0334 32.4309 12.2194 32.282 12.3683C32.1332 12.5171 31.962 12.5841 31.7239 12.5841C31.4858 12.5841 31.322 12.5022 31.1732 12.3534C31.002 12.1897 30.9351 12.0185 30.9351 11.8101ZM32.4755 7.48642H34.1202C34.5444 7.48642 34.8644 7.35991 35.1025 7.12177C35.3406 6.89107 35.4448 6.54874 35.4448 6.12456C35.4448 5.70037 35.3406 5.35805 35.1025 5.12735C34.8644 4.89665 34.5444 4.78502 34.1425 4.78502H32.4978V7.48642H32.4755V7.48642Z" fill="#1F2937"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M14.3916 15.9999H1.64367C0.720884 15.9999 -0.000976562 15.278 -0.000976562 14.3627V1.63709C-0.000976562 0.721738 0.720884 -0.00012207 1.64367 -0.00012207H14.3916C15.3069 -0.00012207 16.0362 0.721738 16.0362 1.63709V14.3627C16.0362 15.278 15.3069 15.9999 14.3916 15.9999ZM3.96553 13.0231C3.88367 13.0231 3.77205 13.0008 3.69019 12.9785C3.30321 12.8296 3.11716 12.4055 3.266 12.0185L6.61484 3.44546C6.76367 3.06592 7.18786 2.87244 7.57484 3.02127C7.96181 3.17011 8.14786 3.5943 7.99902 3.98127L4.66507 12.5543C4.56088 12.852 4.26321 13.0231 3.96553 13.0231ZM8.76554 11.9366C8.91437 12.0855 9.10786 12.1524 9.30135 12.1524C9.49484 12.1524 9.68833 12.0855 9.83716 11.9366L12.4567 9.33941C12.9255 8.87058 12.9255 8.08174 12.4567 7.6129L9.83716 4.99337C9.56181 4.69569 9.09298 4.69569 8.7953 4.99337C8.49763 5.26872 8.49763 5.73755 8.7953 6.03523L11.2065 8.46127L8.77298 10.8873C8.46042 11.1701 8.46042 11.6389 8.76554 11.9366Z" fill="#1F2937"></path></svg>
			<a href="https://library.wpcode.com/use-snippet/" target="_blank">1-click Use in WordPress</a>
		</div>
		</div></div>


<p class="wp-block-paragraph">Make sure you restart Cursor after saving. </p>



<p class="wp-block-paragraph">WPVibe will appear in the MCP list once it connects.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="268" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-connect-cursor.jpg" alt="Cursor Settings showing the MCP panel with an option to add a new global MCP server" class="wp-image-408727" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-connect-cursor.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-connect-cursor-300x118.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-connecting-windsurf" class="wp-block-heading">Connecting Windsurf</h5>



<p class="wp-block-paragraph">In Windsurf, open the Cascade panel and click the &#8216;Plugins&#8217; icon (puzzle piece). Search for WPVibe, click &#8216;Enable&#8217;, and complete the sign-in flow when prompted.</p>



<p class="wp-block-paragraph">To configure manually instead, edit <code>~/.codeium/windsurf/mcp_config.json</code> and add the following, then restart Windsurf:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: jscript; title: ; notranslate">
{
  &quot;mcpServers&quot;: {
    &quot;wpvibe&quot;: {
      &quot;serverUrl&quot;: &quot;https://mcp.wpvibe.ai/mcp&quot;
    }
  }
}
</pre><div class="wpcode-syntax-footer">
		<div class="wpcode-syntax-code-footer-left">Hosted with ❤️ by <strong><a href="https://wpcode.com" target="_blank">WPCode</a></strong></div>
		<div class="wpcode-syntax-code-footer-right">
			<svg width="65" height="16" viewBox="0 0 65 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M38.0415 7.99972C38.0415 6.44437 38.4062 5.38018 39.128 4.59879C39.8499 3.80995 40.8769 3.42297 42.1941 3.42297C42.8117 3.42297 43.4071 3.54949 43.9206 3.80251C44.4564 4.05553 44.8582 4.39786 45.1782 4.82204C45.2452 4.9039 45.2601 4.99321 45.2601 5.09739C45.2601 5.2239 45.2155 5.31321 45.1336 5.39507C45.0517 5.47693 44.9624 5.52158 44.8359 5.52158C44.6871 5.52158 44.5829 5.4546 44.4936 5.35042C44.2555 5.03042 43.9429 4.75507 43.5113 4.53925C43.1094 4.32344 42.6555 4.21925 42.1643 4.21925C41.1224 4.21925 40.3336 4.53925 39.7755 5.17925C39.2248 5.81925 38.942 6.68995 38.942 7.96995C38.942 9.30948 39.2173 10.2025 39.7531 10.7979C40.2889 11.3932 41.0927 11.7132 42.1643 11.7132C42.6331 11.7132 43.0573 11.6313 43.4889 11.4379C43.8908 11.2444 44.2331 10.9913 44.4936 10.6267C44.5755 10.5225 44.6871 10.4555 44.8359 10.4555C44.9624 10.4555 45.0517 10.5002 45.1336 10.582C45.2155 10.6639 45.2601 10.7755 45.2601 10.8797C45.2601 10.9616 45.2378 11.0509 45.1782 11.1327C44.8806 11.5569 44.4713 11.8993 43.9206 12.1523C43.3699 12.4053 42.7894 12.5318 42.1717 12.5318C40.8322 12.5318 39.8052 12.1523 39.0982 11.4006C38.3987 10.6788 38.0415 9.59228 38.0415 7.99972Z" fill="#1F2937"></path><path d="M46.9268 11.7654C46.4356 11.237 46.1826 10.4258 46.1826 9.36164C46.1826 8.29745 46.4208 7.50862 46.9045 6.98024C47.3956 6.45187 48.0803 6.19141 48.9733 6.19141C49.8663 6.19141 50.551 6.44443 51.0422 6.98024C51.5333 7.50862 51.764 8.29745 51.764 9.36164C51.764 10.4258 51.5259 11.237 51.0422 11.7654C50.551 12.2937 49.8663 12.5765 48.9733 12.5765C48.1026 12.5765 47.418 12.3012 46.9268 11.7654ZM47.0608 9.36164C47.0608 10.9765 47.7008 11.7877 48.9808 11.7877C50.2608 11.7877 50.9008 10.9765 50.9008 9.36164C50.9008 7.74676 50.2608 6.93559 48.9808 6.93559C47.6933 6.93559 47.0608 7.76908 47.0608 9.36164Z" fill="#1F2937"></path><path d="M52.583 9.3839C52.583 7.25553 53.476 6.31786 55.2472 6.31786C55.6491 6.31786 56.0137 6.39972 56.3337 6.57088C56.6537 6.74204 56.9067 6.93553 57.0556 7.18855V3.84716C57.0556 3.72065 57.1002 3.63135 57.1821 3.54949C57.2639 3.46762 57.3532 3.42297 57.4798 3.42297C57.6063 3.42297 57.6956 3.46762 57.7774 3.54949C57.8593 3.63135 57.9039 3.72065 57.9039 3.84716V9.95693C57.9039 10.8053 57.6658 11.4453 57.1821 11.8918C56.7132 12.3383 56.0732 12.569 55.2844 12.569C54.4137 12.569 53.7291 12.2937 53.2602 11.7579C52.8137 11.2369 52.583 10.4481 52.583 9.3839ZM53.4314 9.3839C53.4314 10.9988 54.0491 11.81 55.3067 11.81C55.8425 11.81 56.2667 11.6611 56.5867 11.3411C56.9067 11.0211 57.0556 10.5746 57.0556 9.95693V8.25274C57.0332 8.23042 57.0109 8.18576 56.9886 8.12623C56.9663 8.05925 56.9067 7.97739 56.7951 7.85088C56.6909 7.72437 56.5793 7.59786 56.4528 7.48623C56.3263 7.38204 56.1551 7.29274 55.9616 7.21088C55.7458 7.12902 55.5374 7.08437 55.2993 7.08437C54.6816 7.08437 54.2351 7.27786 53.8928 7.67972C53.5802 8.08158 53.4314 8.57274 53.4314 9.3839Z" fill="#1F2937"></path><path d="M58.9312 9.36193C58.9312 8.3424 59.1693 7.55356 59.653 7.00286C60.1367 6.45216 60.8065 6.16937 61.6772 6.16937C62.0195 6.16937 62.3395 6.21402 62.5925 6.29588C62.8679 6.37774 63.106 6.48937 63.2772 6.63821C63.4484 6.78705 63.6195 6.93588 63.746 7.12937C63.8725 7.30054 63.9842 7.49402 64.0437 7.7024C64.1107 7.91821 64.1479 8.08193 64.1925 8.25309C64.2372 8.42426 64.2372 8.59542 64.2372 8.76658C64.2372 8.89309 64.2372 8.99728 64.2372 9.06426C64.2372 9.13123 64.2149 9.21309 64.1702 9.31728C64.1479 9.42147 64.0884 9.48844 63.9991 9.53309C63.9172 9.57774 63.8279 9.60007 63.7014 9.60007H59.8316C59.8316 10.2624 60.0028 10.7908 60.3674 11.1777C60.7321 11.5573 61.2232 11.7731 61.8409 11.7731C62.1832 11.7731 62.4809 11.7284 62.7116 11.6243C62.9498 11.5201 63.2028 11.3936 63.4335 11.2001C63.5153 11.1331 63.6046 11.1182 63.6716 11.1182C63.7758 11.1182 63.8651 11.1629 63.947 11.2224C64.0139 11.3043 64.0512 11.3936 64.0512 11.4977C64.0512 11.6019 64.0065 11.7136 63.9023 11.7954C63.8205 11.8773 63.6865 11.9889 63.5377 12.0931C63.3888 12.1973 63.1507 12.2866 62.8307 12.3908C62.5107 12.495 62.1684 12.5396 61.8037 12.5396C60.8884 12.5396 60.1814 12.2866 59.6902 11.7508C59.1916 11.2522 58.9312 10.4484 58.9312 9.36193ZM59.8093 8.87077H63.3888C63.3888 8.61774 63.3665 8.37961 63.307 8.17123C63.2623 7.95542 63.1805 7.76937 63.0539 7.57588C62.9274 7.3824 62.7563 7.23356 62.5181 7.12937C62.28 7.02519 62.0046 6.95821 61.6846 6.95821C61.1116 6.95821 60.68 7.12937 60.3377 7.4717C60.0251 7.80658 59.8316 8.27542 59.8093 8.87077Z" fill="#1F2937"></path><path d="M19.229 4.18977C19.229 3.97395 19.3109 3.78791 19.4671 3.63907C19.616 3.49023 19.8095 3.40837 20.0253 3.40837C20.2188 3.40837 20.3899 3.47535 20.5164 3.57954C20.643 3.68372 20.7323 3.81023 20.7695 3.94419L22.3248 9.51814L23.8355 3.96651C23.8802 3.79535 23.962 3.66884 24.1109 3.56465C24.2597 3.46047 24.4085 3.41581 24.5574 3.41581C24.7285 3.41581 24.8774 3.46047 25.0039 3.56465C25.1304 3.66884 25.242 3.79535 25.2792 3.96651L26.7899 9.51814L28.3453 3.92186C28.3899 3.79535 28.4718 3.66884 28.5983 3.55721C28.7248 3.45302 28.8737 3.38605 29.0895 3.38605C29.3053 3.38605 29.4764 3.45302 29.6253 3.60186C29.7741 3.7507 29.8411 3.92186 29.8411 4.13023C29.8411 4.21209 29.8188 4.3014 29.7964 4.36093L27.5118 11.9591C27.4671 12.1079 27.3853 12.2567 27.2364 12.3386C27.1099 12.4428 26.9611 12.4874 26.7899 12.4874C26.6188 12.4874 26.4699 12.4428 26.3434 12.3386C26.2169 12.2344 26.1276 12.1079 26.0904 11.9367L24.5574 6.4893L23.0244 11.9963C22.9797 12.1674 22.8755 12.294 22.749 12.3981C22.6225 12.5023 22.4513 12.547 22.2802 12.547C22.109 12.547 21.9602 12.5023 21.8337 12.3981C21.7071 12.294 21.5955 12.1674 21.5583 12.0186L19.2737 4.42791C19.2513 4.36093 19.229 4.27907 19.229 4.18977Z" fill="#1F2937"></path><path d="M30.9351 11.8101V4.18967C30.9351 3.97386 31.0169 3.81014 31.1509 3.6613C31.2997 3.51246 31.4932 3.4306 31.709 3.4306H34.2467C35.0802 3.4306 35.7425 3.6613 36.2485 4.13014C36.762 4.59898 37.0374 5.27618 37.0374 6.15432C37.0374 7.04735 36.7844 7.70967 36.2709 8.17851C35.7574 8.64735 35.0802 8.87805 34.269 8.87805H32.4978V11.8176C32.4978 12.0334 32.4309 12.2194 32.282 12.3683C32.1332 12.5171 31.962 12.5841 31.7239 12.5841C31.4858 12.5841 31.322 12.5022 31.1732 12.3534C31.002 12.1897 30.9351 12.0185 30.9351 11.8101ZM32.4755 7.48642H34.1202C34.5444 7.48642 34.8644 7.35991 35.1025 7.12177C35.3406 6.89107 35.4448 6.54874 35.4448 6.12456C35.4448 5.70037 35.3406 5.35805 35.1025 5.12735C34.8644 4.89665 34.5444 4.78502 34.1425 4.78502H32.4978V7.48642H32.4755V7.48642Z" fill="#1F2937"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M14.3916 15.9999H1.64367C0.720884 15.9999 -0.000976562 15.278 -0.000976562 14.3627V1.63709C-0.000976562 0.721738 0.720884 -0.00012207 1.64367 -0.00012207H14.3916C15.3069 -0.00012207 16.0362 0.721738 16.0362 1.63709V14.3627C16.0362 15.278 15.3069 15.9999 14.3916 15.9999ZM3.96553 13.0231C3.88367 13.0231 3.77205 13.0008 3.69019 12.9785C3.30321 12.8296 3.11716 12.4055 3.266 12.0185L6.61484 3.44546C6.76367 3.06592 7.18786 2.87244 7.57484 3.02127C7.96181 3.17011 8.14786 3.5943 7.99902 3.98127L4.66507 12.5543C4.56088 12.852 4.26321 13.0231 3.96553 13.0231ZM8.76554 11.9366C8.91437 12.0855 9.10786 12.1524 9.30135 12.1524C9.49484 12.1524 9.68833 12.0855 9.83716 11.9366L12.4567 9.33941C12.9255 8.87058 12.9255 8.08174 12.4567 7.6129L9.83716 4.99337C9.56181 4.69569 9.09298 4.69569 8.7953 4.99337C8.49763 5.26872 8.49763 5.73755 8.7953 6.03523L11.2065 8.46127L8.77298 10.8873C8.46042 11.1701 8.46042 11.6389 8.76554 11.9366Z" fill="#1F2937"></path></svg>
			<a href="https://library.wpcode.com/use-snippet/" target="_blank">1-click Use in WordPress</a>
		</div>
		</div></div>


<p class="wp-block-paragraph"><strong>Note:</strong> Windsurf uses <code>serverUrl</code> (not <code>url</code>) in its config file. Using the wrong key will cause the connection to fail.</p>



<h5 id="aioseo-authorize-your-wordpress-site-64" class="wp-block-heading">Authorize Your WordPress Site</h5>



<p class="wp-block-paragraph">With the MCP URL added to your AI client, go back to <strong>Vibe AI » Vibe AI</strong> in your WordPress dashboard. </p>



<p class="wp-block-paragraph">Under step 3, you&#8217;ll find a ready-to-copy prompt with your site&#8217;s URL already filled in.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="383" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-setup-3.jpg" alt="The WPVibe Setup Page" class="wp-image-409062" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-setup-3.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-setup-3-300x169.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Paste that prompt into your AI chat. Your AI assistant will call WPVibe and return a one-click authorization link. Simply click it to approve the connection.</p>



<p class="wp-block-paragraph">You never see or copy a password. WordPress and WPVibe handle the credentials securely in the background.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="383" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-setup-3-connected-and-ready.jpg" alt="WPVibe site showing connected status in the Vibe AI plugin admin after authorization" class="wp-image-409026" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-setup-3-connected-and-ready.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-setup-3-connected-and-ready-300x169.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h4 id="aioseo-3-things-you-can-do-right-away-worked-examples-95" class="wp-block-heading">What You Can Do Once You&#8217;re Connected (Worked Examples)</h4>



<p class="wp-block-paragraph">Once your AI tool is connected to WordPress, here are the first prompts I tried, including one for <a href="https://www.wpbeginner.com/wp-tutorials/woocommerce-tutorial-ultimate-guide/" title="WooCommerce store owners">WooCommerce store owners</a>.</p>



<p class="wp-block-paragraph">My examples are from Claude Code terminal, but these will work with whichever AI tool you connected. </p>



<h5 id="aioseo-example-1-write-and-draft-a-blog-post-97" class="wp-block-heading">1. Write and Draft a Blog Post</h5>



<p class="wp-block-paragraph">Type this into your AI tool: <em>&#8216;Create a draft WordPress post titled &#8220;How to Start a Blog&#8221; with an intro paragraph explaining why blogging is still worth it.&#8217;</em></p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="345" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-draft-post.png" alt="AI Prompt for Drafting a New Post" class="wp-image-409030" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-draft-post.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-draft-post-300x152.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Your AI assistant calls the WordPress REST API, saves the post as a draft, and returns a confirmation with a link to edit it in wp-admin.</p>



<p class="wp-block-paragraph">Nothing goes live until you choose to publish it yourself.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="369" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-new-draft-post.png" alt="A Draft Post Created Using AI" class="wp-image-409031" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-new-draft-post.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-new-draft-post-300x163.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-example-2-upload-a-photo-to-your-media-library-101" class="wp-block-heading">2. Upload a Photo to Your Media Library</h5>



<p class="wp-block-paragraph">Type: <em>&#8216;Upload this image to my WordPress media library: [paste a public image URL]. Set the alt text to &#8220;A person working at a laptop&#8221;.&#8217;</em></p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="169" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-upload-image.png" alt="AI Prompt for Adding a Public Image to Your WordPress Media Library" class="wp-image-409033" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-upload-image.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-upload-image-300x75.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">WPVibe validates the source URL, downloads the image, and adds it to your media library with the alt text you specified.</p>



<p class="wp-block-paragraph">You can reference it in any post from there.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="346" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-uploaded-image.png" alt="WordPress media library showing a newly uploaded image via MCP" class="wp-image-409034" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-uploaded-image.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-uploaded-image-300x153.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph"><strong>Note:</strong> The prompt above uses a public URL, which is the simplest approach. Uploading a local file from your computer works too, but WPVibe will generate a browser upload link as an intermediate step.</p>



<h5 id="aioseo-example-3-manage-your-woocommerce-store-105" class="wp-block-heading">3. Manage Your WooCommerce Store</h5>



<p class="wp-block-paragraph">WooCommerce 10.9 ships with native MCP support, which exposes product and order abilities through the same standard that WPVibe uses.</p>



<p class="wp-block-paragraph">If your site runs WooCommerce, try: <em>&#8216;Draft a new product called &#8220;Summer T-Shirt&#8221; with a short description and a price of $29.95.&#8217;</em></p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="269" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-new-product.png" alt="AI Prompt for Creating a New WooCommerce Product" class="wp-image-409036" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-new-product.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-new-product-300x119.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">The product saves as a draft in your store. Beyond creating products, your AI can also query orders, update their status, and add order notes, so you can handle routine store admin from the same chat window.</p>



<p class="wp-block-paragraph">You can see the example below. </p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="324" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-new-product.png" alt="A New Product Created by AI and WPVibe" class="wp-image-409037" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-new-product.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-new-product-300x143.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">The next three examples go beyond WordPress&#8217;s built-in actions. On <a href="https://www.wpbeginner.com/news/whats-new-in-wordpress-6-9/" title="What's New in WordPress 6.9? (Features &amp; Screenshots)">WordPress 6.9</a> or later, plugins can register their own actions (called &#8216;abilities&#8217;) that your AI discovers automatically, so if you use these tools, you can drive them from the same chat.</p>



<h5 id="aioseo-aioseo-117" class="wp-block-heading">4. Optimize Your SEO with AI</h5>



<p class="wp-block-paragraph">If you use <a href="https://wordpress.org/plugins/all-in-one-seo-pack" target="_blank" title="Free version of All in One SEO Plugin">AIOSEO</a>, then you can ask your AI to handle common SEO tasks from the chat window. It can check TruSEO scores, generate meta titles and descriptions, and run SEO audits.</p>



<p class="wp-block-paragraph">My starting point was to ask it to find every post missing a meta description and write one for each.</p>



<p class="wp-block-paragraph">Try this prompt: <em>&#8216;Find all posts missing meta descriptions and write and apply them in one go.&#8217;</em></p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="347" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-add-metadescriptions-using-aioseo.png" alt="Claude Code chat showing prompt to find and apply missing AIOSEO meta descriptions" class="wp-image-409038" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-add-metadescriptions-using-aioseo.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-example-add-metadescriptions-using-aioseo-300x153.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">Your AI checks every post, writes the missing meta descriptions, and applies them through AIOSEO in one step.</p>



<p class="wp-block-paragraph">See our <a href="https://www.wpbeginner.com/plugins/users-guide-for-all-in-one-seo-pack/" title="How to Set Up All in One SEO">complete AIOSEO setup guide</a> to get it configured first.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="217" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-add-metadescription-using-aioseo.png" alt="AIOSEO meta description field in WordPress showing an AI-generated meta description" class="wp-image-409039" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-add-metadescription-using-aioseo.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpvibe-preview-add-metadescription-using-aioseo-300x96.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h5 id="aioseo-seedprod-122" class="wp-block-heading">5. Manage Landing Pages and Maintenance Mode</h5>



<p class="wp-block-paragraph">If you use <a href="https://wordpress.org/plugins/coming-soon" target="_blank" title="Free version of SeedProd WordPress Page Builder plugin">SeedProd</a>, then your AI can manage your coming soon page, maintenance mode, and landing page settings without going into wp-admin.</p>



<p class="wp-block-paragraph">For example: <em>&#8216;Check if maintenance mode is currently active&#8217;</em> or <em>&#8216;Enable the coming soon page.&#8217;</em></p>



<h5 id="aioseo-wpforms-125" class="wp-block-heading">6. Build a Form with AI</h5>



<p class="wp-block-paragraph">If you use <a href="https://wordpress.org/plugins/wpforms-lite" target="_blank" title="Free version of WPForms Contact Form builder plugin">WPForms</a>, then your AI can build forms from a plain-English description.</p>



<p class="wp-block-paragraph">Try: <em>&#8216;Create a contact form with name, email, and a message field.&#8217;</em> WPForms creates the form in your dashboard, ready to configure and embed.</p>



<p class="wp-block-paragraph">Before using this, make sure you enable write access under <strong>WPForms » Tools</strong>.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="305" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpforms-enable-write-access.png" alt="Enabling MCP Write Access for WPForms" class="wp-image-409064" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/wpforms-enable-write-access.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/wpforms-enable-write-access-300x135.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">WPForms Lite supports basic field types. Paid plans add phone, date/time, file upload, and more.</p>



<h5 id="see-what-your-site-can-do" class="wp-block-heading">See What Your Site Can Do</h5>



<p class="wp-block-paragraph">You don&#8217;t have to guess which of your plugins support this. Because WPVibe automatically discovers every registered ability, you can just ask your connected AI: <em>&#8216;What can you do on my WordPress site?&#8217;</em></p>



<p class="wp-block-paragraph">It will list the abilities your installed plugins expose, so the answer stays accurate no matter which plugins you run.</p>



<h4 id="aioseo-is-wordpress-mcp-safe-132" class="wp-block-heading">Is WordPress MCP Safe?</h4>



<p class="wp-block-paragraph">I had the same concern when I first tested this. Here&#8217;s how WPVibe handles security.</p>



<p class="wp-block-paragraph">WordPress manages the connection using application passwords, a built-in feature that creates a separate password for each external tool you connect. The AI only gets the permissions of <a href="https://www.wpbeginner.com/beginners-guide/wordpress-user-roles-and-permissions/" title="Beginner's Guide to WordPress User Roles and Permissions">the user account you connected</a>.</p>



<p class="wp-block-paragraph">So, it&#8217;s worth connecting with a limited, non-admin account rather than your main administrator login. If you create a dedicated Editor-role user for the connection, then the AI can only do what an Editor can do.</p>



<p class="wp-block-paragraph">WPVibe encrypts your application password before storing it, using a separate key for each site, and keeps it on secure servers hosted by Cloudflare. Every connection between your AI client, WPVibe, and your WordPress site is encrypted too, so your credentials are never exposed along the way.</p>



<p class="wp-block-paragraph">WPVibe also doesn&#8217;t store your conversation content. It stays within your AI client.</p>



<p class="wp-block-paragraph">On the WordPress side, new posts always save as drafts and deletions go to the trash rather than permanent deletion.</p>



<p class="wp-block-paragraph">To fully revoke access at any time, go to <strong>Users » Profile</strong> in your WordPress dashboard and scroll down to the Application Passwords section to delete it.</p>



<h4 id="aioseo-troubleshooting-connection-issues-141" class="wp-block-heading">Troubleshooting Connection Issues</h4>



<p class="wp-block-paragraph">Connecting your AI client to WordPress is the step that trips people up most often. </p>



<p class="wp-block-paragraph">If the connection fails or WPVibe doesn&#8217;t appear, then work through these checks:</p>



<ul class="wp-block-list">
<li><strong>WPVibe isn&#8217;t in your client&#8217;s tool or MCP list</strong> &#8211; Restart the AI client after saving the config. New MCP servers only load on a fresh start.</li>



<li><strong>The connection fails silently in Windsurf</strong> &#8211; Windsurf uses the <code>serverUrl</code> key, not <code>url</code>. The wrong key produces no error message, so double-check it.</li>



<li><strong>Application passwords won&#8217;t authenticate</strong> &#8211; Your site must <a href="https://www.wpbeginner.com/wp-tutorials/how-to-add-ssl-and-https-in-wordpress/" title="How to Properly Move WordPress from HTTP to HTTPS (Beginner’s Guide)">run on HTTPS</a>. Application passwords don&#8217;t work over <code>http://</code>.</li>



<li><strong>Your AI client can&#8217;t reach the site</strong> &#8211; The site has to be publicly reachable. A local development site won&#8217;t connect unless you expose it through a tunnel.</li>



<li><strong>Authorization keeps failing</strong> &#8211; Re-check that you pasted the correct MCP server URL: <code>https://mcp.wpvibe.ai/mcp</code>.</li>
</ul>



<h4 id="aioseo-frequently-asked-questions-139" class="wp-block-heading">Frequently Asked Questions About WordPress MCP</h4>



<p class="wp-block-paragraph"><strong>Is WPVibe free?</strong></p>



<p class="wp-block-paragraph">Yes. <a href="https://wpvibe.ai" target="_blank" title="WPVibe - Easily Connect AI Assistants With WordPress">WPVibe</a> has no API key costs and everything in this guide works on the free plan. There is now a paid Pro plan (early-access pricing, $99 per year) that adds higher daily usage limits and priority support, not new features, so you don&#8217;t need it for anything covered here.</p>



<p class="wp-block-paragraph"><strong>Does WordPress MCP work with all AI tools?</strong></p>



<p class="wp-block-paragraph">WPVibe works with Claude.ai (web), Claude Desktop, Claude Code, ChatGPT, Cursor, and Windsurf. Because MCP is an open protocol, any new AI tool that adopts the standard will work with the same WPVibe setup automatically.</p>



<p class="wp-block-paragraph"><strong>Does WordPress MCP work with WordPress.com?</strong></p>



<p class="wp-block-paragraph">No, not through WPVibe. WordPress.com has its own built-in MCP setup that works differently. This guide covers self-hosted WordPress (WordPress.org) only.</p>



<p class="wp-block-paragraph"><strong>Do I need WordPress 6.9 to use MCP?</strong></p>



<p class="wp-block-paragraph">No. You can create posts, upload media, and run admin tasks on WordPress 6.0 or later. WordPress 6.9 is only required if you want to use plugin abilities like those from All in One SEO or SeedProd.</p>



<p class="wp-block-paragraph"><strong>Can I connect more than one WordPress site to WPVibe?</strong></p>



<p class="wp-block-paragraph">Yes. WPVibe supports multiple sites under one free account. Install the Vibe AI plugin on each additional site and complete the site authorization step. Your existing WPVibe account covers all your sites.</p>



<p class="wp-block-paragraph"><strong>What happens if I disconnect WPVibe from my site?</strong></p>



<p class="wp-block-paragraph">You can remove a site from WPVibe in the plugin admin or on wpvibe.ai at any time. To fully revoke access, also delete the credential under <strong>Users » Profile » Application Passwords</strong>.</p>



<p class="wp-block-paragraph" id="aioseo-additional-resources-about-wordpress-and-ai-154">I hope this article helped you get WordPress MCP set up on your site. You may also want to see our guide on the <a href="https://www.wpbeginner.com/showcase/best-ai-automation-tools-for-wordpress/" title="I tested 9 best AI automation tools for WordPress (my honest reviews)">best AI Automation Tools for WordPress</a>.</p>



<p class="wp-block-paragraph">If you liked this article, then please subscribe to our&nbsp;<a href="https://youtube.com/wpbeginner?sub_confirmation=1" target="_blank" rel="noreferrer noopener nofollow" title="Subscribe to WPBeginner YouTube Channel">YouTube Channel</a>&nbsp;for WordPress video tutorials. You can also find us on&nbsp;<a href="https://twitter.com/wpbeginner" target="_blank" rel="noreferrer noopener nofollow" title="Follow WPBeginner on Twitter">Twitter</a>&nbsp;and <a href="https://facebook.com/wpbeginner" target="_blank" rel="noreferrer noopener nofollow" title="Join WPBeginner Community on Facebook">Facebook</a>.</p><p>The post <a href="https://www.wpbeginner.com/wp-tutorials/how-to-connect-ai-agents-with-wordpress-using-mcp/">How to Connect AI Agents With WordPress using MCP (Step by Step)</a> first appeared on <a href="https://www.wpbeginner.com">WPBeginner</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.wpbeginner.com/wp-tutorials/how-to-connect-ai-agents-with-wordpress-using-mcp/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title>Introducing HelpJet: The AI Chatbot That Answers Your Customers&#8217; Questions in Seconds</title>
		<link>https://www.wpbeginner.com/news/introducing-helpjet-ai-chatbot-that-answers-customers-questions-in-seconds/</link>
					<comments>https://www.wpbeginner.com/news/introducing-helpjet-ai-chatbot-that-answers-customers-questions-in-seconds/#comments</comments>
		
		<dc:creator><![CDATA[Syed Balkhi]]></dc:creator>
		<pubDate>Tue, 07 Jul 2026 10:00:00 +0000</pubDate>
				<category><![CDATA[News]]></category>
		<category><![CDATA[ai chatbot]]></category>
		<category><![CDATA[announcement]]></category>
		<category><![CDATA[helpjet]]></category>
		<category><![CDATA[herothemes]]></category>
		<guid isPermaLink="false">https://www.wpbeginner.com/?p=408986</guid>

					<description><![CDATA[<p>Ever wanted to build an AI support agent for your WordPress website or WooCommerce store? Imagine customers asking a question at 2 a.m. and getting an instant, accurate answer, pulled straight from your own help docs, website content, and custom private SOPs. Plus, it can&#8230;&#160;<strong><a href="https://www.wpbeginner.com/news/introducing-helpjet-ai-chatbot-that-answers-customers-questions-in-seconds/">Read More &#187;</a></strong></p>
<p>The post <a href="https://www.wpbeginner.com/news/introducing-helpjet-ai-chatbot-that-answers-customers-questions-in-seconds/">Introducing HelpJet: The AI Chatbot That Answers Your Customers’ Questions in Seconds</a> first appeared on <a href="https://www.wpbeginner.com">WPBeginner</a>.</p>]]></description>
										<content:encoded><![CDATA[<p class="wp-block-paragraph">Ever wanted to build an AI support agent for your WordPress website or WooCommerce store?</p>



<p class="wp-block-paragraph">Imagine customers asking a question at 2 a.m. and getting an instant, accurate answer, pulled straight from your own help docs, website content, and custom private SOPs. Plus, it can cut the repetitive 80% of support questions, so your team can focus on the questions that actually need a human.</p>



<p class="wp-block-paragraph">Sadly, most AI support tools on the market are either crazy expensive or very complicated to set up.</p>



<p class="wp-block-paragraph">It simply shouldn&#8217;t be this hard to give your customers fast, helpful answers.</p>



<p class="wp-block-paragraph">That&#8217;s why today, I&#8217;m excited to announce <a href="https://www.wpbeginner.com/refer/helpjet/" target="_blank" rel="noopener nofollow" title="HelpJet">HelpJet</a>, an AI-powered support chatbot that learns your documentation and answers customer questions automatically, 24/7, built by our team at HeroThemes, a <a href="https://www.wpbeginner.com/wpbeginner-growth-fund/" title="WPBeginner Growth Fund">WPBeginner Growth Fund company</a>.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="385" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/the-ai-chatbot-that-featured.jpg" alt="introducing helpjet" class="wp-image-408996" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/the-ai-chatbot-that-featured.jpg 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/the-ai-chatbot-that-featured-300x170.jpg 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<h4 class="wp-block-heading">What Is HelpJet?</h4>



<p class="wp-block-paragraph"><a href="https://www.wpbeginner.com/refer/helpjet/" target="_blank" rel="noopener nofollow" title="HelpJet">HelpJet</a> is a standalone <a href="https://www.wpbeginner.com/showcase/best-chatbots-software-ai/" title="14 Best AI Chatbot Software for Your Website Compared">AI support chatbot</a> that trains on your own content and resolves the bulk of your repetitive tickets automatically.</p>



<figure class="wp-block-image size-full"><a href="https://www.wpbeginner.com/refer/helpjet/" target="_blank" rel=" noreferrer noopener nofollow"><img decoding="async" width="680" height="327" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-homepage.png" alt="Hero banner for HelpJet AI showing a purple background, floating chat windows, and the headline: 'Give your support team the teammate they've always wanted.' including a Get Started Free CTA in the lower area." class="wp-image-408995" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-homepage.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-homepage-300x144.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></a></figure>



<p class="wp-block-paragraph">It can read between the lines, understand what customers actually mean and respond with genuine empathy, especially when the customers are frustrated. In other words, it offers the human touch you’d expect from your best support person, combined with capabilities no human could ever match.</p>



<p class="wp-block-paragraph">Aside from WordPress, it seamlessly integrates with BigCommerce, Shopify, Webflow, and more.</p>



<p class="wp-block-paragraph">Here’s why every small business needs HelpJet:</p>



<ul class="wp-block-list">
<li>Create a custom GPT trained on your own website content. </li>



<li>Add an AI support agent for your business that works 24/7.</li>



<li>Speed up WooCommerce store support and boost sales.</li>
</ul>



<h4 class="wp-block-heading">Train Your AI Chatbot in Five Minutes</h4>



<p class="wp-block-paragraph">Train your AI chatbot by dropping your content like private SOPs, URLs, help articles, and more.</p>



<p class="wp-block-paragraph">If you drop a URL from your WordPress site, then HelpJet asks you which post types to fetch. Select the post types, and it trains from your content.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="679" height="489" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-training.png" alt="Screenshot of a bot-training UI: enter a training URL, choose content types (Posts/Pages), and start training." class="wp-image-408994" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-training.png 679w, https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-training-300x216.png 300w" sizes="(max-width: 679px) 100vw, 679px" /></figure>



<p class="wp-block-paragraph">HelpJet also automatically re-scans your site weekly to stay up-to-date. You can also trigger a manual refresh anytime from your dashboard.</p>



<h4 class="wp-block-heading">Easily Embed the Chatbot on Your Site</h4>



<p class="wp-block-paragraph">The easiest way to embed HelpJet’s chatbot on your website is by installing its WordPress plugin.</p>



<p class="wp-block-paragraph">As soon as the plugin is activated, a floating chat widget will appear on your site.&nbsp;</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="311" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/chatbox-example.png" alt="Cafe interior with a glowing 'CAFE' sign and hanging green pendant lights; on the right, a chat assistant panel with a small Bean &amp; Brew photo and intro text." class="wp-image-408993" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/chatbox-example.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/chatbox-example-300x137.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">You can choose which corner of the screen the widget should appear in, right or left.</p>



<p class="wp-block-paragraph">Additionally, you can embed the chatbot in any articles with the ‘HelpJet Chatbot’ block or <a href="https://www.wpbeginner.com/wp-tutorials/how-to-add-a-shortcode-in-wordpress/" title="How to Add a Shortcode in WordPress (Beginner’s Guide)">with a shortcode</a>.</p>



<h4 class="wp-block-heading">Built to Understand WooCommerce Stores</h4>



<p class="wp-block-paragraph">If you run a WooCommerce store, then HelpJet can help you with pre-sales and post-sales questions. The best part is that it can read product variations, stock levels, shipping classes, and tax rules.</p>



<p class="wp-block-paragraph">So when a shopper asks, &#8220;Is this available in blue?&#8221; or &#8220;Do you offer shipping to Texas?&#8221;, it answers with real information instead of providing a generic answer.</p>



<p class="wp-block-paragraph">For store owners, that&#8217;s the difference between a <a href="https://www.wpbeginner.com/wp-tutorials/ways-to-recover-woocommerce-abandoned-cart-sales/" title="14 Ways to Recover WooCommerce Abandoned Cart Sales">lost sale</a> and a closed one.</p>



<h4 class="wp-block-heading">Route Complex Questions to Your Team</h4>



<p class="wp-block-paragraph">Here&#8217;s the objection I always hear: &#8220;What happens when the bot can&#8217;t answer?&#8221;</p>



<p class="wp-block-paragraph">When a question is too complex, or the customer simply wants a human, HelpJet routes the conversation to your team smoothly.</p>



<p class="wp-block-paragraph">And here&#8217;s the clever part: when your support agent answers, HelpJet learns from that resolution. Next time, it can handle the question on its own.</p>



<p class="wp-block-paragraph">That means your bot gets smarter every single day.</p>



<h4 class="wp-block-heading">Clean Analytics Dashboard to See Exactly What&#8217;s Working</h4>



<p class="wp-block-paragraph">HelpJet includes a clean analytics dashboard so you&#8217;re never guessing.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="439" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-analytics.png" alt="Dashboard of chatbots with stats: Satisfaction 100%, Resolution 100%, Interactions 2, Messages received 2, Messages answered 2; AI Support Assistant active" class="wp-image-408992" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-analytics.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/helpjet-analytics-300x194.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">You can track conversation volume, satisfaction rate, and resolution rate at a glance. You&#8217;ll see the questions customers ask most, which quietly reveal the gaps in your documentation.</p>



<p class="wp-block-paragraph">Every answer gets a thumbs up or down, and the whole activity log is tagged by sentiment.</p>



<h4 class="wp-block-heading">Test Your Chatbot Before You Go Live</h4>



<p class="wp-block-paragraph">You&#8217;d never want an under-trained bot talking to real customers. HelpJet includes a built-in preview environment for exactly this reason.</p>



<figure class="wp-block-image size-full"><img decoding="async" width="680" height="652" src="https://www.wpbeginner.com/wp-content/uploads/2026/07/ready-to-test.png" alt="helpjet ready to test" class="wp-image-408999" srcset="https://www.wpbeginner.com/wp-content/uploads/2026/07/ready-to-test.png 680w, https://www.wpbeginner.com/wp-content/uploads/2026/07/ready-to-test-300x288.png 300w" sizes="(max-width: 680px) 100vw, 680px" /></figure>



<p class="wp-block-paragraph">You can ask the bot real questions, check its answers, and fine-tune its tone and behavior… all before a single customer ever sees it.</p>



<h4 class="wp-block-heading">Built by the Team Behind Heroic Themes</h4>



<p class="wp-block-paragraph">HelpJet comes from <a href="https://www.wpbeginner.com/refer/herothemes/" target="_blank" rel="noopener nofollow" title="HeroThemes">HeroThemes</a>, a team that&#8217;s been building WordPress support software for roughly 15 years. They&#8217;re the folks behind Heroic KB, the popular knowledge-base plugin, and Heroic Inbox, their shared-inbox ticketing tool.</p>



<p class="wp-block-paragraph">Over those years, HeroThemes kept running into the same frustration with Heroic KB customers: businesses had genuinely great documentation, but most visitors never read it. Customers would rather ask or just leave. HelpJet is their answer to that, turning the docs you&#8217;ve already written into instant answers your customers actually get.</p>



<p class="wp-block-paragraph">If you&#8217;re already using Heroic KB or other <a href="https://www.wpbeginner.com/opinion/best-knowledge-base-plugins-for-wordpress-compared/" title="9 Best Knowledge Base Plugins for WordPress (Compared)">knowledge base plugins</a> on your site, then HelpJet works alongside them.&nbsp;</p>



<h4 class="wp-block-heading">Getting Started With HelpJet</h4>



<p class="wp-block-paragraph">Getting up and running takes just a few minutes:</p>



<p class="wp-block-paragraph">✅ Sign up for a <a href="https://www.wpbeginner.com/refer/helpjet/" target="_blank" rel="noopener nofollow" title="free HelpJet account">free HelpJet account</a> (no credit card required).</p>



<p class="wp-block-paragraph">✅ Point it at your help docs, URLs, or PDFs to train your first bot.</p>



<p class="wp-block-paragraph">✅ Preview and fine-tune the answers in the testing environment.</p>



<p class="wp-block-paragraph">✅ Install the WordPress plugin to embed the chatbot on your site.</p>



<p class="wp-block-paragraph">The free plan is genuinely free forever. You get one bot and 100 interactions per month, which is a great way to see the value before you commit to anything.</p>



<p class="wp-block-paragraph">When you&#8217;re ready to scale, the Pro plan runs $29/month (or about $23/month billed annually) with three bots and 1,000 monthly interactions. It also comes with a 14-day free trial, again with no credit card.</p>



<div class="wp-block-buttons has-custom-font-size has-large-font-size is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://www.wpbeginner.com/refer/helpjet/" target="_blank" rel="noreferrer noopener nofollow">Get started with HelpJet today →</a></div>
</div>



<p class="wp-block-paragraph">I&#8217;d love to hear how you&#8217;d use HelpJet on your own site. If there&#8217;s a feature you&#8217;d like to see, let the team know… this is exactly the kind of feedback that shapes a young product.</p>



<p class="wp-block-paragraph">Thanks, as always, for being part of our community. I truly believe HelpJet levels the playing field, giving small businesses the kind of live support that used to be reserved for the giants.</p>



<p class="wp-block-paragraph">Talk soon,</p>



<p class="wp-block-paragraph">Syed Balkhi<br>Founder of WPBeginner</p>



<p class="wp-block-paragraph"><strong>P.S.</strong> Want me to invest in your business? Learn more about the <a href="https://www.wpbeginner.com/wpbeginner-growth-fund/" title="WPBeginner Growth Fund">WPBeginner Growth Fund</a>.</p>



<p class="wp-block-paragraph"></p><p>The post <a href="https://www.wpbeginner.com/news/introducing-helpjet-ai-chatbot-that-answers-customers-questions-in-seconds/">Introducing HelpJet: The AI Chatbot That Answers Your Customers’ Questions in Seconds</a> first appeared on <a href="https://www.wpbeginner.com">WPBeginner</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://www.wpbeginner.com/news/introducing-helpjet-ai-chatbot-that-answers-customers-questions-in-seconds/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
	</channel>
</rss>
