Notion
← board · notion.so · #65 of 80
Usable, with real friction
- C
- Grade
- 46
- Agent readiness
- Board average 77
Scanned 13 hours ago
Every outstanding fix in one prompt for your coding agent. Rescan →
Task
What does notion.so do and how do I use it? A fetch-only agent finds out.
12 fetches7 found5 missing
- /robots.txt⋯/sitemap.xml
- /llms.txt⋯/llms-full.txt
- /pricing
- /docs
- /openapi.json
- mcp.json⋯MCP initialize
- /privacy · /terms
every path the scanner fetched · replayed deterministically, no LLM
Evaluator notes
A fetch-only agent reached notion.so over HTTPS in 577 ms and identified it from its title as “The AI workspace that works for you. | Notion”. Little of the page survives without JavaScript, so a fetch-only agent sees mostly an empty shell. It found pricing and docs. It looked for an OpenAPI spec and an MCP server and found none.
Critical access needs attention
Whether an ordinary agent can enter, read, and operate the public site.
- ✓4 / 4 passedAgents can reach the site
Crawler access and bot defenses.
- ~1 / 2 passedCore content is available
Useful content remains accessible without a fragile browser-only path.
- ~1 / 2 passedNavigation fails safely
Redirects and missing pages give agents a recoverable path.
- ✓3 / 3 passedControls are understandable
Forms and interactive controls expose usable names and structure.
Fix these gaps first
Critical access gaps come first, then the biggest remaining points.
- 01OpenAPI spec discoverableAgent-ready
Publish your OpenAPI spec at /.well-known/openapi.json so agents can call you without reading docs.
+7 pts - 02Analytics installedMeasured
Install analytics (PostHog, Plausible, GA4) before spending on traffic.
+6 pts - 03Server answers initializeMCP
Serve Streamable HTTP MCP at /mcp (or declare the URL in /.well-known/mcp.json).
+6 pts - 04Structured data (JSON-LD)Agent-ready
Add SoftwareApplication or Organization JSON-LD so search engines and agents can read what you are.
+4 pts - 05Links to X or LinkedInShareable
Link your X and LinkedIn so visitors can follow and verify you.
+3 pts
Audit the checks behind the score
Grouped by what they measure. Not-applicable checks are excluded from scoring.
Crawlable5 of 5 passed · 19/19 pts›
- ✓Served over HTTPS5/5
https://www.notion.com/
- ✓Responds in under 1.5s5/5
577 ms to first byte
- ✓robots.txt present2/2
# Notion is hiring! # Check out our open roles at https://www.notion.so/careers …
- ✓sitemap.xml present2/2
/sitemap.xml → 200
- ✓Homepage is indexable5/5
HTTP 200
Metadata7 of 7 passed · 24/24 pts›
- ✓Title tag 10–70 characters5/5
"The AI workspace that works for you. | Notion" (45)
- ✓Meta description 50–160 characters5/5
"Build Custom Agents, search across all your apps, and automate busywork. The AI workspace where team…" (124)
- ✓Canonical URL set3/3
https://www.notion.com/
- ✓Exactly one H14/4
1 × <h1>: "Where teams and agents Think together."
- ✓Mobile viewport set3/3
width=device-width, initial-scale=1
- ✓Language declared2/2
<html lang="en-us">
- ✓Favicon declared2/2
/front-static/favicon.ico
Shareable2 of 3 passed · 11/14 pts›
- ✓Open Graph title, description and image8/8
title, description, image
- ✓Twitter/X card type set3/3
twitter:card = summary_large_image
- ✕Links to X or LinkedIn0/3
no X / LinkedIn links found
→ Link your X and LinkedIn so visitors can follow and verify you.
Converts3 of 3 passed · 17/17 pts›
- ✓Clear call to action8/8
4 CTA(s), e.g. "Request a demo"
- ✓Pricing page linked6/6
→ /pricing
- ✓HTML under 2 MB3/3
181 KB of HTML
Measured0 of 1 passed · 0/6 pts›
- ✕Analytics installed0/6
no analytics tag detected
→ Install analytics (PostHog, Plausible, GA4) before spending on traffic.
Agent-ready11 of 19 passed · 24/46 pts›
- ✕Structured data (JSON-LD)0/4
no JSON-LD
→ Add SoftwareApplication or Organization JSON-LD so search engines and agents can read what you are.
- ✓Machine-readable pricing3/3
/pricing lists prices as text
- ✓llms.txt present1/1
/llms.txt → 200, 4000+ chars
- ✕llms-full.txt present0/1
no /llms-full.txt
→ Publish /llms-full.txt with the full docs inlined, so agents can read everything in one fetch.
- ✓AI crawlers allowed in robots.txt2/2
none of 9 known AI crawlers blocked
- ✓No noai / TDM reservation2/2
no opt-out signals
- ✕Serves markdown on request0/1
Accept: text/markdown → text/html; charset=utf-8
→ Return text/markdown when the Accept header asks for it; agents skip the HTML entirely.
- ✕OpenAPI spec discoverable0/7
no /openapi.json or /.well-known/openapi.json
→ Publish your OpenAPI spec at /.well-known/openapi.json so agents can call you without reading docs.
- ✓Agent manifest (MCP, A2A or ai-plugin)2/2
/.well-known/mcp.json
- ✓Docs or API link from the homepage3/3
homepage links to docs / API
- ✕Content readable without JavaScript0/3
13,780 chars of visible text, 7.5% of HTML
→ Server-render the key copy; a fetch-only agent sees none of what JavaScript paints later.
- ✓Semantic landmarks (main, single H1)3/3
<main> present, 1 × <h1>
- ✓Images have alt text2/2
50/50 images have alt
- ✓Form fields are labelled2/2
1/1 fields have a label, name or aria-label
- ✓Descriptive link text2/2
0/103 links say "click here" / "learn more"
- ✕Agent-friendly 404s0/2
a nonexistent path returned HTTP 200
→ Return a real 404 for paths that do not exist; a 200 app shell makes every wrong guess look like a page.
- —Trust pages (privacy, terms, security)n/a
- ✕Organization schema complete0/2
no Organization in JSON-LD
→ Give the Organization JSON-LD a name, url, logo, description and sameAs links.
- ✕llms.txt says what you are and links out0/2
4000+ chars, no H1, has links
→ Start llms.txt with an H1 and one-paragraph summary, then link docs, pricing and API.
- ✓Contact route discoverable2/2
mailto:, /contact or /support link found
APIn/a›
- —Spec parses and declares a versionn/a
- —Operations have summaries and operationIdsn/a
- —Error responses documentedn/a
- —Auth scheme declaredn/a
- —Versioned paths or serversn/a
- —Spec within a model context budgetn/a
MCP0 of 1 passed · 0/6 pts›
- ✕Server answers initialize0/6
manifest present but no endpoint answered initialize
→ Serve Streamable HTTP MCP at /mcp (or declare the URL in /.well-known/mcp.json).
- —Tools listedn/a
- —Tools carry descriptionsn/a
- —Tool parameters have schemasn/a
Fixed something? Scan again.
One scan per site every 10 minutes. Snapshot 2026-08-24T13:49:18.796Z.