{"id":357345,"date":"2026-09-12T12:58:49","date_gmt":"2026-09-12T12:58:49","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/sectionmate-mcp\/"},"modified":"2026-09-12T13:51:16","modified_gmt":"2026-09-12T13:51:16","slug":"sectionmate-mcp","status":"publish","type":"plugin","link":"https:\/\/es-pr.wordpress.org\/plugins\/sectionmate-mcp\/","author":23542210,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.2.0","stable_tag":"2.2.0","tested":"7.1","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"SectionMate MCP","header_author":"Jose Roberto","header_description":"Design and edit pages with AI agents via MCP. Compiles clean JSON to Elementor, Gutenberg & Spectra (Legacy + V3) so agents work on compact specs \u2014 not fragile markup.","assets_banners_color":"ffffff","last_updated":"2026-09-12 13:51:16","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":0,"downloads":63,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.1.29":{"tag":"2.1.29","author":"jrobertosouza","date":"2026-09-12 13:09:25","revision":3692707},"2.2.0":{"tag":"2.2.0","author":"jrobertosouza","date":"2026-09-12 13:51:16","revision":3692735}},"upgrade_notice":{"2.2.0":"<p>The plugin no longer adds a block to the editor \u2014 the unused &quot;SectionMate&quot; import block is removed. Verified against Spectra Legacy 2.20.3, Spectra Blocks 1.0.7 and Elementor 4.2.4. Other plugins&#039; admin notices no longer show on the SectionMate screen.<\/p>","2.1.29":"<p><strong>Action required \u2014 token URLs stop working.<\/strong> Create an Application Password under Users \u2192 Profile and use https:\/\/USER:APP-PASSWORD@your-site.com\/wp-json\/sectionmate-mcp\/v1\/mcp instead. The connector now acts as you, with your permissions.<\/p>","2.1.28":"<p>Documents the plugin&#039;s two external services (Google Fonts, Wikimedia Commons search) and corrects a Privacy claim that wrongly said no third-party fonts were added to your pages. Agents now import images into your Media Library instead of hotlinking.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3692696,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3692696,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":3692707,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":3692707,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.1.29","2.2.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3692735,"resolution":"1","location":"assets","locale":"","width":1440,"height":1625},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3692735,"resolution":"2","location":"assets","locale":"","width":860,"height":400},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3692735,"resolution":"3","location":"assets","locale":"","width":396,"height":701}},"screenshots":{"1":"Admin screen with safety warning and MCP connector URL","2":"Setup steps for connecting an AI client","3":"Front-end Inspect \/ design review for logged-in editors"}},"plugin_section":[],"plugin_tags":[2353,76538,148076,242115,1084],"plugin_category":[],"plugin_contributors":[280371],"plugin_business_model":[],"class_list":["post-357345","plugin","type-plugin","status-publish","hentry","plugin_tags-ai","plugin_tags-elementor","plugin_tags-gutenberg","plugin_tags-mcp","plugin_tags-page-builder","plugin_contributors-jrobertosouza","plugin_committers-jrobertosouza"],"banners":{"banner":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/banner-772x250.jpg?rev=3692707","banner_2x":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/banner-1544x500.jpg?rev=3692707","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/icon-128x128.png?rev=3692696","icon_2x":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/icon-256x256.png?rev=3692696","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/screenshot-1.png?rev=3692735","caption":"Admin screen with safety warning and MCP connector URL"},{"src":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/screenshot-2.png?rev=3692735","caption":"Setup steps for connecting an AI client"},{"src":"https:\/\/ps.w.org\/sectionmate-mcp\/assets\/screenshot-3.png?rev=3692735","caption":"Front-end Inspect \/ design review for logged-in editors"}],"raw_content":"<!--section=description-->\n<p>SectionMate MCP connects your AI assistant to WordPress so it can <strong>build and edit page sections<\/strong> \u2014 a hero, a pricing table, an FAQ, a features row \u2014 directly in Elementor, Gutenberg or Spectra.<\/p>\n\n<p><strong>Build one section at a time.<\/strong> This is the most important thing to know. The AI <em>can<\/em> generate a whole page in one request, but the results are noticeably better when you do one section, look at it, adjust it, then move on. Each section gets the AI's full attention instead of a fraction of it \u2014 and you catch a wrong direction after one band instead of after twelve.<\/p>\n\n<p>Nothing is saved until you approve it. Every edit shows you a preview and waits for your confirmation.<\/p>\n\n<h4>Install and connect<\/h4>\n\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Open <strong>SectionMate MCP<\/strong> in the WordPress admin menu.<\/li>\n<li>Type a name for the AI app you are connecting \u2014 \"Claude\", \"Grok\", \"Cursor\" \u2014 and click <strong>Create connector URL<\/strong>.<\/li>\n<li>Copy the URL. <strong>It is shown only once.<\/strong> It already contains your sign-in details, so there is nothing else to fill in.<\/li>\n<li>In your AI app, add it as a remote MCP server (some apps call this a \"connector\" or \"custom connector\").<\/li>\n<li>Ask for a section: <em>\"Add a pricing section to page 12 with three plans.\"<\/em><\/li>\n<\/ol>\n\n<p>Your site needs to be reachable over HTTPS. For a site on your own computer, use a tunnel such as Cloudflare Tunnel or ngrok.<\/p>\n\n<h4>Getting good results<\/h4>\n\n<ul>\n<li><strong>One section at a time.<\/strong> Finish and review the hero before asking for the features row.<\/li>\n<li><strong>Give it something to work from.<\/strong> A screenshot of a design you like, your brand colours, a logo, images already in your Media Library.<\/li>\n<li><strong>Say what is wrong.<\/strong> \"Make the cards taller\", \"use the brand green\" \u2014 it can read the page back and change specific blocks rather than rebuilding everything.<\/li>\n<li><strong>Point at things visually.<\/strong> Logged-in editors get an <strong>Inspect<\/strong> overlay on the front end: click any block to grab a reference for the AI, or leave a note it reads on the next turn.<\/li>\n<li>You can edit anything by hand afterwards. It is ordinary WordPress content.<\/li>\n<\/ul>\n\n<h4>What it does not do<\/h4>\n\n<p>It builds <strong>content on a page<\/strong>. It does not set up your theme, your site-wide header and footer, or your menus. It can build a header-<em>looking<\/em> band as part of a page, which is not the same thing as a theme header.<\/p>\n\n<h4>Works with<\/h4>\n\n<ul>\n<li>WordPress block editor (Gutenberg) \u2014 works out of the box<\/li>\n<li>Elementor (free)<\/li>\n<li>Spectra \/ Ultimate Addons for Gutenberg<\/li>\n<li>Spectra Blocks (V3)<\/li>\n<\/ul>\n\n<p>Use one builder per page. Sections, headings, text, images, buttons and icons work on all of them; counters, countdowns, FAQ accordions, icon lists and galleries work wherever the builder provides them.<\/p>\n\n<p>Not affiliated with or endorsed by Elementor, Brainstorm Force (Spectra), or Automattic.<\/p>\n\n<h4>Safety<\/h4>\n\n<p>The connector signs in <strong>as you<\/strong>. It can do exactly what your account can do and no more, every edit is recorded as yours, and you can revoke one connected app on its own without changing your password.<\/p>\n\n<ul>\n<li><strong>Turn the MCP connector switch off when you finish.<\/strong> The plugin stays installed and your pages keep working.<\/li>\n<li>Prefer a local or staging site for big redesigns. On a live site, work on drafts and keep sessions short.<\/li>\n<li>Treat the connector URL like a password, because it contains one.<\/li>\n<li>If you deactivate the plugin, everything it built stays on your pages.<\/li>\n<li>Advanced: a <code>code<\/code> block can carry custom CSS and JavaScript. Writing JavaScript follows WordPress's own rule and needs the <code>unfiltered_html<\/code> capability \u2014 administrators and editors have it on a normal single site.<\/li>\n<\/ul>\n\n<h4>Privacy<\/h4>\n\n<p>The plugin does not phone home, and it collects no analytics or telemetry of any kind. It adds no third-party scripts and no trackers to your pages.<\/p>\n\n<p>It does use two external services, and one of them (Google Fonts) is requested by your visitors' browsers. Both are described in <strong>External services<\/strong> below. Read that section before using the plugin on a site with GDPR or similar obligations.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin relies on the following external services. Each is listed with what it does, what is sent, when, and links to that provider's terms and privacy policy.<\/p>\n\n<h4>Google Fonts (fonts.googleapis.com, fonts.gstatic.com)<\/h4>\n\n<p><strong>What it is used for.<\/strong> When a page you compiled specifies a Google font family, the plugin enqueues that family's stylesheet so the page renders in the font you chose. The plugin's own admin screen and the logged-in front-end Inspect overlay also load one font (IBM Plex Mono) for their interface.<\/p>\n\n<p><strong>What is sent and when.<\/strong> The plugin builds a stylesheet URL containing only the font family names and weights the page asks for. Your visitor's browser then requests that stylesheet from <code>fonts.googleapis.com<\/code> and the font files from <code>fonts.gstatic.com<\/code>. Those requests are made by the browser, so Google receives the visitor's IP address and user-agent, as it does for any site using Google Fonts. This happens on the front end for pages that use a Google font, and in the admin\/editor for the interface font. No personal data is sent by the plugin itself, and nothing is sent when a page uses no Google font.<\/p>\n\n<p><strong>Avoiding it.<\/strong> Pages that use only system or theme fonts make no request. If you need zero third-party font requests, do not specify Google font families when designing, and use a font-hosting plugin for the interface font.<\/p>\n\n<p>Service provided by Google: <a href=\"https:\/\/policies.google.com\/terms\">terms of service<\/a>, <a href=\"https:\/\/policies.google.com\/privacy\">privacy policy<\/a>, <a href=\"https:\/\/developers.google.com\/fonts\/faq\/privacy\">Google Fonts privacy FAQ<\/a>.<\/p>\n\n<h4>Wikimedia Commons API (commons.wikimedia.org)<\/h4>\n\n<p><strong>What it is used for.<\/strong> The optional <code>search_placeholder_images<\/code> MCP tool searches Wikimedia Commons for openly licensed photographs, so an AI agent can suggest real images for a design instead of inventing image paths that render blank. It is read-only and returns image URLs, dimensions, suggested alt text, and licence\/attribution information.<\/p>\n\n<p><strong>What is sent and when.<\/strong> Only when you or your connected AI agent explicitly calls that tool. The request is made from your server and contains the search terms supplied in the call, plus a requested image width and result limit. No personal data, no site information, and no account or API key are involved.<\/p>\n\n<p><strong>Avoiding it.<\/strong> The tool only runs on request. If it is never called, the plugin never contacts Wikimedia. Turning the MCP connector off under Setup blocks it along with every other tool.<\/p>\n\n<p>Service provided by the Wikimedia Foundation: <a href=\"https:\/\/foundation.wikimedia.org\/wiki\/Policy:Terms_of_Use\">terms of use<\/a>, <a href=\"https:\/\/foundation.wikimedia.org\/wiki\/Policy:Privacy_policy\">privacy policy<\/a>, <a href=\"https:\/\/www.mediawiki.org\/wiki\/API:Main_page\">API documentation<\/a>.<\/p>\n\n<h4>Images you choose to import (no fixed provider)<\/h4>\n\n<p><strong>What it is used for.<\/strong> The <code>import_media<\/code> tool, and the media sideloading step of <code>compile_and_insert<\/code> \/ <code>compile_elementor<\/code>, download an image from a URL and add it to your Media Library so the page serves it locally rather than hotlinking.<\/p>\n\n<p><strong>What is sent and when.<\/strong> Your server makes an HTTP request to whatever URL you or your agent supplies \u2014 there is no fixed third party, and the plugin has no default host. It runs only on explicit request, requires the <code>upload_files<\/code> capability, and is confirm-gated: the first call returns a preview and nothing is downloaded until a second call confirms it. Whichever host the URL points at will see a request from your server's IP address.<\/p>\n\n<p><strong>Avoiding it.<\/strong> Supply only URLs you trust, or upload images through the WordPress Media Library instead and reference them by attachment id.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install from <strong>Plugins \u2192 Add New<\/strong>, or upload the <code>sectionmate-mcp<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate <strong>SectionMate MCP<\/strong> on the <strong>Plugins<\/strong> screen.<\/li>\n<li>Open <strong>SectionMate MCP<\/strong> in the WordPress admin menu.<\/li>\n<li>Name the AI app you are connecting and click <strong>Create connector URL<\/strong>. Copy the URL \u2014 it is shown only once, and it already contains your sign-in details.<\/li>\n<li>Add that URL in your AI app as a remote MCP server.<\/li>\n<li>Turn the <strong>MCP connector<\/strong> switch off when you finish a session.<\/li>\n<\/ol>\n\n<p>Your site must be reachable over HTTPS. For a site on your own computer, use a tunnel such as Cloudflare Tunnel or ngrok.<\/p>\n\n<p>Optional: install Spectra and\/or Elementor if you want to build with those. Gutenberg works without anything extra.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"can%20i%20use%20this%20on%20a%20live%20production%20site%3F\"><h3>Can I use this on a live production site?<\/h3><\/dt>\n<dd><p>Yes, carefully. Prefer <strong>draft<\/strong> pages and short editing sessions. Do <strong>not<\/strong> leave the MCP connector switch on unattended on production. Prefer local or staging for large redesigns. When finished, turn the <strong>MCP connector<\/strong> off under Setup \u2014 the pages you built stay, and the same URL works again when you re-enable. Anyone with the secret URL can edit pages only while the connector is on.<\/p><\/dd>\n<dt id=\"what%20does%20the%20mcp%20connector%20switch%20do%3F\"><h3>What does the MCP connector switch do?<\/h3><\/dt>\n<dd><p>When <strong>off<\/strong>, the plugin stays installed but MCP tools refuse every request, whoever is asking. When <strong>on<\/strong>, your connector URLs work again \u2014 they are not invalidated by the switch. This is the recommended way to secure a site after a design session, because it is one click and reversible. Revoke an individual connector instead if its URL may have leaked.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20the%20plugin%3F\"><h3>What happens if I deactivate the plugin?<\/h3><\/dt>\n<dd><p>Compiled page content remains (Spectra\/Gutenberg blocks, Elementor data, and any CSS\/JS already saved into the page). MCP, Inspect, and annotations stop until you activate again. Prefer the connector switch over full deactivation when you only need to block remote AI access.<\/p><\/dd>\n<dt id=\"do%20i%20need%20an%20api%20key%20or%20paid%20ai%20subscription%3F\"><h3>Do I need an API key or paid AI subscription?<\/h3><\/dt>\n<dd><p>The plugin does not sell AI access. You connect your own AI client (Claude, Cursor, Grok, ChatGPT, etc.) using the connector URL. Any AI costs are between you and that provider.<\/p><\/dd>\n<dt id=\"why%20are%20my%20username%20and%20password%20in%20the%20connector%20url%3F\"><h3>Why are my username and password in the connector URL?<\/h3><\/dt>\n<dd><p>Because many AI clients accept only a URL \u2014 no place to enter a username, a password, or a request header. HTTP has always allowed credentials in the URL itself (<code>https:\/\/USER:APP-PASSWORD@your-site.com\/\u2026<\/code>), and that is standard HTTP Basic authentication, which is how WordPress Application Passwords work.<\/p>\n\n<p>Two things follow from that. It is a real WordPress sign-in, so the connector is limited to your account's permissions and every edit is attributed to you. And unlike a secret in the query string, this part of the URL is not written into server access logs.<\/p>\n\n<p>Treat the URL as the password it contains. If a client can set request headers, you can send <code>Authorization: Basic<\/code> instead and use the plain URL.<\/p><\/dd>\n<dt id=\"does%20every%20edit%20apply%20immediately%3F\"><h3>Does every edit apply immediately?<\/h3><\/dt>\n<dd><p>No. Write tools return a preview first. Nothing is saved until a second call confirms with the one-time confirmation token. Only a response with status <code>applied<\/code> means the page changed.<\/p><\/dd>\n<dt id=\"which%20page%20builders%20are%20supported%3F\"><h3>Which page builders are supported?<\/h3><\/dt>\n<dd><p>Spectra Legacy (UAGB \/ <code>uagb\/*<\/code>), Spectra Blocks V3 (<code>spectra\/*<\/code>), core Gutenberg blocks, and Elementor (free) element trees. Install the builders you need on the site. On empty pages, agents must ask which backend to use.<\/p><\/dd>\n<dt id=\"can%20it%20set%20up%20my%20theme%20header%20%2F%20site-wide%20navigation%3F\"><h3>Can it set up my theme header \/ site-wide navigation?<\/h3><\/dt>\n<dd><p><strong>No \u2014 and that is intentional.<\/strong> This is a <strong>page<\/strong> designer for page builders, not a theme or full-site designer. The AI <strong>can<\/strong> build a navigation or hero \u201cheader\u201d <strong>as content on the page<\/strong> (logo, links, buttons as blocks). It <strong>cannot<\/strong> configure the WordPress theme header, Customizer menus as the site header, FSE header templates, or products like Astra Site Builder \/ Header Footer Builder. Themes differ widely; a true custom theme header often needs a theme\u2019s pro site builder. We stay on page builders so results stay portable. For a full-bleed landing page you may use <code>hideHeaderFooter<\/code> to <strong>hide<\/strong> the theme header\/footer on that page only \u2014 that still does not create a theme header.<\/p><\/dd>\n<dt id=\"is%20this%20affiliated%20with%20elementor%20or%20spectra%3F\"><h3>Is this affiliated with Elementor or Spectra?<\/h3><\/dt>\n<dd><p>No. It is an independent tool that compiles into those formats when those plugins are present.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<p>The last two releases. Full history: <code>changelog.txt<\/code>, shipped with the plugin.<\/p>\n\n<h4>2.2.0<\/h4>\n\n<ul>\n<li><strong>The plugin no longer registers a block.<\/strong> The \"SectionMate\" import block (<code>sectionmate-mcp\/import<\/code>) let you paste clean JSON into the editor and have it compile in place. It predates the MCP connector, which does the same job better, and it has not been the recommended path for a long time. The block, its editor script, its block category and the <code>\/v1\/compile<\/code> REST route it was the only caller of are all removed. Nothing else used them, and no saved page content depends on the block \u2014 it replaced itself with real blocks whenever it ran.<\/li>\n<li><strong>Verified against the current builders:<\/strong> Spectra Legacy 2.20.3, Spectra Blocks 1.0.7 and Elementor 4.2.4. No compiler change was needed for any of them. All 41 design-lab runs reproduce their previous score exactly, the selftest is clean on all 23 fixtures, and element boxes agree across all four backends at 1440 and 1600.<\/li>\n<li>Two changelog entries were worth testing rather than trusting. Spectra Blocks 1.0.5 said \"buttons and button-style links now output valid HTML markup\" \u2014 <code>spectra\/button<\/code> is a static-save block, so a changed <code>save()<\/code> would invalidate every button already written; the editor loads clean. Spectra Blocks 1.0.7 moved responsive editing \"to follow core's breakpoints\"; boxes still agree across backends. Elementor 4.2.4 carries a third consecutive \"improved code security enforcement\" line, and the end-to-end <code>code<\/code> node test still passes.<\/li>\n<li><strong>Other plugins' admin notices no longer appear on the SectionMate screen.<\/strong> Upgrade prompts hooked globally by other plugins were pushing the connector UI down the page and reading as though they belonged here. Suppressed on this plugin's own screen only \u2014 anywhere else they are the user's business, and <code>user_admin_notices<\/code> is left alone.<\/li>\n<li>Settings screen headline now matches the directory banner, and carries the habit that most affects output quality: build one section at a time.<\/li>\n<\/ul>\n\n<h4>2.1.29<\/h4>\n\n<ul>\n<li><strong>The connector authenticates as a real WordPress user.<\/strong> The plugin's own secret token, and the <code>\/mcp\/&lt;token&gt;<\/code> route that carried it, are gone. Authentication is now WordPress's own: an Application Password, created under Users \u2192 Profile, sent over HTTP Basic. Clients that accept only a URL can carry it as <code>https:\/\/USER:APP-PASSWORD@your-site.com\/\u2026<\/code>, which keeps single-URL setup working and, unlike a token in the path or query string, is not written into server access logs.<\/li>\n<li><strong>This is a breaking change.<\/strong> Existing token URLs stop working and must be replaced. In exchange, access is per-client and revocable from your profile without disturbing anything else, and it is your account \u2014 not an anonymous bearer secret \u2014 that the site records as making the edit.<\/li>\n<li><strong>The plugin no longer impersonates an administrator.<\/strong> When a write lacked <code>unfiltered_html<\/code>, it looked up the first administrator account, called <code>wp_set_current_user()<\/code> into it so Elementor's sanitizer would stand down, and fell back to writing <code>_elementor_data<\/code> with direct SQL if that failed. Both paths are deleted. With a real user behind the request an administrator simply has the capability, and Elementor leaves the tree alone by itself.<\/li>\n<li><strong>KSES is respected instead of removed.<\/strong> Saves used to strip <code>wp_filter_post_kses<\/code> unconditionally, which handed any token holder the equivalent of <code>unfiltered_html<\/code> \u2014 including a live <code>&lt;script&gt;<\/code> \u2014 while the admin screen claimed that capability was required. The capability is now checked. Users who have it are unaffected; users who do not get the same treatment as core's Custom HTML block.<\/li>\n<li>The real problem under that bypass was narrow and is fixed properly: default post KSES has no <code>svg<\/code>\/<code>path<\/code> and lowercases <code>viewBox<\/code>, so compiled button and icon-list icons were emptied and the block's <code>save()<\/code> match broken. The allowlist now permits inline SVG shapes \u2014 no <code>script<\/code>, no event attributes, no <code>href<\/code> \u2014 so an editor gets working icons and still cannot write JavaScript.<\/li>\n<li><strong>Connectors are created and revoked from the plugin's own Setup screen.<\/strong> Name the client, click once, and the finished URL appears with your credentials already in it \u2014 no copying a password out of your profile and splicing it into a pattern by hand. Below it, every connector with access is listed with its created and <strong>last used<\/strong> dates, each with its own Revoke button. Passwords are not listed and cannot be: WordPress stores only a hash, which is also why the new URL is shown exactly once.<\/li>\n<li>Bundled templates renamed from <code>.markup<\/code> to <code>.html<\/code>. Same contents; the directory only permits file types normally found in a plugin.<\/li>\n<\/ul>","raw_excerpt":"Build a page one section at a time with AI. Compiles to Elementor, Gutenberg and Spectra blocks.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/357345","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=357345"}],"author":[{"embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jrobertosouza"}],"wp:attachment":[{"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=357345"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=357345"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=357345"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=357345"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=357345"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/es-pr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=357345"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}