OAuth 2.0 with PKCE
Full authorization code flow with Dynamic Client Registration, refresh tokens, and RFC 8414 discovery endpoints. AI clients register and authenticate automatically β no manual key sharing.
ByteCoreStack MCP Connector turns your WordPress site into a full Model Context Protocol server. Claude, ChatGPT, Gemini, Cursor, and Windsurf connect directly and take real action β authenticated via OAuth 2.0 with PKCE. 316+ tools across 26 categories. Zero cloud relay. Free forever.
One free plugin. Full MCP server. No cloud account required.
Full authorization code flow with Dynamic Client Registration, refresh tokens, and RFC 8414 discovery endpoints. AI clients register and authenticate automatically β no manual key sharing.
Posts, pages, media, users, menus, SEO, WooCommerce, ACF, Elementor, Bricks, Divi, BuddyPress, The Events Calendar, UpdraftPlus, FluentCRM, MemberPress, LearnDash, EDD, MonsterInsights, Sucuri Security, TranslatePress, and more β 316 verified tools across 26 categories, all exposed as MCP tools.
Every MCP tool call is logged with timestamp, tool name, client identifier, and response status. Color-coded badges for Claude, Cursor, Windsurf, ChatGPT, and Gemini. Paginated view, filters by client and date range, and CSV export included.
Capability checks on every tool call, SHA-256 token hashing, SSRF protection on URL downloads, sensitive meta key blocklist, IP allowlist support, and 60 req/min rate limiting per IP. No MCP tool can ever create a WordPress user.
Setup Health checklist, live server status, OAuth client count, today's success/fail stats, a searchable tools browser, and a 7-day sparkline widget on your WordPress dashboard home screen.
A dedicated diagnostics page checks HTTPS, permalink structure, and live OAuth/MCP endpoint reachability, then reports the specific reason a connection would fail β no more guessing from a generic error message.
Register custom MCP tools from any plugin or theme using bcs_mcp_register_tool() or the bcs_mcp_tools filter. Your tools appear automatically in the AI client's tool list alongside the built-in 316+.
Integration tools activate automatically when their plugin is detected β WooCommerce, ACF, Elementor, BuddyPress, UpdraftPlus, FluentCRM, MonsterInsights, Sucuri Security, and 12 more.
Integration tools only appear in the AI client's tool list when their respective plugin is active β WooCommerce, ACF, Elementor, Bricks, Divi, Gravity Forms, WPForms, Ninja Forms, Contact Form 7, MemberPress, LearnDash, EDD, UpdraftPlus, FluentCRM, Redirection, BuddyPress, The Events Calendar, MonsterInsights, Sucuri Security, TranslatePress, and WP Mail SMTP.
Every tool available to connected AI clients β with endpoint path and description. Integration tools only appear when their plugin is active on your site.
wp_get_posts
GET
/posts
List posts with filters
wp_get_post
GET
/posts/{id}
Get a single post by ID
wp_create_post
POST
/posts
Create a new post
wp_update_post
PUT
/posts/{id}
Update an existing post
wp_delete_post
DELETE
/posts/{id}
Delete or trash a post
wp_count_posts
GET
/posts/count
Count posts by type and status
wp_get_post_types
GET
/post-types
List all registered post types
wp_duplicate_post
POST
/posts/{id}/duplicate
Duplicate a post as draft
wp_schedule_post
PUT
/posts/{id}/schedule
Schedule post for future publishing
wp_get_post_format
GET
/posts/{id}/format
Get the post format
wp_set_post_format
PUT
/posts/{id}/format
Set the post format
wp_bulk_trash_posts
DELETE
/posts/bulk-trash
Trash multiple posts by ID in one call
wp_set_post_password
PUT
/posts/{id}/password
Set or clear the password on a post
wp_get_post_statuses
GET
/post-statuses
List all registered post statuses
wp_get_pages
GET
/pages
List pages
wp_get_page
GET
/pages/{id}
Get a single page by ID
wp_create_page
POST
/pages
Create a new page
wp_update_page
PUT
/pages/{id}
Update an existing page
wp_delete_page
DELETE
/pages/{id}
Delete or trash a page
wp_duplicate_page
POST
/pages/{id}/duplicate
Duplicate a page as draft
wp_get_page_template
GET
/pages/{id}/template
Get the page template
wp_set_page_template
PUT
/pages/{id}/template
Set the page template
wp_get_media
GET
/media
List media library items
wp_get_media_item
GET
/media/{id}
Get a single media item
wp_upload_media_from_url
POST
/media/upload-url
Upload image from a URL
wp_upload_media
POST
/media/upload
Upload file from base64 content
wp_set_featured_image
PUT
/posts/{id}/featured-image
Set the featured image on a post
wp_update_media
PUT
/media/{id}
Update media metadata
wp_delete_media
DELETE
/media/{id}
Delete a media item
wp_count_media
GET
/media/count
Count media items by MIME type
wp_get_image_sizes
GET
/media/image-sizes
List all registered image sizes
wp_regenerate_thumbnails
POST
/media/regenerate
Regenerate thumbnails for one or all images
wp_get_attachment_metadata
GET
/media/{id}/metadata
Get full attachment metadata (dimensions, alt, EXIF)
wp_get_categories
GET
/categories
List all categories
wp_get_tags
GET
/tags
List all tags
wp_get_taxonomies
GET
/taxonomies
List registered taxonomies
wp_create_term
POST
/terms
Create a term in a taxonomy
wp_update_term
PUT
/terms/{id}
Update a term
wp_delete_term
DELETE
/terms/{id}
Delete a term from a taxonomy
wp_add_post_terms
PUT
/posts/{id}/terms
Add terms to a post
wp_count_terms
GET
/terms/count
Count terms in a taxonomy
wp_get_term_meta
GET
/terms/{id}/meta
Get term meta values
wp_update_term_meta
PUT
/terms/{id}/meta
Update term meta value
wp_delete_term_meta
DELETE
/terms/{id}/meta
Delete a term meta key
wp_get_comments
GET
/comments
List comments
wp_create_comment
POST
/comments
Create a new comment on a post
wp_delete_comment
DELETE
/comments/{id}
Delete or trash a comment
wp_get_pending_comments
GET
/comments/pending
Get comments awaiting moderation
wp_approve_comment
PUT
/comments/{id}/approve
Approve a pending comment
wp_spam_comment
PUT
/comments/{id}/spam
Mark a comment as spam
wp_trash_comment
PUT
/comments/{id}/trash
Trash a comment
wp_update_comment
PUT
/comments/{id}
Update comment content or author fields
wp_bulk_delete_comments
DELETE
/comments/bulk-delete
Delete or trash multiple comments by ID in one call
wp_get_users
GET
/users
List WordPress users
wp_get_user
GET
/users/{id}
Get a single user by ID
wp_update_user
PUT
/users/{id}
Update an existing user
wp_delete_user
DELETE
/users/{id}
Delete a WordPress user
wp_get_user_sessions
GET
/users/{id}/sessions
Get active sessions for a user
wp_destroy_user_sessions
DELETE
/users/{id}/sessions
Destroy all sessions for a user
wp_get_user_roles
GET
/users/roles
List all registered user roles and capabilities
wp_assign_user_role
PUT
/users/{id}/role
Change a user's role
wp_get_users_by_role
GET
/users/by-role/{role}
List users filtered by role
wp_reset_user_password
POST
/users/{id}/reset-pass
Send a password reset email to a user
wp_export_users_csv
GET
/users/export
Export users list as CSV (formula-injection safe)
wp_get_menus
GET
/menus
List all nav menus
wp_get_menu_items
GET
/menus/{id}/items
List items in a nav menu
wp_create_menu
POST
/menus
Create a new navigation menu
wp_delete_menu
DELETE
/menus/{id}
Delete a navigation menu
wp_create_menu_item
POST
/menus/{id}/items
Create a new menu item
wp_update_menu_item
PUT
/menu-items/{id}
Update a menu item
wp_delete_menu_item
DELETE
/menu-items/{id}
Delete a menu item
wp_reorder_menu_items
PUT
/menus/{id}/reorder
Reorder menu items
wp_get_nav_menu_locations
GET
/menus/locations
List theme menu locations and assigned menus
wp_assign_menu_to_location
PUT
/menus/locations/{slug}
Assign a menu to a theme location
wp_duplicate_menu
POST
/menus/{id}/duplicate
Duplicate a nav menu including all of its items
wp_get_plugins
GET
/plugins
List all installed plugins
wp_activate_plugin
POST
/plugins/activate
Activate an installed plugin
wp_deactivate_plugin
POST
/plugins/deactivate
Deactivate an active plugin
wp_get_themes
GET
/themes
List all installed themes
wp_get_active_theme
GET
/themes/active
Get active theme info
wp_get_theme_mods
GET
/themes/mods
Get all theme modifications
wp_get_custom_css
GET
/themes/custom-css
Get the active theme custom CSS
wp_get_seo_meta
GET
/posts/{id}/seo
Get SEO meta (Yoast, Rank Math, AIOSEO, SEOPress, Slim SEO, The SEO Framework)
wp_update_seo_meta
PUT
/posts/{id}/seo
Update SEO title, description, focus keyword, or noindex for a post
seo_bulk_get_meta
GET
/seo/bulk
Bulk SEO audit β list titles, descriptions, and keywords across posts
seo_get_site_settings
GET
/seo/site-settings
Get site-wide SEO title separator and homepage title/description
wp_get_media_missing_alt_text
GET
/media/missing-alt
List media items missing alt text
wp_find_broken_links
GET
/site/broken-links
Scan site content for broken internal/external links
wp_get_orphaned_media
GET
/media/orphaned
List media items not attached to any post
wp_get_content_gaps
GET
/site/content-gaps
Audit content for missing categories, thin posts, or stale pages
redirection_get_redirects
GET
/redirection/redirects
List URL redirects (requires Redirection)
redirection_create_redirect
POST
/redirection/redirects
Create a new URL redirect (requires Redirection)
redirection_delete_redirect
DELETE
/redirection/redirects/{id}
Delete a URL redirect (requires Redirection)
wp_get_site_info
GET
/site
Get basic site information
wp_search
GET
/search
Search WordPress content
wp_get_site_health
GET
/site/health
Get site health summary
wp_get_site_health_tests
GET
/site/health/tests
Run full Site Health diagnostics (critical/recommended/passed counts)
wp_get_multisite_info
GET
/site/multisite
Check multisite status and list network sites
wp_get_option
GET
/options/{name}
Get a WordPress option value
wp_get_plugin_settings
GET
/options/plugin
Get plugin option values by slug
wp_send_email
POST
/email
Send an email via wp_mail
wp_list_cron_jobs
GET
/cron
List scheduled WP-Cron jobs
wp_flush_rewrite_rules
POST
/site/flush-rewrites
Flush and regenerate rewrite rules
wp_run_shortcode
POST
/shortcode
Execute a shortcode and return HTML output
wp_get_post_meta
GET
/posts/{id}/meta
Get post meta values
wp_update_post_meta
PUT
/posts/{id}/meta
Update a post meta value
wp_delete_post_meta
DELETE
/posts/{id}/meta/{key}
Delete a post meta key
wp_get_user_meta
GET
/users/{id}/meta
Get user meta values
wp_update_user_meta
PUT
/users/{id}/meta
Update a user meta value
wp_delete_user_meta
DELETE
/users/{id}/meta/{key}
Delete a user meta key
wp_get_post_revisions
GET
/posts/{id}/revisions
List revisions for a post
wp_restore_revision
PUT
/revisions/{id}/restore
Restore post to a previous revision
wp_get_permalink_structure
GET
/site/permalinks
Get the permalink structure
wp_get_reusable_blocks
GET
/blocks
List reusable blocks
wp_create_reusable_block
POST
/blocks
Create a new reusable block
wp_parse_blocks
POST
/blocks/parse
Parse Gutenberg block structure from post content
wp_get_block_patterns
GET
/blocks/patterns
List all registered block patterns
wp_get_registered_sidebars
GET
/widgets/sidebars
List all registered widget areas
wp_get_sidebar_widgets
GET
/widgets/sidebars/{sidebar}
Get widgets in a specific sidebar
wp_get_cache_status
GET
/cache/status
Detect which page-caching and object-caching plugins are active
wp_get_transient
GET
/cache/transient/{key}
Get a transient value
wp_set_transient
PUT
/cache/transient/{key}
Set a transient value with expiration
wp_delete_transient
DELETE
/cache/transient/{key}
Delete a transient
wp_flush_cache
POST
/cache/flush
Flush the WordPress object cache
wp_purge_cache
POST
/cache/purge
Purge full-page cache (Rocket, W3TC, etc.)
wp_get_server_info
GET
/dev/server-info
PHP version, memory limits, WordPress environment
wp_get_php_info
GET
/dev/php-info
Get PHP runtime configuration and extensions
wp_get_database_size
GET
/dev/db-size
Size and row count for every database table
wp_optimize_tables
POST
/dev/db-optimize
Optimize all WordPress database tables
wp_search_replace_content
POST
/dev/search-replace
Find & replace text in post content (dry-run support)
wp_get_debug_log
GET
/dev/debug-log
Read last N lines from wp-content/debug.log
wp_get_error_log
GET
/dev/error-log
Read recent PHP error log entries
wp_get_plugin_updates_available
GET
/dev/plugin-updates
List plugins with an available update
wp_get_core_update_status
GET
/dev/core-update
Check WordPress core update status
wp_get_ssl_status
GET
/dev/ssl-status
Check SSL certificate validity and expiry
smtp_get_config_status
GET
/smtp/status
Get outgoing mail configuration status (requires WP Mail SMTP)
wc_get_products
GET
/wc/products
List WooCommerce products
wc_create_product
POST
/wc/products
Create a new WooCommerce product
wc_update_product
PUT
/wc/products/{id}
Update a WooCommerce product
wc_delete_product
DELETE
/wc/products/{id}
Delete a WooCommerce product
wc_get_orders
GET
/wc/orders
List WooCommerce orders
wc_get_order
GET
/wc/orders/{id}
Get full details of a single order
wc_update_order_status
PUT
/wc/orders/{id}/status
Update order status
wc_refund_order
POST
/wc/orders/{id}/refund
Create a refund for an order
wc_get_order_notes
GET
/wc/orders/{id}/notes
List notes and history for an order
wc_add_order_note
POST
/wc/orders/{id}/notes
Add a private or customer note to an order
wc_get_customers
GET
/wc/customers
List WooCommerce customers
wc_get_coupons
GET
/wc/coupons
List WooCommerce coupons
wc_create_coupon
POST
/wc/coupons
Create a new coupon
wc_get_coupon
GET
/wc/coupons/{id}
Get a single coupon by ID or code
wc_update_coupon
PUT
/wc/coupons/{id}
Update an existing coupon
wc_delete_coupon
DELETE
/wc/coupons/{id}
Delete a coupon
wc_get_inventory
GET
/wc/inventory
Get product inventory levels
wc_update_stock
PUT
/wc/products/{id}/stock
Update product stock quantity
wc_get_product_categories
GET
/wc/categories
List WooCommerce product categories
wc_get_store_stats
GET
/wc/stats
Get store revenue, orders, and customer stats
wc_get_shipping_zones
GET
/wc/shipping-zones
List shipping zones and their methods
wc_get_payment_gateways
GET
/wc/payment-gateways
List configured payment gateways
wc_get_tax_rates
GET
/wc/tax-rates
List WooCommerce tax rates and classes
wc_get_product_variations
GET
/wc/products/{id}/variations
List all variations of a variable product
wc_get_variation
GET
/wc/products/{id}/variations/{v}
Get a single product variation
wc_create_variation
POST
/wc/products/{id}/variations
Create a variation on a variable product
wc_update_variation
PUT
/wc/products/{id}/variations/{v}
Update variation price/stock/attributes
wc_delete_variation
DELETE
/wc/products/{id}/variations/{v}
Delete a product variation
wc_batch_update_variations
PUT
/wc/products/{id}/variations
Bulk-update multiple variations at once
wc_get_product_attributes
GET
/wc/attributes
List all global product attributes
wc_create_product_attribute
POST
/wc/attributes
Create a new global product attribute
wc_get_attribute_terms
GET
/wc/attributes/{id}/terms
List terms for a product attribute
wc_set_product_attributes
PUT
/wc/products/{id}/attributes
Set attributes on a product
wc_get_subscriptions
GET
/wc/subscriptions
List WooCommerce Subscriptions (requires WooCommerce Subscriptions)
wc_cancel_subscription
PUT
/wc/subscriptions/{id}/cancel
Cancel a subscription
wc_get_bookings
GET
/wc/bookings
List WooCommerce Bookings (requires WooCommerce Bookings)
wp_get_acf_fields
GET
/acf/fields/{post_id}
Get all ACF fields for a post
wp_update_acf_field
PUT
/acf/fields/{post_id}
Update an ACF field value
wp_get_acf_field_groups
GET
/acf/groups
List all ACF field groups
wp_duplicate_acf_field_group
POST
/acf/groups/{id}/duplicate
Duplicate an ACF field group
wp_get_acf_field_group_def
GET
/acf/groups/{id}/definition
Get the full field definition for a field group
wp_get_acf_options
GET
/acf/options
Read ACF options page values
wp_update_acf_options
PUT
/acf/options
Write ACF options page values
wp_get_acf_options_pages
GET
/acf/options/pages
List registered ACF options pages
wp_add_acf_repeater_row
POST
/acf/fields/{post_id}/repeater
Add a row to an ACF repeater field
wp_delete_acf_repeater_row
DELETE
/acf/fields/{post_id}/repeater/{row}
Delete a row from an ACF repeater field
wp_add_acf_flexible_row
POST
/acf/fields/{post_id}/flexible
Add a layout row to an ACF flexible content field
wp_delete_acf_flexible_row
DELETE
/acf/fields/{post_id}/flexible/{row}
Delete a layout row from an ACF flexible content field
wp_get_acf_json_sync_status
GET
/acf/local-json/status
Check ACF Local JSON sync status for field groups
wp_get_acf_field_types
GET
/acf/field-types
List available ACF field types
elementor_list_templates
GET
/elementor/templates
List all saved Elementor templates
elementor_clone_page
POST
/elementor/pages/{id}/clone
Clone a page and its Elementor data
elementor_get_page_outline
GET
/elementor/pages/{id}/outline
Get sections/widgets structure of a page
elementor_bulk_replace_text
POST
/elementor/replace-text
Find and replace text across all Elementor pages
elementor_swap_image
POST
/elementor/swap-image
Replace an image URL across all pages
elementor_import_template
POST
/elementor/templates
Import an Elementor template from JSON
elementor_get_global_widgets
GET
/elementor/global-widgets
List Elementor global widgets
bricks_get_page_elements
GET
/bricks/pages/{id}/elements
Read a page's Bricks Builder element tree
bricks_clone_page
POST
/bricks/pages/{id}/clone
Clone a page with its Bricks Builder content
divi_get_page_content
GET
/divi/pages/{id}/content
Read a page's Divi Builder shortcode content
divi_clone_page
POST
/divi/pages/{id}/clone
Clone a page with its Divi Builder content
gf_get_forms
GET
/gf/forms
List all Gravity Forms
gf_get_entries
GET
/gf/forms/{id}/entries
Get entries for a Gravity Form
gf_create_entry
POST
/gf/forms/{id}/entries
Create a Gravity Forms entry
gf_update_entry
PUT
/gf/entries/{id}
Update a Gravity Forms entry
cf7_get_forms
GET
/cf7/forms
List all Contact Form 7 forms
cf7_get_form_fields
GET
/cf7/forms/{id}/fields
Read CF7 form fields and mail settings
wpforms_get_forms
GET
/wpforms/forms
List all WPForms
wpforms_get_entries
GET
/wpforms/forms/{id}/entries
Get entries for a WPForm (requires WPForms Pro or entry storage)
nf_get_forms
GET
/nf/forms
List all Ninja Forms
nf_get_submissions
GET
/nf/forms/{id}/submissions
Get submissions for a Ninja Form
ff_get_forms
GET
/ff/forms
List all Formidable Forms
ff_get_entries
GET
/ff/forms/{id}/entries
Get entries for a Formidable Form
um_get_members
GET
/um/members
List Ultimate Member profiles
ur_get_registrations
GET
/ur/registrations
List User Registration form submissions
ur_get_forms
GET
/ur/forms
List User Registration forms
updraft_list_backups
GET
/updraft/backups
List all UpdraftPlus backup sets
updraft_trigger_backup
POST
/updraft/backups
Trigger a new UpdraftPlus backup
updraft_get_job_status
GET
/updraft/backups/{job_id}
Check the status of a backup job
duplicator_list_packages
GET
/duplicator/packages
List Duplicator migration/backup packages
ai1wm_list_backups
GET
/ai1wm/backups
List All-in-One WP Migration backup files
fluentcrm_get_contacts
GET
/fluentcrm/contacts
List FluentCRM contacts
fluentcrm_upsert_contact
POST
/fluentcrm/contacts
Create or update a FluentCRM contact by email
fluentcrm_get_campaigns
GET
/fluentcrm/campaigns
List FluentCRM email campaigns
mailchimp_get_lists
GET
/mailchimp/lists
List Mailchimp for WP audiences
mailchimp_get_subscribers
GET
/mailchimp/lists/{id}/subscribers
List subscribers on a Mailchimp audience
affwp_get_affiliates
GET
/affwp/affiliates
List AffiliateWP affiliates
affwp_get_referrals
GET
/affwp/referrals
List AffiliateWP referrals
affwp_get_creatives
GET
/affwp/creatives
List AffiliateWP creatives
givewp_get_forms
GET
/givewp/forms
List GiveWP donation forms
givewp_get_donations
GET
/givewp/donations
List GiveWP donations
givewp_get_donors
GET
/givewp/donors
List GiveWP donors
wpsp_get_payment_forms
GET
/wpsp/forms
List WP Simple Pay payment forms
wpsp_get_payments
GET
/wpsp/payments
List WP Simple Pay one-time and subscription payments
mailchimp_get_campaigns
GET
/mailchimp/campaigns
List Mailchimp for WP campaigns
learndash_get_courses
GET
/learndash/courses
List all LearnDash courses
learndash_get_course_progress
GET
/learndash/users/{id}/progress
Get a user's course progress
learndash_enroll_user
POST
/learndash/courses/{id}/enroll
Enroll or unenroll a user in a course
memberpress_get_memberships
GET
/memberpress/memberships
List all MemberPress memberships
memberpress_get_members
GET
/memberpress/members
List MemberPress members
memberpress_get_member_subscriptions
GET
/memberpress/members/{id}/subscriptions
Get a member's subscriptions and transaction history
rcp_get_memberships
GET
/rcp/memberships
List Restrict Content Pro memberships
rcp_get_members
GET
/rcp/members
List Restrict Content Pro members
rcp_grant_membership
POST
/rcp/members/{id}/grant
Grant a Restrict Content Pro membership to a user
wc_memberships_get_plans
GET
/wc-memberships/plans
List WooCommerce Memberships plans
wc_memberships_get_members
GET
/wc-memberships/members
List WooCommerce Memberships members
wc_memberships_grant
POST
/wc-memberships/members/{id}/grant
Grant a WooCommerce membership to a user
edd_get_products
GET
/edd/products
List Easy Digital Downloads products
edd_get_orders
GET
/edd/orders
List EDD orders
edd_get_order
GET
/edd/orders/{id}
Get full details of a single EDD order
edd_get_customers
GET
/edd/customers
List EDD customers
edd_get_store_stats
GET
/edd/stats
Get EDD store revenue and sales stats
bp_get_members
GET
/bp/members
List BuddyPress members
bp_get_xprofile_fields
GET
/bp/members/{id}/xprofile
Read extended profile (xProfile) fields for a member
bp_get_activity
GET
/bp/activity
Read the BuddyPress activity stream
bp_create_activity
POST
/bp/activity
Post to the BuddyPress activity stream
bp_get_groups
GET
/bp/groups
List BuddyPress groups
bp_create_group
POST
/bp/groups
Create a new BuddyPress group
bp_get_group_members
GET
/bp/groups/{id}/members
List members of a BuddyPress group
bp_get_friend_connections
GET
/bp/members/{id}/friends
List a member's friend connections
bbp_get_forums
GET
/bbpress/forums
List bbPress forums
bbp_get_topics
GET
/bbpress/forums/{id}/topics
List topics in a bbPress forum
bbp_get_replies
GET
/bbpress/topics/{id}/replies
List replies to a bbPress topic
bbp_create_reply
POST
/bbpress/topics/{id}/replies
Post a reply to a bbPress topic
tec_get_events
GET
/tec/events
List events
tec_get_event
GET
/tec/events/{id}
Get a single event by ID
tec_create_event
POST
/tec/events
Create a new event
tec_update_event
PUT
/tec/events/{id}
Update an existing event
tec_delete_event
DELETE
/tec/events/{id}
Delete an event
tec_get_venues
GET
/tec/venues
List event venues
tec_get_organizers
GET
/tec/organizers
List event organizers
tec_get_event_categories
GET
/tec/categories
List event categories
tec_get_event_tags
GET
/tec/tags
List event tags
wpml_get_active_languages
GET
/wpml/languages
List active WPML languages
wpml_get_post_language
GET
/wpml/posts/{id}/language
Get a post's assigned language
wpml_set_post_language
PUT
/wpml/posts/{id}/language
Set a post's language
wpml_get_post_translations
GET
/wpml/posts/{id}/translations
Get a post's linked translations
wpml_get_term_translations
GET
/wpml/terms/{id}/translations
Get a term's linked translations
wpml_create_translation
POST
/wpml/posts/{id}/translations
Create a linked translation of a post
pll_get_translatable_types
GET
/polylang/translatable-types
List translatable post types and taxonomies (requires Polylang)
pll_get_string_translations
GET
/polylang/strings
Read Polylang String Translations
tp_get_languages
GET
/translatepress/languages
Get default and configured languages (requires TranslatePress)
tp_search_string_translations
GET
/translatepress/strings
Search TranslatePress string translations
sitekit_get_analytics_report
GET
/sitekit/analytics/report
Get a Google Analytics report via Site Kit
sitekit_get_top_pages
GET
/sitekit/analytics/top-pages
Get top pages via Site Kit
sitekit_get_adsense_earnings
GET
/sitekit/adsense/earnings
Get AdSense earnings via Site Kit
sitekit_get_search_console_queries
GET
/sitekit/search-console/queries
Get Search Console query data via Site Kit
wpstatistics_get_summary
GET
/wpstatistics/summary
Get a visit summary from WP Statistics
wpstatistics_get_top_pages
GET
/wpstatistics/top-pages
Get top pages from WP Statistics
wpstatistics_get_online_users
GET
/wpstatistics/online-users
Get currently online visitor count
wpstatistics_get_referrers
GET
/wpstatistics/referrers
Get referrer breakdown from WP Statistics
wpstatistics_get_browsers
GET
/wpstatistics/browsers
Get browser/platform/country breakdown
mi_get_connection_status
GET
/monsterinsights/status
Get MonsterInsights connection status
mi_get_settings
GET
/monsterinsights/settings
Get MonsterInsights tracking settings
wpai_get_import_definitions
GET
/wpallimport/imports
List WP All Import import definitions
wpai_run_import
POST
/wpallimport/imports/{id}/run
Run a WP All Import import job
wpae_get_export_definitions
GET
/wpallexport/exports
List WP All Export export definitions
cptui_get_post_types
GET
/cptui/post-types
List custom post types registered via CPT UI
cptui_create_post_type
POST
/cptui/post-types
Create a custom post type via CPT UI
cptui_get_taxonomies
GET
/cptui/taxonomies
List custom taxonomies registered via CPT UI
cptui_create_taxonomy
POST
/cptui/taxonomies
Create a custom taxonomy via CPT UI
cptui_delete_post_type
DELETE
/cptui/post-types/{id}
Delete a custom post type via CPT UI
snippets_get_audit
GET
/code-snippets/audit
List active Code Snippets for a security/quality audit
wordfence_get_scan_issues
GET
/wordfence/scan-issues
List issues from the last Wordfence scan
wordfence_get_firewall_status
GET
/wordfence/firewall
Get Wordfence firewall status
twofactor_get_user_status
GET
/2fa/users/{id}/status
Get a user's Two Factor authentication status
cookieyes_get_consent_status
GET
/cookieyes/status
Get CookieYes cookie consent status
complianz_get_status
GET
/complianz/status
Get Complianz privacy/cookie compliance status
akismet_get_spam_stats
GET
/akismet/stats
Get Akismet spam-filtering statistics
jetpack_get_connection_status
GET
/jetpack/status
Get Jetpack connection status
sucuri_get_scan_status
GET
/sucuri/scan-status
Get Sucuri Security malware scan status (requires Sucuri Security)
sucuri_get_firewall_status
GET
/sucuri/firewall
Get Sucuri Security firewall/connection status
316 is the total across all supported integrations. A site without WooCommerce, BuddyPress, or other integrations will see roughly 124 core tools; each supported plugin you activate adds its tools automatically.
No developer. No API keys to manage manually. Just WordPress and your AI client.
Install from WordPress.org and activate. The MCP server starts immediately β no configuration needed to enable the endpoint. Running Wordfence or a similar security plugin? Check its firewall for a "restrict the REST API to logged-in users" toggle first β see the FAQ below.
Copy the MCP URL from MCP Connector β Dashboard and add it to Claude.ai, Claude Desktop, ChatGPT, Cursor, or any MCP-compatible client. The client handles OAuth registration automatically.
You'll be redirected to an authorization screen in your own wp-admin. Approve once β the AI client manages tokens from that point. Ask Claude to write a post, update products, or query any WordPress data.
Anything else? Open an issue on the WordPress.org support forum.
MCP is an open standard created by Anthropic that lets AI assistants connect to external tools and data sources in a structured, authenticated way. When your WordPress site runs an MCP server, Claude and other AI clients can see and use your WordPress data β writing posts, managing products, updating SEO β without you needing to copy/paste anything.
Any client that implements the MCP specification. Tested and confirmed working with Claude (claude.ai and Claude Desktop), ChatGPT, Cursor, and Windsurf. Gemini uses the same standard protocol and is expected to work via Google AI Studio's MCP integrations. The plugin uses Streamable HTTP transport with a legacy SSE fallback so it works with both new and older client versions.
Every tool call enforces WordPress capabilities β the AI can only do what your user account is allowed to do. Tokens are stored as SHA-256 hashes, never plaintext. PKCE is required on every OAuth flow. Sensitive meta keys (passwords, session tokens, API secrets) are on a permanent blocklist. You can further restrict access with the IP allowlist feature.
No. The plugin contains no analytics, telemetry, or tracking of any kind. The only outbound HTTP call it makes is when the wp_upload_media_from_url tool is explicitly invoked by your connected AI client to download an image β and even then it connects to the URL the AI specified, not to any ByteCore Stack server.
No. All integration tools are included in the plugin and activate automatically when their plugin is detected β WooCommerce, ACF, Elementor, Bricks Builder, Divi Builder, Gravity Forms, Contact Form 7, WPForms, Ninja Forms, MemberPress, LearnDash, Easy Digital Downloads, UpdraftPlus, FluentCRM, Redirection, BuddyPress, The Events Calendar, MonsterInsights, Sucuri Security, TranslatePress, and WP Mail SMTP. If a plugin isn't installed, its tools simply don't appear in the AI client's tool list β no errors, no configuration required.
No β that's expected. 316+ is the plugin's total across every supported integration. Your AI client only sees tools whose dependencies are actually satisfied on your site. A fresh WordPress install with no companion plugins sees roughly 124 core tools; each supported integration plugin you activate adds its tools automatically.
Possibly β this is the single most common reason a connection fails on the first try. Security plugins like Wordfence and All In One WP Security commonly ship a firewall setting that restricts the REST API to logged-in users. This plugin's MCP/OAuth endpoints are intentionally reachable without a WordPress login, since they authenticate the AI client via OAuth Bearer tokens instead of a WordPress session. As of version 1.2.1 this plugin automatically exempts its own routes from that kind of lockdown, so most users won't need to do anything β but if a connection still fails, allowlist /.well-known/oauth-*, /authorize, /token, /register, and /wp-json/bcs-mcp/* (including the DELETE method) in your security plugin's firewall. Run Diagnostics β Test Connection for a specific, current status on each check.
This usually means the OAuth rewrite rules haven't been flushed. Log in to wp-admin once β the plugin auto-flushes on the first admin page load after activation or update. If the error persists, go to Settings β Permalinks and click Save Changes. You can also check the Connection Test page for a specific diagnosis.
Yes. Use bcs_mcp_register_tool( 'my_tool', 'Description', $schema, $callback ) from any plugin or theme, or hook into the bcs_mcp_tools filter directly. Your custom tools appear in the AI client's tool list alongside the built-in 316+.
Free to install. No account required. No paid plan. 316+ tools, 26 categories.
Connect Claude, ChatGPT, or Cursor once and let it manage your site.