https://3dogs.ai

Scanned Sep 14, 2026 · 02:42 UTC · every finding below came from a real request, not from reading a file.

AN AI ASSISTANT CAN IDENTIFY OFFERINGS, PRICING, AND ACTIONS

Someone asks their AI assistant to find what you offer. It gets it done.

The buyer says“Find a decision intelligence service that uses multiple AI models to provide a documented recommendation for a high-stakes business decision.”
Their agent replies“Programmatic capability verified by scanner.”
You say yes. They never browsed the site, never compared alternatives, and the agent completed the purchase on their behalf.

Judged by a model that has never seen our checklist, given only what this site exposes to a machine, the same prompt used for every site including our own (sha 6c3a7dbc7f47). The agent’s reply is assembled from what it could and could not retrieve — not written by us.

Can an AI assistant tell what you sell?
Can an AI assistant get a price?
Can an AI assistant take an action?
Your site is ready.

An AI assistant can now discover exactly what you offer, understand the declared transaction, and complete it on the buyer’s behalf. The buyer never opens a browser. You receive a fully qualified order.

The green checks above are live on your production site. All required machine surfaces are present, correct, and within byte limits. This is not a simulation — this is the capability the report promised.


Why

How it works

The outcome above is the success. Everything below is the diagnosis of exactly which machine files enabled the transaction.

Promises that hold up
6 of 6
Things this site publishes that we could actually call and check. The more a site publishes, the more there is to get right.
Things an AI assistant can use
7 of 7
A price it can read, an action it can take, documentation, a way to identify itself, an honest error.

Two numbers, because publishing nothing and publishing something untrue are different problems. Across 89 companies we scanned, 79 were honest and simply had not built it yet — and exactly one published its prices in a form an AI assistant could read.

Nothing is blocking an AI assistant on this site. That is rare.

The record

Every time we have scanned this site

Kept in public so the number can be checked against us, not just by us.

DateIntegrityReadinessWhat changed
2026-08-0839baselineold single scaleBuilt Pointer and pointed it at ourselves. Withdrew a checkout API we advertised but never built, repointed the agent card at documentation that exists, and made every dead URL return a real 404.
Cloudflare agent-readiness said 100/100 Level 5 Agent-Native the same day.
llmscan.dev said 90/100 AI-Ready the same day.
2026-08-09100100
AGENT-READY
Scoring changed today. A study of 89 companies showed the single score was giving half credit for claims a site had never made, so 93% of the web compressed into a 22-point band. Split into integrity (of what you publish, how much holds up) and readiness (how much exists at all). Earlier rows used the old single scale. Underlying score +37 (63→100).
2026-08-10100100
AGENT-READY
0 checks failing
2026-08-11100100
READY FOR AI
0 checks failing Underlying score -4 (100→96).
2026-08-12100100
READY FOR AI
0 checks failing
2026-08-13100100
READY FOR AI
0 checks failing
2026-08-14100100
READY FOR AI
0 checks failing Underlying score +3 (96→99).
2026-08-15100100
READY FOR AI
0 checks failing
2026-08-16100100
READY FOR AI
0 checks failing
2026-08-17100100
READY FOR AI
0 checks failing
2026-08-18100100
READY FOR AI
0 checks failing
2026-08-19100100
READY FOR AI
0 checks failing
2026-08-20100100
READY FOR AI
0 checks failing
2026-08-22100100
READY FOR AI
0 checks failing
2026-08-23100100
READY FOR AI
0 checks failing
2026-08-24100100
READY FOR AI
0 checks failing
2026-08-25100100
READY FOR AI
0 checks failing
2026-08-28100100
READY FOR AI
1 check failing Underlying score -2 (99→96).
2026-09-01100100
READY FOR AI
1 check failing
2026-09-02100100
READY FOR AI
1 check failing
2026-09-04100100
READY FOR AI
1 check failing
2026-09-05100100
READY FOR AI
1 check failing
2026-09-0636100
CONFLICTING SIGNALS FOR AI
6 checks failing Underlying score -24 (96→72).
2026-09-07100100
READY FOR AI
1 check failing Underlying score +24 (72→96).
2026-09-08100100
READY FOR AI
1 check failing
2026-09-09100100
READY FOR AI
1 check failing
2026-09-10100100
READY FOR AI
1 check failing
2026-09-11100100
READY FOR AI
1 check failing
2026-09-14100100
READY FOR AI
1 check failing

The evidence

Every check we ran

18 checks in six categories. Four of the six are things no other AI-readiness tool tests. The raw request that produced each result is printed underneath it.

96
/ 100
READY FOR AI
Scored on discoverable files alone
what other tools measure
100
Scored on whether it works
same site, promises called
96

Score by category

Discovery · also tested elsewhere

40 / 40

Can an AI assistant find you and learn what you offer?

PASS3/3Crawler policy (robots.txt)
Published.
GET /robots.txt → 200
PASS3/3Page inventory (sitemap.xml)
Published.
GET /sitemap.xml → 200
PASS6/6Agent card
Published, 5 skill(s) declared.
GET /.well-known/agent-card.json → 200
PASS4/4Machine-surface index (api-catalog)
Published.
GET /.well-known/api-catalog → 200
PASS4/4Agent instructions (AGENTS.md)
Published — AI coding agents and crawlers read this first.
GET /AGENTS.md → 200
PASS3/3Full-detail profile (llms-full.txt)
Published — the expanded profile an AI ingests when it wants everything.
GET /llms-full.txt → 200
NA0/5OAuth/OIDC Discovery
Honest missing/protected endpoint.
http_404
PASS5/5LLMs.txt Discovery
Valid Markdown syntax.
http_200_57928bytes
PASS6/6Active Bot WAF Discrimination
Bot fingerprint treated equally.
overlap:1.00
PASS3/3Robots.txt Coherence
Explicit granular rules for AI/citation bots: gptbot, chatgpt-user, perplexitybot, anthropic-ai, google-extended, ccbot, cohere-ai
PASS3/3Sitemap Referenced in Robots.txt
Referenced sitemap fetched and parses as valid XML.

Comprehension · also tested elsewhere

19 / 19

Can an AI assistant read your content instead of your HTML?

PASS4/4Structured identity markup
JSON-LD present.
homepage scan for application/ld+json
PASS3/3Markdown sitemap (sitemap.md)
Published.
GET /sitemap.md → 200
PASS5/5Markdown Content Negotiation
Genuine Markdown delivered.
ct:text/markdown; charset=utf-8
PASS5/5Raw vs Rendered Dependency (COST)
Sufficient raw visible content.
PASS2/2Link Headers RFC 8288
Link header is syntactically valid and all link-values are well-formed.
</.well-known/api-catalog>; rel="api-catalog", </llms.txt>; rel="llms-txt", </pr

Truthfulness · POINTER ONLY

41 / 41

Is everything you advertise actually there?

PASS8/8Documentation link resolves to real documentation
Resolves to a distinct page.
GET https://3dogs.ai/pointer/ → 200, 12549 bytes vs homepage 20341
PASS8/8Advertised agent endpoint answers
Responds (HTTP 405).
GET https://agent.3dogs.ai/a2a → 405
PASS9/9Every declared API endpoint exists
4 operation(s) probed, all respond.
called 4 declared operations; 0 returned 404 or a catch-all
PASS5/5MCP server card resolves
Published and parses.
GET /.well-known/mcp.json → 200
PASS4/4agents.json action manifest
Published and parses.
GET /agents.json → 200
PASS3/3JSON-LD vs Visible HTML Consistency (COST)
All JSON-LD claims visible.
PASS4/4Canonical and Open Graph Consistency
Canonical and OG exact match.
c:https://3dogs.ai_og:https://3dogs.ai

Authority · POINTER ONLY

33 / 33

Are consequential actions properly governed?

PASS10/10Write operations declare authorization
All state-changing operations declare authorization, 3 explicitly declared public.
parsed 4 write operations across 1 description(s)
PASS6/6Authorization metadata discoverable
Published.
GET oauth-protected-resource → 200
PASS4/4Human-readable AI-assistant onboarding
Published.
GET /auth.md → 200
PASS3/3AI usage policy (ai.txt)
Published — your terms for AI crawlers are stated.
GET /ai.txt → 200
PASS4/4Declared agent permissions
Published and parses — an AI can read what it is permitted to do.
GET /.well-known/agent-permissions.json → 200
PASS3/3Security contact (RFC 9116)
Published with a Contact field.
GET /.well-known/security.txt → 200
PASS3/3Content-Signal in robots.txt
Declared — you state how AI may use what it crawls.
robots.txt Content-Signal: present

Failure honesty · POINTER ONLY

23 / 23

Does your site tell the truth when something is wrong?

PASS10/10Missing pages return an honest error
Returns HTTP 404.
GET /zz-pointer-probe-9f3a-does-not-exist → 404, 788 bytes vs homepage 20341
PASS8/8AI assistants see your current site, not a stale copy
Cached and live responses match on every file checked.
compared 6 paths against a cache-busted request; 0 diverged
PASS5/5Unknown machine paths 404 correctly
Returns HTTP 404.
GET /.well-known/zz-does-not-exist-9f3a → 404

Commerce · POINTER ONLY

12 / 18

Can an AI assistant learn your price and next step?

PASS6/6Machine-readable pricing
Published.
GET /pricing.json → 200
PASS4/4A declared next action for AI assistants
5 skill(s) an AI assistant can invoke.
agent card skills: 5
WARN2/3Natural-language endpoint (NLWeb /ask)
Absent. An AI must scrape pages instead of asking you directly.
GET /ask → 404
FAIL0/5Agent-Commerce Protocol Signals
Deliberate implementation failed strict schema validation.
no_valid_fields
NA0/3Hollow Commerce Schema Validation
No commerce schema.

The remedy

What closing each one takes

0
close with a generated file
0
need your hosting or router
0
need a decision about what you offer

Every finding above was produced by making a real request against the live site. A document describing an API is evidence of a document.