{"id":382378,"date":"2026-11-11T18:48:47","date_gmt":"2026-11-11T18:48:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/weblymcp-connect\/"},"modified":"2026-11-13T09:50:34","modified_gmt":"2026-11-13T09:50:34","slug":"weblymcp-connect","status":"publish","type":"plugin","link":"https:\/\/es-do.wordpress.org\/plugins\/weblymcp-connect\/","author":23556105,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"0.4.28","stable_tag":"0.4.28","tested":"7.1.4","requires":"6.4","requires_php":"8.2","requires_plugins":null,"header_name":"WeblyMCP Connect","header_author":"WeblyArts","header_description":"WordPress MCP server for WeblyMCP cloud. Requires WeblyConnect.","last_updated":"2026-11-13 09:50:34","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/suite.weblyarts.com\/weblymcp-connect\/","header_author_uri":"https:\/\/weblyarts.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":179,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.4.28":{"tag":"0.4.28","author":"weblyarts","date":"2026-11-13 09:50:34","revision":3800138}},"upgrade_notice":{"0.4.27":"<p>Directory review. The site key works only on the MCP route. Reconnect if content tools stop after this update.<\/p>","0.4.26":"<p>Sites that set image alt text from the cloud need this update. Protected meta keys stay closed.<\/p>","0.4.25":"<p>PHP-FPM now reads the Bearer from HTTP_AUTHORIZATION. Update if Play still returns 401 after 0.4.24.<\/p>","0.4.24":"<p>Inbound MCP login no longer depends on REST_REQUEST timing. Update on the connected site if cloud agents get 401 on content tools.<\/p>","0.4.23":"<p>Remote administration tools are removed. Reconnect the dossier if inbound content tools stop working. Reinstall from a complete zip if vendor\/ is missing.<\/p>","0.4.22":"<p>WordPress.org review fixes. Reinstall from a complete zip if vendor\/ is missing.<\/p>","0.4.21":"<p>WordPress.org review fixes. Reinstall from a complete zip if vendor\/ is missing.<\/p>","0.4.20":"<p>WordPress.org review fixes. Reinstall from a complete zip if vendor\/ is missing.<\/p>","0.4.19":"<p>WordPress.org review fixes. Reinstall from a complete zip if vendor\/ is missing.<\/p>","0.4.17":"<p>WordPress.org review fixes. Reinstall from a complete zip if vendor\/ is missing.<\/p>","0.4.16":""},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3796871,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3796871,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3796871,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3796871,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3796871,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.4.28"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[569,16179,242115,23853,286],"plugin_category":[45],"plugin_contributors":[278834],"plugin_business_model":[],"class_list":["post-382378","plugin","type-plugin","status-publish","hentry","plugin_tags-automation","plugin_tags-integrations","plugin_tags-mcp","plugin_tags-rest-api","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-weblyarts","plugin_committers-weblyarts"],"banners":{"banner":"https:\/\/ps.w.org\/weblymcp-connect\/assets\/banner-772x250.png?rev=3796871","banner_2x":"https:\/\/ps.w.org\/weblymcp-connect\/assets\/banner-1544x500.png?rev=3796871","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/weblymcp-connect\/assets\/icon.svg?rev=3796871","icon":"https:\/\/ps.w.org\/weblymcp-connect\/assets\/icon.svg?rev=3796871","icon_2x":false,"generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p><strong>Drafts should land on the site, not in a paste buffer.<\/strong><\/p>\n\n<p>WeblyMCP Connect is the content layer agents use on WordPress. They can list and update posts, pages and media, moderate comments, read Contact Form 7, and work with WooCommerce when that plugin is active. You decide what they may change.<\/p>\n\n<p>This is not the chat widget. Visitor chat is <strong><a href=\"https:\/\/wordpress.org\/plugins\/weblyagent-connect\/\">WeblyAgent Connect<\/a><\/strong>. This plugin does not install other plugins, manage users, or call arbitrary WordPress REST routes.<\/p>\n\n<h4>What agents can do here<\/h4>\n\n<ul>\n<li>Publish and update posts, pages and media you approve<\/li>\n<li>Read and moderate comments<\/li>\n<li>Use WooCommerce products, orders and reviews when WooCommerce is active<\/li>\n<li>Read Contact Form 7 forms and the submissions you already store<\/li>\n<li>Use the cloud tools you connect in WeblySuite (calendar, mail, Jira, GitHub, Stripe and the rest of your plan). Those tools are not inside this zip.<\/li>\n<\/ul>\n\n<h4>Install it with the family<\/h4>\n\n<p>All three plugins are in the Plugin Directory.<\/p>\n\n<ul>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/weblyconnect\/\">WeblyConnect<\/a><\/strong> is required<\/li>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/weblyagent-connect\/\">WeblyAgent Connect<\/a><\/strong> if you also want the visitor chat widget<\/li>\n<li>This plugin, when agents should touch content<\/li>\n<\/ul>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/weblyconnect\/\">WeblyConnect<\/a><\/strong> (required; <code>Requires Plugins: weblyconnect<\/code>)<\/li>\n<li>A WeblySuite account<\/li>\n<li><strong><a href=\"https:\/\/wordpress.org\/plugins\/weblyagent-connect\/\">WeblyAgent Connect<\/a><\/strong> if you want the visitor chat widget (optional)<\/li>\n<\/ul>\n\n<p>WeblyConnect stores the WeblyToken. Extra integration seats come from your plan. WeblySuite enforces those seats on the service. This zip does not hide PHP files behind a license key.<\/p>\n\n<h4>WeblySuite ecosystem<\/h4>\n\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/weblyconnect\/\">WeblyConnect<\/a> (required)<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/weblyagent-connect\/\">WeblyAgent Connect<\/a> (visitor chat)<\/li>\n<li>WeblyMCP Connect (this plugin)<\/li>\n<\/ul>\n\n<p>Product page: https:\/\/suite.weblyarts.com\/weblymcp-connect\/<\/p>\n\n<p>WeblySuite: https:\/\/suite.weblyarts.com\/<\/p>\n\n<p>Terms of Service: https:\/\/suite.weblyarts.com\/terms-of-service\/<\/p>\n\n<p>Terms of Service (EN): https:\/\/suite.weblyarts.com\/terms-of-service-en\/<\/p>\n\n<p>Privacy Policy: https:\/\/weblyarts.com\/en\/privacy<\/p>\n\n<h4>Bundled libraries<\/h4>\n\n<p>Runtime PHP libraries live in <code>vendor\/<\/code> (including <code>mcp\/sdk<\/code>). They are shipped in the plugin zip. Site owners do not run Composer.<\/p>\n\n<pre><code>vendor\/phpstan\/phpdoc-parser is a runtime dependency of `phpdocumentor\/reflection-docblock` used by `mcp\/sdk`. It is not the PHPStan analyser.\n<\/code><\/pre>\n\n<h3>External services<\/h3>\n\n<p>This plugin talks to WeblyArts and, only after you connect them, to Google.<\/p>\n\n<h4>WeblySuite \/ WeblyMCP<\/h4>\n\n<p>Used to run AI agents and inbound MCP against this site after you connect a WeblyToken in WeblyConnect.<\/p>\n\n<p>Data sent: tool calls you enable, site name, plan snapshot, OAuth connection status for tools you choose to link. Sent when you connect the account and when an agent uses a granted handler.<\/p>\n\n<p>Service: https:\/\/suite.weblyarts.com\/<\/p>\n\n<p>Terms: https:\/\/suite.weblyarts.com\/terms-of-service-en\/<\/p>\n\n<p>Privacy: https:\/\/weblyarts.com\/en\/privacy<\/p>\n\n<h4>Google (Calendar OAuth)<\/h4>\n\n<p>Used only if you connect Google Calendar from this plugin (OAuth authorization code exchange).<\/p>\n\n<p>Data sent: OAuth client id, client secret, redirect URI, and the authorization code Google returns. Sent when you complete the Connect Google Calendar flow.<\/p>\n\n<p>Service: Google Identity \/ Google Calendar<\/p>\n\n<p>Terms: https:\/\/policies.google.com\/terms<\/p>\n\n<p>Privacy: https:\/\/policies.google.com\/privacy<\/p>\n\n<p>Other cloud tools (Gmail, Jira, GitHub, Stripe, and similar) are connected through WeblySuite, not directly from this zip. Their terms apply on the WeblySuite console when you link them.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>After you connect a tenant token in WeblyConnect, this site may send to WeblyArts:<\/p>\n\n<ul>\n<li>Tool calls you enable (MCP handlers and granted REST routes)<\/li>\n<li>Site name and billing snapshot requests (via WeblySuite)<\/li>\n<li>OAuth connection status for cloud tools you choose to link<\/li>\n<\/ul>\n\n<p>See https:\/\/weblyarts.com\/en\/privacy and https:\/\/suite.weblyarts.com\/terms-of-service-en\/<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate <a href=\"https:\/\/wordpress.org\/plugins\/weblyconnect\/\">WeblyConnect<\/a>.<\/li>\n<li>Upload the <code>weblymcp-connect<\/code> folder to <code>\/wp-content\/plugins\/<\/code> or install the zip.<\/li>\n<li>Activate <strong>WeblyMCP Connect<\/strong>.<\/li>\n<li>Connect a WeblyToken from WeblyConnect, then open <strong>WeblyMCP Connect<\/strong> in wp-admin.<\/li>\n<li>Enable the integrations and handlers you accept on this site.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20work%20without%20weblyconnect%3F\"><h3>Does it work without WeblyConnect?<\/h3><\/dt>\n<dd><p>No. WordPress will refuse to activate it (<code>Requires Plugins: weblyconnect<\/code>).<\/p><\/dd>\n<dt id=\"is%20weblyagent%20connect%20required%3F\"><h3>Is WeblyAgent Connect required?<\/h3><\/dt>\n<dd><p>No. Chat is optional. This plugin exposes site tools to WeblySuite. The visitor widget is a separate listing.<\/p><\/dd>\n<dt id=\"do%20i%20need%20a%20paid%20weblysuite%20account%3F\"><h3>Do I need a paid WeblySuite account?<\/h3><\/dt>\n<dd><p>The plugin code is free and GPL. Cloud tools and extra integration seats run on WeblySuite (trial or paid). If a request is over your plan, the service returns an error.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20phone%20home%20before%20i%20connect%3F\"><h3>Does the plugin phone home before I connect?<\/h3><\/dt>\n<dd><p>No. Until you connect a WeblySuite account in WeblyConnect, this plugin does not call WeblyArts tool APIs.<\/p><\/dd>\n<dt id=\"where%20do%20updates%20come%20from%3F\"><h3>Where do updates come from?<\/h3><\/dt>\n<dd><p>When hosted on WordPress.org, plugin updates come from the Plugin Directory only.<\/p><\/dd>\n<dt id=\"can%20agents%20administer%20this%20wordpress%20site%3F\"><h3>Can agents administer this WordPress site?<\/h3><\/dt>\n<dd><p>No. Agents can work with content you grant (posts, media, comments, forms, store data). They cannot install plugins, manage users, or call arbitrary WordPress REST routes.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.4.28<\/h4>\n\n<ul>\n<li>WordPress.org directory release.<\/li>\n<\/ul>\n\n<h4>0.4.27<\/h4>\n\n<ul>\n<li>The dossier bearer authenticates only this plugin's MCP routes. It does not log in to WordPress admin or core REST.<\/li>\n<li>Activation no longer deletes a user named webly-bridge.<\/li>\n<li>Post list returns only posts the current user can read.<\/li>\n<li>Block HTML is saved through the WordPress post allowlist. Script tags are removed.<\/li>\n<\/ul>\n\n<h4>0.4.26<\/h4>\n\n<ul>\n<li>Update an attachment title, caption, description, or alt text with wp_update_media. Featured image stays featured_media on the post.<\/li>\n<\/ul>\n\n<h4>0.4.25<\/h4>\n\n<ul>\n<li>Read Bearer from PHP-FPM <code>HTTP_AUTHORIZATION<\/code>, not only <code>getallheaders()<\/code>.<\/li>\n<\/ul>\n\n<h4>0.4.24<\/h4>\n\n<ul>\n<li>Inbound MCP uses the WordPress Application Passwords hook (<code>determine_current_user<\/code>) and <code>wp_getallheaders()<\/code>. A Bearer-only cloud call no longer stays anonymous until REST_REQUEST is set.<\/li>\n<\/ul>\n\n<h4>0.4.23<\/h4>\n\n<ul>\n<li>Remove remote administration from the plugin: no plugin, user, or arbitrary REST handlers. Leftover <code>webly-bridge<\/code> accounts from older builds are deleted once on upgrade.<\/li>\n<\/ul>\n\n<h4>0.4.22<\/h4>\n\n<ul>\n<li>Inbound MCP is contents and data only. No bridge user. No remote plugin, user, or arbitrary REST tools.<\/li>\n<\/ul>\n\n<h4>0.4.21<\/h4>\n\n<ul>\n<li>Inbound MCP: the editor bridge user is created only when an administrator connects a dossier and confirms administrative delegation. Bearer auth never creates users.<\/li>\n<\/ul>\n\n<h4>0.4.20<\/h4>\n\n<ul>\n<li>WordPress 7.0: post meta get\/list use the mapped per-key cap. <code>read_post_meta<\/code> is no longer mapped in core.<\/li>\n<\/ul>\n\n<h4>0.4.19<\/h4>\n\n<ul>\n<li>WordPress.org T2: drop vendor CLI binaries from the zip. Post meta tools use read\/edit\/add_post_meta per key.<\/li>\n<\/ul>\n\n<h4>0.4.17<\/h4>\n\n<ul>\n<li>WordPress.org T1: enqueue overlay JS, drop user create\/update tools, document Google and WeblySuite, upgrade mcp\/sdk.<\/li>\n<\/ul>\n\n<h4>0.4.16<\/h4>\n\n<ul>\n<li>WordPress.org packaging: directory readme, Privacy and Terms, text domain file name.<\/li>\n<li>Drop Composer\/shell install fallback. The zip must include vendor\/.<\/li>\n<li>Plan seats for extra integrations come from WeblyConnect. No local plan table in this plugin.<\/li>\n<\/ul>\n\n<h4>0.4.15<\/h4>\n\n<ul>\n<li>Handler grants and visitor sync aligned with CTR catalog fields.<\/li>\n<\/ul>\n\n<h4>0.4.12<\/h4>\n\n<ul>\n<li>Wizard dossier: search by title or ID, alphabetical order.<\/li>\n<\/ul>\n\n<h4>0.4.11<\/h4>\n\n<ul>\n<li>MCP Server tool cards: Italian labels, grouped counts, search empty state.<\/li>\n<\/ul>\n\n<h4>0.4.10<\/h4>\n\n<ul>\n<li>MCP Server admin: grouped tool cards, search, and copyable inbound endpoint.<\/li>\n<\/ul>\n\n<h4>0.4.9<\/h4>\n\n<ul>\n<li>Clearer Google Calendar connect copy and redirect to WeblySuite instead of a missing AgentHub OAuth route.<\/li>\n<\/ul>\n\n<h4>0.4.2<\/h4>\n\n<ul>\n<li>WordPress.org packaging: GPL header, directory zip, no CDN updater.<\/li>\n<\/ul>","raw_excerpt":"Let agents publish and update the WordPress content you approve. Requires WeblyConnect.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/382378","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=382378"}],"author":[{"embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/weblyarts"}],"wp:attachment":[{"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=382378"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=382378"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=382378"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=382378"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=382378"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/es-do.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=382378"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}