=== AI Visibility & LLMs.txt Generator — GEO, AEO & MCP for ChatGPT, Claude & Perplexity ===
Contributors: athenalion
Tags: llms-txt, ai-visibility, mcp, chatgpt, schema
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 8.1
Stable tag: 1.5.6
License: GPL-2.0+
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Make WordPress discoverable by ChatGPT, Perplexity & Claude — llms.txt, MCP server, AI crawler invites, AI visibility score, plus full SEO engine.

== Description ==

**Show up when ChatGPT recommends products.** Shop2LLM adds the AI layer Yoast and Rank Math don't cover — drop it in alongside your existing SEO plugin.

AI assistants now recommend products and content to billions of queries every month — but they can only recommend sites they can read. **Shop2LLM** gives them a structured, machine-readable catalog of everything you publish, so your products and articles show up when a user asks ChatGPT, Perplexity, or Claude for a recommendation — the practice known as Generative Engine Optimization (GEO) or Answer Engine Optimization (AEO).

Works on any WordPress site — your posts and pages get a machine-readable catalog AI assistants can read. On a WooCommerce store, your products join the catalog too. One-click setup, no API keys to configure, and **no account on any external service** — every core feature runs on your own server, the moment you activate.

= Why Shop2LLM? =

* **Zero-signup AI visibility** — llms.txt, MCP tools, schema, crawler tracking, and visibility scores all run locally on your WordPress server. No account, no cloud signup, no API key. Several AI-visibility plugins require registering on an external SaaS before any feature unlocks — Shop2LLM works the second you activate it
* **4 AI tools (Free)** — content search, detail lookup, store policies, and store overview via the open MCP protocol; ChatGPT can call them like native tools
* **51 AI crawler invites** — GPTBot, ClaudeBot, PerplexityBot, and 48 more, via robots.txt directives
* **Real-time AI Visibility Score™** — proprietary 5-dimension, 25-item scoring system measures how discoverable your content is to AI
* **UCP Readiness Score (New)** — 7-dimension, 100-point transparent methodology showing how ready your store is for AI agents (Catalog API + Agentic + Schema + llms.txt + robots.txt + MCP + Checkout Kit)
* **Hero Test Search** — type a question, see how AI would recommend your products/content right now. 5 free queries per day, no API key needed
* **Full SEO engine (Free)** — Meta tags, Open Graph, 19 JSON-LD Schema types, paginated XML Sitemap, Redirect Manager, Content Analysis, SEO Audit, GSC integration, title templates, broken link checker, image SEO
* **Live Content Extractability (New)** — 10-dimension citability score in Classic & Gutenberg editors with real-time recompute (mirrors VigIA Editor Citability Score methodology)
* **One-click migration** — import SEO data from Yoast SEO and Rank Math
* **Zero performance risk** — all AI features run on your server through the standard WordPress REST API; external calls are non-blocking with 1s timeouts

= How does Shop2LLM compare? =

Shop2LLM Free includes the SEO features Yoast SEO Premium ($99/year) and Rank Math Pro ($59/year) reserve for their paid tiers — plus AI tools no SEO plugin offers.

**SEO features included free** (typically paid in Yoast/Rank Math):

* 19 JSON-LD Schema types (Product, Article, FAQ, HowTo, Recipe, Event, Course, JobPosting, SoftwareApplication, Book, MusicRecording, VideoObject, Person, Dataset, Review, LocalBusiness, WebPage, BreadcrumbList)
* Redirect Manager (301/302/307/410/451 with regex + CSV import)
* SEO Audit (11-point site-wide audit with weekly email reports)
* Google Search Console integration (28-day clicks, impressions, CTR, position, top keywords)
* Broken Link Checker (HEAD-request scanner, 24h cache)
* Image SEO (bulk alt-text audit)
* Content Analysis (15+ real-time checks with CJK support)
* Title Templates (%%variables%% per content type)
* One-click migration from Yoast SEO and Rank Math

**AI features only in Shop2LLM** (no SEO plugin offers these):

* llms.txt — machine-readable content catalog at /llms.txt
* /agents.md — structured Markdown dossier for AI agents (UCP score, MCP tools, catalog, schema types)
* MCP protocol — ChatGPT connects to your site as a native tool (4 JSON-RPC 2.0 tools)
* 51 AI crawler invites (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, Bytespider, +46)
* AI Visibility Score™ — 5-dimension, 25-item scoring
* Machine-readable Store Policies — returns/shipping JSON-LD that AI commerce agents (Claude) can quote verbatim
* UCP Readiness Score — 7-dimension, 100-point transparent methodology (Catalog API + Agentic + Schema + llms.txt + robots.txt + MCP + Checkout Kit)
* Live Content Extractability — 10-dimension citability score in Classic & Gutenberg editors with real-time recompute
* Hero Test Search — 5 free AI-powered queries per day
* AI Crawler Activity Monitor — real-time bot visit tracking across 81 crawlers

Yoast SEO and Rank Math are trademarks of their respective owners and are not affiliated with Shop2LLM. Comparison based on publicly documented feature lists as of July 2026.

= How does Shop2LLM compare to dedicated AI visibility plugins? =

A wave of "AI visibility" plugins appeared recently. Shop2LLM differs on three measurable points:

* **No account wall.** Several AI-visibility plugins keep their dashboard behind a signup on an external SaaS (some won't even load in local/staging environments without a cloud login). Shop2LLM's entire feature set works offline, on localhost, on staging, and on any host — because it runs in your WordPress, not in someone's cloud.
* **One plugin, full stack.** Instead of one tool doing only llms.txt, or only crawler tracking, or only schema, Shop2LLM combines llms.txt + /agents.md + MCP protocol + JSON-LD schema + 51 AI crawler invites + AI Visibility Score™ + a full SEO engine in a single plugin — so you don't stack four plugins (and four conflict risks) to cover the same ground.
* **Conflict-aware by design.** Other plugins can silently shadow your /llms.txt (a physical llms.txt file served by a competing plugin beats any dynamic endpoint). Shop2LLM detects physical-file and rewrite conflicts in the admin and offers one-click remove or take-over, so you always know which plugin actually answers /llms.txt.

= AI Crawler Invites — 51 bots, named =

Shop2LLM writes explicit `Allow: /` directives into your robots.txt so every major AI crawler knows it is welcome — 51 named bots, no blocklists, no guesswork:

* **OpenAI** — GPTBot, OAI-SearchBot, ChatGPT-User
* **Anthropic** — ClaudeBot, Claude-Web, Claude-SearchBot
* **Perplexity** — PerplexityBot, PerplexityBot-1, Perplexity-User
* **Google** — Google-Extended, Googlebot, Googlebot-Image, Google-InspectionTool
* **Microsoft Bing** — Bingbot, BingPreview
* **Meta** — meta-externalagent, FacebookBot
* **Apple** — Applebot, Applebot-Extended
* **Amazon** — Amazonbot, Amazonbot-Image
* **ByteDance** — Bytespider, Bytespider-Image
* **Independent & regional search AI** — YouBot, PhindBot, KagiBot, Bravebot, DuckDuckBot, MojeekBot, Marginalia, YandexBot, Baiduspider, Sogou, PetalBot, SeznamBot, Qwantify — and 28 more

Every visit from these bots is logged in the AI Crawler Activity monitor (81 crawlers tracked), so you can see exactly when ChatGPT, Claude, or Perplexity read your site.

= Four MCP Tools AI Agents Can Call =

Shop2LLM ships an MCP (Model Context Protocol) server at `/wp-json/shop2llm/v1/mcp` — the same open protocol ChatGPT uses for connector plugins. Paste your connection URL once, and AI agents can call:

* **search_products** — natural-language catalog search with price, category, stock, and limit filters ("wireless headphones under $50, in stock")
* **get_product** — full detail lookup for one product: description, price, sale price, stock quantity, GTIN/MPN/brand identifiers, categories, images
* **get_policies** — machine-readable returns / shipping / tax / terms / privacy answers built from MerchantReturnPolicy and OfferShippingDetails JSON-LD, quotable verbatim by AI commerce agents
* **get_store_overview** — first-call orientation: latest products and posts, categories, available tools and endpoints (15-minute cache)

ChatGPT calls these like native tools — and because MCP is an open protocol, any MCP-compatible client can connect to the same Bearer-authenticated endpoint. Responses are JSON-RPC 2.0 with `initialize`, `tools/list`, and `tools/call` per the 2025-06-18 spec.

= How ChatGPT Reads Your Products =

A ChatGPT product recommendation needs three inputs — Shop2LLM generates all of them on your own server:

1. **Product JSON-LD schema** — name, price, availability, GTIN/MPN/brand, and ratings emitted on every product page, in the structured format AI parsers read directly
2. **/llms.txt catalog** — every product and post listed with title, description, and last-modified date at `yoursite.com/llms.txt` (plus /llms-full.txt for agents that want complete content, and /agents.md as a Markdown dossier)
3. **MCP search tool** — lets ChatGPT query your live catalog at conversation time, so answers use current prices and stock instead of a stale crawl

WooCommerce stores additionally get **/product-feed.xml** — a Google-Merchant-format XML feed (title, price, availability, brand, GTIN, image) that shopping AI platforms index directly. The optional Product Sync (off by default) publishes catalog metadata to the Shop2LLM cloud index so products can surface in AI answers across connected assistants.

= Shop2LLM Visibility Score™ =

Our proprietary 5-dimension, 25-item scoring system measures your content's AI discoverability across Discoverability, Relevance, Content Quality, Entity Authority, and Activity — directly in your post editor.

= Supported AI Platforms (Free) =

* 🧠 **ChatGPT Desktop** — your content appears in ChatGPT's tool palette

= How It Works =

1. **Activate** Shop2LLM — works on any WordPress site, no dependencies
2. **Optional:** install WooCommerce (free) to add product search to the catalog
3. **Copy** the AI connection URL from the settings page
4. **Paste** into ChatGPT
5. **Done** — AI agents can now search your content

= Features =

* **Full SEO Engine** — Meta tags (homepage, posts, archives, 404), Open Graph, 19 JSON-LD Schema types, XML Sitemap (paginated), Redirect Manager, and Content Analysis — no paid upgrade needed
* **Google Search Console Integration** — see organic clicks, impressions, CTR, average position, and top keywords directly on your dashboard (28-day data, auto-refresh)
* **Title Template System** — customize SEO title format with %%variables%% (%%title%%, %%sitename%%, %%sep%%, %%category%%, %%tag%%, %%date%%, %%author%%) per content type
* **19 JSON-LD Schema Types** — Product, Article, BlogPosting, FAQ, HowTo, Recipe, Event, Course, JobPosting, SoftwareApplication, Book, MusicRecording, VideoObject, Person, Dataset, Review, LocalBusiness, WebPage, BreadcrumbList — auto-detected
* **SEO Content Analysis** — 15+ real-time checks (focus keyword, title/meta desc length, headings, images, internal links, keyword density with CJK support, Flesch readability) with color-coded score circle
* **XML Sitemap** — auto-generated paginated sitemap.xml (1000 URLs/page), image sitemap, per-type priorities/changefreq, Google ping
* **Redirect Manager** — 301/302/307/410/451 redirects with regex support, CSV bulk import, and 404 error logging
* **Open Graph & Twitter Cards** — auto OG tags for all page types with image upload and social preview
* **SEO Audit** — 11-point site-wide audit with weekly email reports
* **One-Click Migration** — import SEO data from Yoast SEO and Rank Math
* **Broken Link Checker** — HEAD-request scanner with 24h cache
* **Image SEO** — bulk alt-text audit across all posts
* **Quick Edit SEO** — edit focus keyword and meta description right from the post list
* **SEO Plugin De-duplication** — auto-detects Yoast/Rank Math/AIOSEO/SEOPress and disables conflicting modules
* **AI Crawler Activity Monitor** — see which AI bots (GPTBot, ClaudeBot, PerplexityBot, and 78 others) are crawling your site
* **4 AI tools** — content search, detail lookup, store policies, and store overview via MCP protocol
* **AI Visibility Score™** — 5-dimension, 25-item scoring for AI discoverability
* **11-dimension product AI Score** — now includes price/stock accuracy: sale-price consistency and stale out-of-stock detection
* **Store Policies JSON-LD** — returns/shipping policy pages emit MerchantReturnPolicy and OfferShippingDetails markup that AI agents read
* **Auto-generated llms.txt** — machine-readable content catalog, now with a Store Policies section
* **Crawler-friendly robots.txt** — 51 AI bot allow directives, plus an opt-in AI usage policy declaration (Training / Summarization / Attribution)
* **Hero Test Search** — AI-powered test search with 5 free queries per day

= What AI Agents Can Do (Free) =

* "Search for wireless headphones under $100" (with WooCommerce)
* "Show me the top-rated summer dresses in stock" (with WooCommerce)
* "Find blog posts about sustainability"
* "What's the content of article #42?"
* "What is your return policy?" — answered from machine-readable MerchantReturnPolicy JSON-LD, not scraped prose
* "Give me an overview of this store"

== Installation ==

1. Upload the `shop-to-llm` folder to `/wp-content/plugins/`
2. Activate the plugin through the 'Plugins' menu in WordPress
3. Go to Settings → Shop2LLM
4. Copy your AI connection URL
5. Paste into ChatGPT

= Requirements =

* WordPress 6.0+
* PHP 8.1+
* WooCommerce 8.0+ (optional — only needed for product search features; posts and pages work on any site)

== Frequently Asked Questions ==

= Does Shop2LLM work as a WooCommerce MCP server? =

Yes. Shop2LLM exposes a full MCP (Model Context Protocol) server at `/wp-json/shop2llm/v1/mcp` with four JSON-RPC 2.0 tools: search_products, get_product, get_policies, and get_store_overview. ChatGPT connects via your site's AI connection URL and calls these tools like native tools. The MCP server works with WooCommerce product catalogs and — on sites without WooCommerce — with posts and pages.

= Is Shop2LLM an llms.txt generator for WordPress? =

Yes. Shop2LLM auto-generates `/llms.txt` (machine-readable content catalog), `/llms-full.txt` (complete content for agents), and `/agents.md` (structured Markdown dossier with your UCP score, MCP tools, and schema types) the moment you activate — no configuration, no cron, no external service. The catalog rebuilds automatically when you publish, update, or delete content. If another plugin writes a physical llms.txt file that shadows the endpoint, Shop2LLM detects the conflict and offers one-click remove or take-over.

= How do I verify ChatGPT can read my llms.txt? =

Three checks, under a minute each:

1. Open `yoursite.com/llms.txt` in a browser — you should see your content catalog (works immediately after activation)
2. In ChatGPT, add your AI connection URL (Settings → Connectors) and ask "search my site for [a real product or post title]" — the answer should quote your actual content
3. Open Shop2LLM → AI Traffic and watch the AI Crawler Activity card — GPTBot, ClaudeBot, or PerplexityBot visits appear there in real time

No crawler visiting yet? Run the Activation Doctor (`wp eval-file wp-content/plugins/shop-to-llm/tools/activation-doctor.php`) — it prints your onboarding funnel and points at the bottleneck (most often Cloudflare's "AI Scrapers and Crawlers" block, or a firewall returning 403 to bot user agents).

= Which AI crawler controls does Shop2LLM add to robots.txt? =

Shop2LLM appends 51 explicit `Allow: /` invite directives to robots.txt — GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, PerplexityBot, Google-Extended, Applebot-Extended, Amazonbot, Bytespider, meta-externalagent and 41 more (full vendor-by-vendor list in the description above). It never blocks bots — these are invitations. You can additionally declare a site-wide AI usage policy (Training / Summarization / Attribution) as an opt-in comment banner at the top of robots.txt (Settings → Shop2LLM → AI Agents).

= Does Shop2LLM create a ChatGPT product feed? =

Yes — three ways. (1) Product JSON-LD schema on every product page: name, price, availability, GTIN/MPN/brand, ratings. (2) A Google-Merchant-format XML feed at `/product-feed.xml` (WooCommerce stores; shopping AI platforms index it directly). (3) The MCP search_products tool, which lets ChatGPT query your live catalog at conversation time so answers use current prices and stock. An optional cloud Product Sync (off by default) additionally lists your products in the Shop2LLM AI search index.

= How does the AI visibility score work? =

The AI Visibility Score™ is a 5-dimension, 25-item audit computed entirely on your server: Discoverability (robots.txt invites, llms.txt health), Relevance (focus queries, titles), Content Quality (extractability, structure), Entity Authority (schema, brand entities), and Activity (AI crawls, searches). Every item shows a fix action. WooCommerce products get an 11-dimension product-level score, and the UCP Readiness Score (7 dimensions, 100 points) measures agentic-commerce readiness (Catalog API, MCP, Checkout Kit).

= Can I add JSON-LD schema without an SEO plugin? =

Yes — 19 JSON-LD types are auto-detected and emitted with zero configuration: Product, Article, BlogPosting, FAQ, HowTo, Recipe, Event, Course, JobPosting, SoftwareApplication, Book, MusicRecording, VideoObject, Person, Dataset, Review, LocalBusiness, WebPage, BreadcrumbList. If Yoast, Rank Math, AIOSEO, or SEOPress is active, Shop2LLM detects it and disables overlapping schema modules so nothing is emitted twice.

= How is Shop2LLM different from RankReady and other AI visibility plugins? =

Tracking tools measure how you rank in AI answers; Shop2LLM builds the server-side layer those answers draw from — llms.txt, MCP server, JSON-LD schema, 51 crawler invites, visibility scores, and a full SEO engine, all running locally with no account. Because it coexists with your existing SEO plugin (auto-deduplicating overlapping modules), it can run alongside tracking tools rather than replacing them. See the comparison sections in the description above for the measurable differences.

= Do I need to create an account or configure an API key? =

No. All core features (llms.txt, /agents.md, MCP tools, JSON-LD schema, crawler tracking, visibility scores, the full SEO engine) run entirely on your WordPress server and start working on activation — no account, no cloud signup, no API key. The optional Hero Test Search uses our cloud LLM proxy with 5 free queries per day, also without an account. All AI connections to your site use Bearer token authentication; the key is auto-generated and can be rotated anytime.

= Does this require WooCommerce? =

No. Shop2LLM works on any WordPress site out of the box — your posts and pages are fully included in the AI catalog (llms.txt, BlogPosting schema, MCP search). If WooCommerce 8.0+ (free) is active, product search, price and stock data, Product schema, and the /product-feed.xml XML feed join the catalog automatically.

= Is my content data sent to external servers? =

Content data (full product descriptions, customer data, orders) stays on your server. AI agents connect directly to your WordPress REST API for detailed product information. External transmission is opt-in and off by default:

* **Product Sync** (opt-in) sends lightweight product metadata to the Shop2LLM cloud search index — product ID, title, price, short description/excerpt, image URL, public product URL, categories, site name, and stock status. All of it is already publicly visible on your website; no customer, order, or credential data is sent. Refreshed daily; disable anytime in Settings → Shop2LLM → Product Sync or via `add_filter('shop2llm_disable_product_sync', '__return_true');`
* **Anonymous Usage Data** (opt-in) sends a bucketed, boolean-only onboarding summary (e.g. `first_search_done: true`, `dashboard_visits: "2-5"`) with a SHA-256 hashed site identifier — no PII, no exact counts, no URLs, no search terms
* **Crawler reports** (included with Anonymous Usage Data) send crawler type, page URL, and user agent when AI bots visit
* **Hero Test Search** sends your search query and lightweight product metadata (name, price, currency, stock, rating) to DeepSeek's API to generate the AI reply
* **Wikidata/Wikipedia lookups** (opt-in, off by default) send only your focus query text to those public APIs

Disabling the opt-ins stops all external transmission immediately. Local behavior milestones (activation funnel) stay in your own database and are removed on uninstall. Privacy policy: https://shop2llm.com/

= What's the difference between Free and Pro? =

Free supports ChatGPT with 4 AI tools (content search, detail lookup, store policies, store overview) plus everything listed above. Pro adds 6 AI platforms (Claude, Gemini, Copilot, Meta AI, and Amazon Bedrock), always-on cloud connection so consumers can discover your products without manual connector setup, and the analytics dashboard. Upgrade at https://shop2llm.com/

= What happens if I deactivate the plugin? =

Your site returns to normal. llms.txt, robots.txt AI rules, schema markup, and the product feed are removed. All settings are preserved if you reactivate later. No data is lost.

= Does this affect my site speed? =

No. Shop2LLM is independently tested and **A-rated on [MakeWPFast.com](https://makewpfast.com/plugins/shop2llm/)** — a third-party WordPress speed certification service. The benchmark report covers Home, Blog, and Product page contexts and rates overall plugin impact as "Low" (measured TTFB, memory delta, and DB query delta against a clean WordPress baseline). All AI features run on your server through the standard WordPress REST API; external calls are non-blocking with 1s timeouts — even if our cloud is unreachable, your site stays fast.

= Can I use this alongside Yoast SEO or Rank Math? =

Yes. Shop2LLM auto-detects SEO plugins (Yoast, Rank Math, AIOSEO, SEOPress) and automatically disables conflicting modules (meta tags, schema, sitemap, Open Graph). You keep the AI-specific features (MCP tools, llms.txt, crawler invites) plus any SEO modules the other plugin doesn't cover. You can also one-click migrate your SEO data from Yoast or Rank Math into Shop2LLM.

== Screenshots ==

1. AI Visibility Dashboard — real-time AI Score with 5-dimension breakdown, Hero Test Search, and the free feature comparison vs Yoast/Rank Math paid tiers
2. UCP Readiness Score — 7-dimension agent-readiness audit (Catalog API, Agentic, Schema, llms.txt, robots.txt, MCP, Checkout Kit)
3. AI Traffic Monitor — crawler analytics across 81 AI bots, search activity, and GA4 AI traffic integration

== Changelog ==

= 1.5.6 =
* New: Value-moment rating loop — a ★★★★★ ask appears inline right after your first successful AI test search, again in AI Traffic when the first real crawler lands, and a day-30 fallback (2 lifetime asks, dismiss = re-ask in 30 days)
* Improvement: Directory listing rewritten around search keywords — vendor-by-vendor crawler invite list, per-tool MCP server guide, ChatGPT product feed section, 8 new keyword FAQs
* Improvement: Plugin renamed to "AI Visibility & LLMs.txt Generator — GEO, AEO & MCP for ChatGPT, Claude & Perplexity" and retagged for AI search discovery
* Fix: Removed the broken v1.3.5 dark-mode stylesheet — with an OS-level dark theme, cards went dark and the active tab / page title turned near-white on the white admin background. The admin UI now always matches the standard wp-admin light theme

= 1.5.5 =
* New: MCP tool surface grows from 2 to 4 tools
* New: get_policies — machine-readable returns/shipping/tax/terms/privacy pages with MerchantReturnPolicy JSON-LD that AI commerce agents can quote verbatim
* New: get_store_overview — first-call orientation: latest products and posts, categories, available tools and endpoints (15-minute cache)
* New: Opt-in AI usage policy in robots.txt — Training / Summarization / Attribution modes, off by default (Settings → Shop2LLM → AI Agents)

= 1.5.4 =
* New: Physical llms.txt conflict detection — one-click Remove / Overwrite when another plugin's static llms.txt file silently shadows Shop2LLM's dynamic endpoint
* Fix: /llms.txt, /agents.md and /llms-full.txt respond reliably even when another plugin hijacks the same rewrites — URI-level fallback that outruns activation order, plus rules registered before the activation flush
* Fix: Search metrics — Hero self-tests tracked separately (no longer inflate "API Calls" / MCP score), identical searches collapsed to one row, out-of-stock products found by exact name
* Removal: Google Feed factor dropped from the AI Visibility Score™ (9 → 8 factors); weights rebalanced to keep the /100 scale; "Acquisition Funnel" renamed to "Acquisition Channels"
* Improvement: Admin UX — notices confined to Shop2LLM pages, review ask moved to Dashboard Overview, AI Traffic tab merged, Yoast/Rank Math one-click migration banner, "Website" header link

= 1.5.3 =
* New: Shop2LLM now installs and activates on any WordPress site — WooCommerce is no longer a hard requirement (product features auto-activate when WooCommerce is present)
* New: The AI Visibility verification page now shows a prominent "Get it free on WordPress.org" card
* New: The first successful AI search confirmation banner includes a direct ★★★★★ rating link on WordPress.org

= 1.5.2 =
* Improvement: SEO settings (meta tags, sitemap, schema, redirects, title templates, Google Search Console) now live in their own SEO → SEO Settings tab, right where you'd look for them
* Improvement: The SEO tab's former "SEO Settings" dashboard is renamed "SEO Overview" to match what it actually shows
* Improvement: The optional anonymous usage data setting is now clearly labeled "Anonymous Usage Data" (previously "Analytics")

= 1.5.1 =
* Fix: Activation onboarding now completes — the first successful Hero Test Search marks onboarding done (previously the welcome funnel could never complete, so activation progress was invisible)
* Fix: Hero Test Search moved to the top of the Dashboard (above the value comparison card) so the "aha" moment is above the fold
* New: Hero Test Search comes pre-filled with your newest product (or post) title, and runs automatically right after activation — see your first AI answer in under a minute, zero typing
* Fix: Activation auto-search previously never ran due to a JavaScript error; it now uses the pre-filled catalog query
* New: One-time "AI can see your store" confirmation banner on your first successful AI search

= 1.5.0 =
* New: Acquisition Funnel — see how AI crawlers → AI referral sessions → AI-attributed orders → AI revenue connect in one card on the AI Traffic tab (last 30 days, all data stays on your server)
* New: AI order attribution — visitors arriving from ChatGPT, Claude, Perplexity, Gemini, Copilot, Grok, DeepSeek are remembered (session + first-party cookie, no personal data) and their orders tagged automatically; same meta keys as Pro's agentic checkout
* New: AI source detection extended to chatgpt.com, claude.ai, gemini.google.com, grok.com and chat.deepseek.com (also improves the existing AI-Driven Traffic stats)
* Pro: Per-platform revenue breakdown (revenue by AI platform) in the funnel card is a Pro feature

= 1.4.0 =
* New: Store Policies JSON-LD — returns, shipping, tax, terms and privacy pages now emit machine-readable schema (MerchantReturnPolicy, OfferShippingDetails) that AI commerce agents like Claude read when answering policy questions; llms.txt gains a Store Policies section pointing agents at those pages
* New: Site AI Visibility Score grows from 7 to 9 factors — adds Policies (10 pts) and Google Merchant Center feed health (10 pts); existing factor weights rebalanced to keep the /100 scale
* New: Product AI Score grows from 9 to 11 dimensions — adds Sale Price Consistency (flags fake discounts where sale ≥ regular) and Stock Status Current (flags out-of-stock listings untouched for 90+ days, and variable products with no purchasable in-stock variation); free tier max is now 70
* Fix: Robots.txt / llms.txt factor thresholds updated for the new weighting

= 1.3.14 =
* Fix: AI crawler detection now matches the most specific bot first — "Googlebot-Image" is no longer misattributed to the shorter "Googlebot" pattern (same fix for PerplexityBot-1, Applebot-Extended, Amazonbot-Image, Bytespider-Image)
* Docs: Corrected listing accuracy — 2 MCP tools (not 23), 81 crawlers tracked (not 65), 51 robots.txt AI bot allow directives (not 12); dashboard and UCP check copy now show live counts

= 1.3.13 =
* Docs: Description now also references GEO (Generative Engine Optimization) and AEO (Answer Engine Optimization)

= 1.3.12 =
* Fix: Documentation corrected — Shop2LLM requires WooCommerce 8.0+ (free) and PHP 8.1+; earlier listing text wrongly suggested the plugin also works without WooCommerce

= 1.3.11 =
* Feature: AI Score 7-day trend — daily snapshots with an up/down delta badge on the dashboard
* UX: Smarter onboarding — wizard steps now show real completion states (green ✓) for published content, ChatGPT connection, llms.txt/robots.txt readiness and first AI activity, each with a "Fix in AI Score card" shortcut, plus a gentle day-7 review reminder (permanent dismissal, no incentives)
* UX: Hero Test Search results now end with a value-closure footer and a one-click jump to the AI Score card; an empty AI Traffic tab is now a 3-point diagnostic (robots.txt / llms.txt / published content) with inline fix actions

= 1.3.10 =
* Fix: Product schema no longer replaced by meta-driven schema types on product pages — when FAQ/HowTo data is present, the Product JSON-LD (offers.price, GTIN, rating) is always emitted, with the extra type added as an additional block

= 1.3.9 =
* UX: AI Score auto-fix actions (Fix robots.txt, Flush Permalinks, etc.) now gated behind Pro upgrade — free users see diagnosis + 🔒 upgrade hooks
* UX: Product AI Score dimensions 6-9 (Categories, Tags, Stock Managed, Attributes) locked behind Pro — free users see 5/9 dimensions (max 65/100)
* UX: Content AI Score L2-L5 groups (Relevance, Content Quality, Entity Authority, Activity) locked behind Pro — free users see L1 only (max 30/100)
* UX: UCP Readiness Checkout Kit dimension locked behind Pro — shows 🔒 upgrade prompt for AI checkout capability
* UX: Score displays adjusted for free tier (e.g., `/65` instead of `/100`) with "Unlock full score →" upgrade links

= 1.3.8 =
* UX: Merged `Redirects` and `Sitemap` sub-menus into the main `Shop2LLM → SEO` tab as sub-tabs. The WP admin sidebar now shows a single `Shop2LLM` entry instead of three. Old URLs (`?page=shop2llm-seo-redirects`, `?page=shop2llm-seo-sitemap`) auto-redirect to the new sub-tab locations.
* UX: Added `nav-tab` sub-navigation inside SEO tab (`SEO Settings` / `Redirects` / `Sitemap`).

= 1.3.7 =
* Fix: MCP `initialize` returns dynamic `protocolVersion` (echoes client-requested version, defaults to `2025-06-18`) instead of hardcoded `2025-11-25`
* Fix: MCP `notifications/*` requests now return HTTP 202 with empty body per MCP 2025-06-18 spec (previously returned `-32601 Method not found`)
* Fix: MCP `tools/call` results now wrapped in `content[] + structuredContent` structure per spec
* Fix: Discovery manifest `mcp.version` synchronized to `2025-06-18`

= 1.3.6 =
* New: 6-tab Dashboard — Overview, AI Agents (UCP Score + MCP + /agents.md + 65 crawlers), AI Traffic (crawler analytics + GA4 + AI search), SEO, Analytics, Settings
* Fix: UCP Score gauge and visual compatibility improvements for broader PHP/WP version support

= 1.3.5 =
* New: GA4 AI Traffic + Crawler Log Analytics (65 crawlers, opt-in) + CJK Content Optimizer (Chinese/Japanese/Korean N-gram analysis)
* New: Dashboard visual refresh — UCP Score radial gauge, design tokens, empty states, micro-interactions, mobile-responsive layout, dark mode
* Fix: All Plugin Check warnings resolved to zero; security hardening (wp_safe_redirect, nonce verification)

= 1.3.4 =
* New: UCP Readiness Score (7 dimensions, 100 points) + /agents.md endpoint + Live Content Extractability (10-dimension editor score)
* Expanded: AI Crawler Registry from 12 to 65 tracked bots

= 1.3.3 =
* Privacy: product sync is now opt-in via Settings (WP Guideline 7 compliance) — no data sent on activation without consent
* Added Restart Onboarding button in Settings and PHP/WP version check on activation
* Fix: `heroRemaining` JavaScript error on activation (props WP.org Plugin Tests)

= 1.3.2 =
* Value Comparison Card — new Dashboard card showing the SEO and AI features included free, with a factual comparison to Yoast SEO Premium and Rank Math Pro paid tiers
* Activation Doctor — self-serve WP-CLI diagnostic (`wp eval-file tools/activation-doctor.php`) for onboarding funnel, connectivity checks, and Site Hash for fast support
* Directory Listing Refresh — AI visibility tags, sharper description, third-party performance benchmark disclosure (MakeWPFast.com A-rated)

= 1.3.1 =
* Multi-Keyword Optimization — unlimited focus keywords with independent per-keyword scoring and AI-powered keyword suggestions
* AI-Powered Schema Detection — cloud AI suggests best schema type with local fallback, 4-layer rate limit protection
* WooCommerce Deep Integration — GTIN/MPN/Brand/Condition identifiers, enhanced Product Schema, 6 product-specific checks

= 1.3.0 =
* Full SEO Engine — Meta Tags, Open Graph, XML Sitemap, Schema, Content Analysis, Redirect Manager, SEO Audit, all built-in and free
* Google Search Console Integration — clicks, impressions, CTR, position, top keywords dashboard
* 19 JSON-LD Schema Types with Title Template System and One-Click Migration from Yoast/RankMath

= 1.1.2 =
* Plugin Check zero ERROR compliance — text domain unified to 'shop-to-llm', enabling community translations
* AI-powered "See how AI sees your store" — test how AI recommends your products, 5 free test searches per day
* DeepSeek API integration — natural-language product recommendations with transparent provider disclosure

= 1.1.1 =
* Hero Test Search — AI-powered Aha moment at Dashboard top, type a question and see how AI recommends your products
* FinCore cloud LLM proxy — test searches use DeepSeek via FinCore cloud, no API key required
* Rich product cards — image thumbnail, currency-aware price, stock badge, star rating

= 1.1.0 =
* Product AI Index — syncs catalog metadata to Shop2LLM cloud so your products appear in AI searches across all connected stores
* Daily product sync via heartbeat with opt-out filter and layered privacy disclosure

= 1.0.9 =
* Welcome Modal simplified to single card with opt-in

= 1.0.8 =
* AI Visibility Score Breakdown — 7-factor card with per-item Fix buttons
* Inline Test Search and Content AI Score for non-WooCommerce sites
* Plugin Check zero ERROR compliance, Tested up to WP 7.0

= 1.0.7 =
* Shop2LLM Visibility Score™ — 5-dimension 25-item scoring system
* AI Crawler Activity Monitor with 7-day sparkline trends
* Editor meta box with score ring gauge and fix guidance

= 1.0.6 =
* Dashboard load time 80x faster (5s → 62ms)
* Works without WooCommerce — supports any WordPress site
* PHP 7.4+ compatibility (lowered from 8.1)

= 1.0.5 =
* AI Growth Progress card with milestone tracker and Achievement Badges

= 1.0.4 =
* Anonymous activation ping with SHA256-hashed site identifier

= 1.0.3 =
* Improved search keywords and short description

= 1.0.2 =
* HPOS compatibility, WooCommerce Marketplace support

= 1.0.1 =
* Security fixes: permission_callback, input sanitization, output escaping

= 1.0.0 =
* Initial release — MCP JSON-RPC, ChatGPT integration, llms.txt, AI crawler support

== Upgrade Notice ==

= 1.5.3 =
No WooCommerce? No problem — Shop2LLM now activates on any WordPress site and makes your posts and pages discoverable by AI search. WooCommerce stores keep everything as before. No breaking changes.

= 1.5.0 =
Your dashboard now shows the full AI acquisition funnel — from AI crawler visits to AI-attributed orders and revenue, recorded locally with zero external requests. Attribution data flows into Pro's AI Revenue tab when Pro is installed. No breaking changes.

= 1.4.0 =
Your returns/shipping policy pages become machine-readable for AI agents (Claude), the site AI Score now tracks Google Merchant Center feed health, and product scores catch fake discounts and stale out-of-stock listings. Weights rebalanced (still /100); no breaking changes.

= 1.3.0 =
Major feature release — full SEO engine with Meta/OG/Schema/Sitemap/Redirect/Content Analysis, 18 JSON-LD types, SEO audit, one-click migration from Yoast/Rank Math. Auto-detects existing SEO plugins and disables conflicting modules. No breaking changes. Safe to update.

= 1.1.2 =
Plugin Check compliance release — text domain unified, AI test search powered by DeepSeek, all WARNINGs resolved. No breaking changes.

= 1.1.1 =
Adds a ChatGPT-style Hero Test Search box at the top of the Dashboard. Get an instant AI-generated answer about your own products/content — 5 free tests per day, no API key needed. Existing Inline Test Search and score-card "Test Search" button now redirect to this new Hero box.

= 1.1.0 =
Adds lightweight product metadata sync to cloud AI search index. Opt-out available. Readme updated with full data disclosure.

= 1.0.9 =
Daily heartbeat, simplified Welcome Modal, behavior metrics fix. No breaking changes. Safe to update.

= 1.0.8 =
AI Visibility Score Breakdown, Inline Test Search, Welcome Modal, Analytics telemetry fix. No breaking changes. Safe to update.

= 1.0.7 =
Shop2LLM Visibility Score™ with 5-dimension scoring, tabbed settings page, editor meta box. No breaking changes. Safe to update.

= 1.0.6 =
Dashboard loads 80x faster. Works without WooCommerce. No breaking changes. Safe to update.

= 1.0.5 =
New Dashboard cards: AI Growth Progress, Achievement Badges. Safe to update.

= 1.0.4 =
Privacy enhancement — anonymous activation ping with SHA256 hash. No breaking changes.

= 1.0.1 =
Security fixes and input sanitization. No breaking changes.

= 1.0.0 =
Initial release — Shop2LLM for WooCommerce!

== Privacy ==

This plugin can optionally connect to external services provided by FinCore. All external data transmission is **opt-in** and disabled by default:

* **Analytics (Settings → Shop2LLM → Analytics)** — when enabled, anonymized site metadata (hashed site identifier, platform, version numbers) and AI crawler visits (crawler type, page URL, user agent) are sent to our cloud service. This can be disabled at any time.

* **Product Sync (Settings → Shop2LLM → Product Sync)** — when enabled, lightweight product metadata (title, price, category, image URL) is synced to the Shop2LLM cloud search index so your products appear in AI searches across all connected stores. This is disabled by default and requires explicit opt-in.

* `api.shop2llm.com/fincore/v1/free/ping` — called when analytics is enabled, to register hashed site metadata. Also called during the daily heartbeat if analytics is active.
* `api.shop2llm.com/fincore/v1/store/feed/sync` — called when Product Sync is enabled, to sync product metadata to the cloud search index. Synced once daily.
* `api.shop2llm.com/fincore/v1/crawler/log` — called when AI crawlers visit your store, if analytics is enabled.
* **api.deepseek.com** — when you use the "Ask AI" Hero Test Search, your search query and lightweight product metadata (name, price, currency, stock, rating) are sent to DeepSeek's API to generate the AI reply. DeepSeek's servers may be located outside your jurisdiction. No personal customer data, order information, or full product descriptions are transmitted.

No personal customer data, order information, or product data is transmitted. All external calls use HTTPS and are non-blocking (will not affect site performance if the service is unavailable).

**Email notifications** — This plugin may send transactional emails to the site administrator:
* **AI Crawler Discovery** — when an AI platform first crawls your site, an email is sent to the admin. You can disable this in Settings → Shop2LLM → Email Notifications.
* **SEO Audit Report** — when SEO Audit is enabled, a weekly email summary is sent. You can disable this in SEO → SEO Settings → Audit.
All email notifications are opt-in (disabled by default) and include an unsubscribe notice in each email.

Shop2LLM optionally checks Wikidata and Wikipedia public APIs to determine if your brand or focus query appears in their databases. This feature is disabled by default and must be explicitly enabled in settings. When enabled, only your focus query text is sent to these public APIs — no personal data, user data, or site credentials are ever transmitted. API results are cached locally for 7 days to minimize requests.

Privacy Policy: https://shop2llm.com/
Terms of Service: https://shop2llm.com/
