| 开发者 | studiomeyerio |
|---|---|
| 更新时间 | 2026年9月4日 21:44 |
| 捐献地址: | 去捐款 |
| PHP版本: | 8.0 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
https://wp.studiomeyer.io/mcp to your AI client and ask it to connect the site. From then on your AI reads the readiness score, the pages and robots.txt and explains what to do. With AI-Ready WP Pro it may also write: settings, titles and descriptions per page, rebuilds, IndexNow pings. The five steps are on the settings page.
On the plugin side this is an administrator-only REST API under /wp-json/airewp/v1/admin/. It answers only to a signed-in administrator, application passwords included, and it is there whether or not the public REST routes are switched on. The plugin itself never contacts wp.studiomeyer.io; the connection runs the other way, from the server you signed in to, to this site.
More free plugins by StudioMeyer
agents.json is an emerging standard for AI agent discovery. It tells AI systems what your website offers and how to interact with it — like a machine-readable menu of your site's capabilities.
llms.txt is a structured text file that gives LLMs (Large Language Models) a concise overview of your website content — like a sitemap for AI.
A2A (Agent-to-Agent) is a protocol by Google (now under the Linux Foundation) for AI agent interoperability. The agent-card.json file lets agents discover and communicate with your site.
For most sites, yes. AI-Ready WP provides meta titles/descriptions, OpenGraph, Twitter Cards, canonical URLs, robots meta, XML Sitemaps, and focus keyword analysis. If you need advanced features like redirect managers or internal linking suggestions, keep a dedicated SEO plugin. AI-Ready WP notices it and stands down.
Yes. When Yoast SEO, Rank Math, All in One SEO, SEOPress, The SEO Framework, Squirrly, SmartCrawl or Slim SEO is active, AI-Ready WP leaves titles, descriptions, social tags, the sitemap and the Organization, WebSite and breadcrumb schemas to that plugin, so your pages do not end up with two of each. The FAQ schema stays, none of those plugins builds it from your headings. The settings page says which plugin it found, and a checkbox brings the output back if you want it. The AI Discovery features (agents.json, llms.txt, JSON-LD, robots.txt, IndexNow) are not affected. Other SEO plugins can be added with the airewp_competing_seo_plugin filter.
Yes. If WooCommerce is active, the plugin automatically adds product catalog tools to agents.json, making your products discoverable by AI agents.
AI assistants like ChatGPT, Claude, and Perplexity are increasingly used to find businesses and services. If your site isn't AI-discoverable, you're invisible to this growing channel. AI-Ready WP makes your site speak the language AI agents understand.
Yes. Connect your AI through the hosted MCP server at wp.studiomeyer.io; the settings page lists the five steps. Reading is free: score and checks, settings, pages with their SEO fields, robots.txt, crawler statistics and a diagnosis with fixes. Writing needs AI-Ready WP Pro on this site: settings, titles and descriptions per page, rebuilds and IndexNow pings, plus the SEO tools. Every change your AI makes goes through the same validation as the settings page, and it needs an administrator's application password, which you can revoke in your profile at any time.
The only external connection is IndexNow (optional), which notifies search engines about content changes. All other features work entirely locally. See the Third-Party Services section below.
All of them, by default. robots.txt names 27 AI crawlers (GPTBot, ClaudeBot, Claude-SearchBot, PerplexityBot, Google-Extended, Applebot, Meta-ExternalAgent, Amazonbot, DuckAssistBot, the Mistral crawlers and more) and allows each one explicitly, with a Content-Signal line that says what they may do with your content. A crawler reads only the group that names it, so every group repeats your site's own Disallow rules; naming a bot never opens a directory you keep closed. A bot that another plugin or a hand-written rule already addresses is left alone.
Yes. The AI Bot Policy section has two checkboxes: one turns away the training crawlers (your content then stays out of future models), the other the retrieval crawlers (your site then no longer appears in AI answers; not recommended). The Content-Signal line follows your choice.
No. The plugin writes agents.json, agent-card.json, agent.json and mcp.json into the .well-known directory of your site, and llms.txt and llms-full.txt into the site root, and when that works your web server hands them out without starting PHP. When it cannot write there, the same documents are built from your settings and content instead, the two text files from a cache that is refreshed whenever your content changes. Visitors and AI crawlers get exactly the same answer either way. The only difference is a little PHP per request, so it is worth fixing, but nothing is broken while you do.
The .well-known directory in the root of your site has to belong to the user your PHP runs as, usually www-data, nginx, apache or your hosting account name, with mode 755. The plugin writes files into it with mode 644. If the directory does not exist yet, the site root has to be writable so the plugin can create it.
On servers with a Let's Encrypt certificate this directory very often belongs to root, because certbot created it before WordPress ever got there. That is the single most common reason for a write failure. The settings page names the directory, the owner and the PHP user, and gives you the exact chown command to hand your host.
That is a different problem from a failed write, and the settings page tells the two apart. A 404 means something in front of WordPress is answering the request. On nginx it is almost always a location block for /.well-known/ left behind by the SSL setup, which serves that path straight from disk and never reaches PHP.
Ask your host to restrict that block to /.well-known/acme-challenge/. The rest of /.well-known/ then reaches WordPress again and the documents answer.
<script> or <style> block in a page ended up in llms-full.txt and in the meta description as prose, so a tracking snippet or a builder's inline CSS was published as if it were a sentence about the page. The blocks now go with their content, before anything else looks at a tag./wp-json/airewp/v1/admin/ lets the hosted MCP server at wp.studiomeyer.io, or any other tool that signs in with an application password, read the readiness score and its checks, the settings, the discovery URLs and their measured state, the pages with their SEO fields, robots.txt and the crawler statistics; and change settings and per-page titles and descriptions, rebuild the files and ping IndexNow. Changed settings go through the same validation as the settings page. The routes exist whether or not the public REST routes are switched on; nothing here answers an anonymous request.llms.txt and llms-full.txt answer without a file. Until now they were the two documents with no fallback: on a host that keeps the site root read-only, which is the rule on managed WordPress hosting, the URLs answered 404 while the plugin had the content the whole time. The documents are now built once, cached, and refreshed whenever your content changes, so the file is a shortcut and no longer a condition.llms.txt answers, the same question they ask of the JSON documents. The llms.txt pointer in robots.txt follows the feature toggle instead of the file.* group, so naming a bot never opens a directory you keep closed. A crawler that another plugin already addresses is left alone.Content-Signal line (contentsignals.org) that says what a crawler may do with your content: search, AI answers, training. It follows the two policy checkboxes and is also added to the * group when nothing has put one there.og:type "article". The front page now carries the site name, the tagline, the home URL and og:type "website". A title or description typed into the SEO box still wins.mcp.json is no longer published with an empty server list. With the feature on and no server listed the URL answers 404, the status table says so, and the readiness score no longer hands out a point for an empty manifest. The MCP check only counts once the feature is on, so a site without MCP servers can reach the full score.Sitemap: /sitemap.xml even with the SEO module switched off, when nothing answered that URL. The line now appears only when this plugin serves the sitemap and nobody has advertised the URL already.# agents.json: pointer in robots.txt depended on a written file. Since 4.4.0 the URL answers without one, so the pointer now follows the feature toggle.wp_strip_all_tags() removes HTML tags and nothing else, so on a site using WPBakery, Divi or anything else that stores its layout as shortcodes, [vc_row us_bg_overlay_color="..."] ended up in the meta description, in og:description, in llms-full.txt, in the FAQ schema and in the keyword analysis. The description is the expensive one: that string is what Google and every social preview show. Reported by a user running WPBakery, thank you.strip_shortcodes(), which does nothing at all when the page builder is not loaded, and for a post the excerpt is the only text that reaches llms-full.txt.[1] are kept. A shortcode name has to start with a letter, which is what tells the two apart.agents.json, agent-card.json, agent.json and mcp.json are now served even when the plugin cannot write them to disk. They are built from your settings on the fly instead, so the URLs answer with the same JSON as before. Previously such a site answered 404 while the plugin held the content the whole time. The usual cause is a .well-known directory owned by root, which is what certbot leaves behind on a great many servers, and it left people with a site root the plugin could write and one subdirectory in it that it could not./.well-known/ to WordPress, where the file existed and the URL still answered 404.chown command to pass on to your host. The plugin knew all of this before and told nobody.location block that usually causes it. A failed write and an unreachable URL look identical from the outside and have nothing to do with each other..json URL and replied with an HTML page.mcp.json is removed on uninstall. It was the one generated file the cleanup missed, which also kept the empty .well-known directory from being tidied up.public exposure flag introduced in WordPress 7.1. The channel-specific flags (show_in_rest, mcp.public) stay in place and keep working on WordPress 6.9 and 7.0. Newer MCP Adapter releases read the unified flag, so the abilities remain discoverable as tools there.description, og:description and twitter:description — without ever entering the password. The same content also reached llms-full.txt, the FAQ schema in JSON-LD, the plugin sitemap, the AI search ability and the IndexNow ping. Everything a password protects now stays behind that password. Please update.llms.txt, llms-full.txt and the plugin sitemap. A URL that only ever answers with a password form has nothing to offer a search engine or an AI crawler.llms-full.txt written by the old version would have stayed on your server — fix installed, leak still served — until you saved a post or the daily rebuild happened to run.llms.txt and llms-full.txt, the way the agent card and mcp.json were already handled. Previously the old files stayed on the server and kept being served.wp-postpass_*) as a reason not to serve a cached page. Otherwise the cache can hand a visitor who knows the password a page that was built for someone who does not — this applies to WordPress itself just as much as to this plugin, and every common cache plugin already handles it.meta.show_in_rest and a readonly annotation. WordPress 7.0 ships the Abilities API and AI Client in core, and these annotations let the MCP Adapter and AI Client know the abilities only read site data and never mutate it.delete_post_meta_by_key()) instead of direct SQL for post meta removal.wp_abilities_api_init action instead of init. Resolves a _doing_it_wrong notice on WordPress 6.9 ("Abilities must be registered on the wp_abilities_api_init action") and ensures the four airewp/* abilities are picked up by the WordPress MCP Adapter.category property and uses the new execute_callback key (renamed from callback in WP 6.9). Without these the abilities were registered but discarded with a _doing_it_wrong notice.airewp (label "AI-Ready WP") on wp_abilities_api_categories_init so all four abilities are grouped under one heading in the MCP Adapter and Abilities admin views.