BACK TO DIRECTORY

Goppa – AI Visibility: llms.txt, IndexNow and AI Crawlers

by goppa

0.0
(0 ratings)

Goppa is an AI visibility plugin for WordPress. It shows you which AI
crawlers are reading your site, gets your changed pages into the index
those assistants answer from, and states — in your own robots.txt — that
your pages may be used to build a generated answer.

What Goppa does

  • Counts AI crawler visits on your site — GPTBot, ClaudeBot,
    PerplexityBot, OAI-SearchBot, Google-Extended, Amazonbot, Applebot and
    others — and shows the count on its own screen. The count is kept on
    your server and nothing about it is sent anywhere.
  • Submits every changed URL through IndexNow, so Bing and Yandex
    learn about your pages, posts and products in hours instead of weeks.
    The verification key is generated and served automatically.
  • Declares Content-Signal: search=yes, ai-input=yes in robots.txt,
    the line that says an AI system may use your page in a generated
    answer. It never touches ai-train.
  • Serves four agent endpoints from a WooCommerce catalogue when one
    is present: a UCP manifest, llms.txt, a live MCP server and your
    catalogue as schema.org JSON.
  • Publishes a product summary and an FAQ as visible text, built only
    from fields you already filled in. Both are off until you turn them on.
  • Applies fixes for you when a Goppa account is connected: llms.txt,
    robots.txt rules for named AI crawlers, the sitemap reference and
    missing product schema fields.
  • Sends nothing about you anywhere until you enter a token. The
    crawler count stays on your server. IndexNow submits your own public
    URLs, and nothing else, and can be switched off.

WooCommerce is optional. The crawler count, IndexNow and the Content
Signal work on any WordPress site. The catalogue endpoints and the
product feed check appear when WooCommerce is running.

The line nobody is declaring

Cloudflare switched the Content Signals format on across more than 3.8
million domains with ai-train=no and ai-input deliberately left
blank
— they said they did not want to guess your preference.

ai-input is the one that means "you may use this page to build a

generated answer”. Millions of sites now say “do not train” and say
nothing at all about appearing in the answer, and a crawler that reads
blank as “no” quietly drops them from the answers they want to be in.

Goppa writes Content-Signal: search=yes, ai-input=yes. It leaves
ai-train alone — training a model on your content is a separate
decision, and yours. If your server or CDN already sets a Content
Signal, that one is left alone.

First, the page has to be findable

ChatGPT and Copilot answer shopping and research questions from Bing’s
index. A page outside that index cannot be recommended, however good its
structured data is. This is the part most tools skip, because it is not
a file you can generate.

A meta-analysis of 54 studies published in May 2026 puts URL
accessibility as the strongest single factor in whether an AI cites a
page — ahead of everything else on this list. That is why IndexNow is on
by default. Turn it off under Settings if another plugin already submits
your URLs.

Then it has to be readable

With WooCommerce running, four endpoints on your own domain, with no
configuration:

  • /.well-known/ucp — a UCP discovery manifest conforming to the
    published specification, so an agent can find out what your store
    offers.
  • /llms.txt — a plain-text description of your store, categories and
    products for AI models.
  • /mcp — a live MCP server (JSON-RPC 2.0, protocol 2025-06-18) with
    three tools: search_products, get_product and get_store_info.
  • /goppa/catalog — your catalogue as schema.org/Product JSON.

Products, prices, stock status, categories and attributes are read
directly from WooCommerce and cached for ten minutes. Search ignores
accents, so “tenis” finds “Tênis” and “fussball” finds “Fußball”.

It applies the fixes, not just the files

With a Goppa account connected, the plugin checks hourly for fixes found
by the diagnosis and applies them to your site itself — the llms.txt,
the robots.txt rules that let named AI crawlers through, the sitemap
reference, and product schema fields that are missing. Then it reports
back what it applied, so the diagnosis you see is the state of your site
and not a to-do list.

Two rules it never breaks:

  • It never changes what you wrote. Titles, descriptions, prices and
    policies are on a refuse list inside the plugin. Even if the service
    asked, this code would discard the instruction — the list lives here,
    on your server, precisely so it holds regardless of what happens
    upstream.
  • The plugin pulls; the service never pushes. Every connection is
    outbound from your site, like the telemetry. No authenticated route is
    opened on your WordPress.

Readable is not the same as recommended

Everything above makes your site readable. None of it can tell you
whether an assistant actually names you when someone asks what to buy or
who to use: that has to be measured by asking, from the outside.

In our own published research we measured 64 shops twice: a technical
readiness score, and whether AI assistants name them when asked real
buying questions in their category. 25 of the 32 shops scoring a perfect
100 appeared in 0% of the answers, and only 16 of 64 were named at all.

The median readiness score of the shops that are never named is 100. For
the shops that are named, it is 97. The invisible ones score higher.

It also varies enormously by category: 1 of 12 natural beauty shops
appeared; 4 of 12 electronics shops did. The data and method are public
at https://trygoppa.com/study

Anyone promising a specific outcome here is guessing. Serving these
protocols is a precondition, not a guarantee.

You can check where you stand without installing anything

Run the free check on your domain at https://trygoppa.com — it reads your
site from the outside and gives you a readiness score plus the pages an
AI assistant read when answering questions in your category. No account,
and the plugin is not required.

Install the plugin when you want the work done on your site instead.

What this does not do

It does not process carts, checkout or payments, and the UCP manifest
does not claim otherwise — it declares catalogue search and lookup,
nothing else. An agent that reads it will send the shopper to your site
to buy. Announcing a checkout that does not exist would make agents try
to transact and fail.

Optional: see what the agents actually do

Paste a token from a Goppa account and the plugin reports agent activity
— which endpoint was called, what was searched, which product was
returned. Never visitor data. This is off until you configure it; see
“External services” below.

External services

With no token configured, this plugin makes no external connection
carrying your data.
The crawler count stays on your server. IndexNow,
when on, submits your own public URLs to https://api.indexnow.org
the URL and your site’s verification key, nothing else.

If you enter a Goppa store token in Settings Goppa, the plugin sends
agent activity to the Goppa service at https://trygoppa.com
(endpoint /api/ingest). This is what is sent, and only when an AI agent
requests one of the four endpoints above:

  • which endpoint was requested (for example mcp);
  • the User-Agent string sent by the agent, which the service classifies
    into a known agent name;
  • which MCP tool was called (for example search_products);
  • the search term or product identifier the agent asked for;
  • the name of the product returned first.

Records are queued and sent after the response to the agent has already
been delivered, so the service being slow or unreachable never delays
your site. Nothing is sent about your human visitors: no IP addresses, no
customer or order data, no personal information. Clearing the token stops
it immediately.

Service provided by Goppa — Terms of Service,
Privacy Policy.

Screenshots

What the plugin has already done on this site: AI crawler visits counted locally, URLs pushed to Bing through IndexNow, and the Content Signal written to robots.txt. No configuration, no account.

What the plugin has already done on this site: AI crawler visits counted locally, URLs pushed to Bing through IndexNow, and the Content Signal written to robots.txt. No configuration, no account.

The same screen on a site without WooCommerce. Everything that does not need a catalogue keeps working, and the plugin says so instead of showing zeros.

The same screen on a site without WooCommerce. Everything that does not need a catalogue keeps working, and the plugin says so instead of showing zeros.

Every block is a switch. The two that change what your customers see are off until you turn them on.

Every block is a switch. The two that change what your customers see are off until you turn them on.

The product summary and the FAQ, as visible text on the page. Both are built only from fields you already filled in, and both are off until you turn them on.

The product summary and the FAQ, as visible text on the page. Both are built only from fields you already filled in, and both are off until you turn them on.

llms.txt, served on your own domain, written from your catalogue.

llms.txt, served on your own domain, written from your catalogue.

Plugin Details

Active Installs
0
Total Downloads
752
Version
0.7.3
Requires WP
6.0
Requires PHP
7.4
Tested Up To
7.1
Added
2026-08-11
Last Updated
2026-09-14 6:10pm GMT

Ratings

5
0
4
0
3
0
2
0
1
0