{"schemaVersion":"1.0","name":"ScanChess","slug":"scanchess","website":"https://scanchess.com","category":"education","description":"Chess images to FEN. Handwritten scoresheets to PGN.","capabilities":["llmsTxt documentation"],"aiResources":{"llmsTxt":{"type":"llmsTxt","url":"https://scanchess.com/llms.txt","status":"verified","available":true,"httpStatus":200,"checkedAt":"2026-11-03T22:17:18.196Z","lastSuccessfulAt":"2026-11-03T22:17:18.196Z","contentType":"text/plain; charset=utf-8","contentSize":26311,"estimatedTokens":6566,"tokenMethod":"UTF-16 characters / 4 (approximation)","contentHash":"1df00bb8ea05aab35c874cd16e0d22b8b624e721dbe276aead3858d10686da35","internalLinks":84,"externalLinks":0,"document":{"h1Count":1,"firstBlockIsH1":true,"title":"ScanChess","usefulTitle":true,"headingCount":15,"uniqueHeadingCount":15,"hasSections":true,"orderedHeadings":true,"sectionWithContent":true,"fileListLinks":84,"summaryPresent":true,"contextPresent":true,"validLinks":84,"invalidLinks":0,"duplicateLinks":0,"descriptiveLinks":84,"annotatedLinks":84},"linkHealth":{"eligibleCount":84,"selectedCount":5,"sampledCount":5,"working":0,"broken":0,"unknown":5,"checkedAt":"2026-11-03T22:17:18.385Z","sourceHash":"1df00bb8ea05aab35c874cd16e0d22b8b624e721dbe276aead3858d10686da35","method":"deterministic sample, at most 5 URLs, at most 2 concurrent hosts, 15s budget","results":[{"url":"https://scanchess.com/blog/chessvision-ai-vs-scanchess","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/solutions/convert-chess-scoresheet-to-pgn","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/blog/fide-rated-players-statistics","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/solutions/digitize-chess-games","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/solutions/chess-scoresheet-scanner-for-coaches","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"}]},"headings":["ScanChess","Start here","The scanner app (after signing in)","Free tools (no account needed)","Use cases and how-tos","Guides: Billing","Guides: Comparison","Guides","Guides: Improvement","Guides: Notation","Guides: Rules","Guides: Statistics"],"warnings":[],"summary":"Documentation sections: ScanChess; Start here; The scanner app (after signing in); Free tools (no account needed); Use cases and how-tos; Guides: Billing.","summarySourceHash":"1df00bb8ea05aab35c874cd16e0d22b8b624e721dbe276aead3858d10686da35","processingVersion":"2.0","method":"markdown-ast-analysis"},"llmsFullTxt":null,"webmcp":null},"readiness":{"score":100,"version":"2.0","confidence":"medium","components":[{"name":"availability","weight":25,"assessedWeight":25,"points":25,"rules":[{"id":"current_access","label":"Current usable primary file","weight":25,"observation":"Current llms.txt retrieval succeeded (HTTP 200); usable text verified.","points":25}],"explanation":"Current usable primary file: 25/25."},{"name":"structure","weight":25,"assessedWeight":25,"points":25,"rules":[{"id":"title","label":"One project H1 at the beginning","weight":10,"observation":"1 H1 heading(s); starts with H1: yes.","points":10},{"id":"sections","label":"Coherent content sections","weight":5,"observation":"H2 with content: yes; no heading-level jumps: yes.","points":5},{"id":"file_lists","label":"Documentation links organized in lists","weight":5,"observation":"84 valid link occurrence(s) inside Markdown lists.","points":5},{"id":"heading_uniqueness","label":"Non-repeated headings","weight":5,"observation":"15 unique heading(s) out of 15; code examples are excluded.","points":5}],"explanation":"One project H1 at the beginning: 10/10. Coherent content sections: 5/5. Documentation links organized in lists: 5/5. Non-repeated headings: 5/5."},{"name":"links","weight":25,"assessedWeight":15,"points":15,"rules":[{"id":"link_syntax","label":"Resolvable HTTP(S) link syntax","weight":5,"observation":"84 valid URL occurrence(s), 0 malformed, unsupported or unresolved.","points":5},{"id":"link_uniqueness","label":"Unique documentation destinations","weight":5,"observation":"84 unique destination(s) from 84 valid occurrence(s).","points":5},{"id":"link_labels","label":"Descriptive link labels","weight":2.5,"observation":"84 of 84 unique links have non-placeholder labels. This is a text heuristic, not a semantic guarantee.","points":2.5},{"id":"link_notes","label":"Context beside file links","weight":2.5,"observation":"84 of 84 unique links have notes beside a Markdown list link.","points":2.5},{"id":"link_health","label":"Sampled destination accessibility","weight":10,"observation":"5 of 84 destinations sampled: 0 working, 0 confirmed 404/410, 5 unknown. No decisive result: these 10 points are excluded from the assessed maximum.","points":null}],"explanation":"Resolvable HTTP(S) link syntax: 5/5. Unique documentation destinations: 5/5. Descriptive link labels: 2.5/2.5. Context beside file links: 2.5/2.5. Sampled destination accessibility: not measured."},{"name":"confidence","weight":15,"assessedWeight":15,"points":15,"rules":[{"id":"verification_age","label":"Age of last successful verification","weight":10,"observation":"Last success: 2026-11-03T22:17:18.196Z. Full points through day 8 (7-day schedule plus 1-day grace), 60% through day 30, 20% thereafter or for an unknown date.","points":10},{"id":"latest_success","label":"Latest primary check succeeded","weight":5,"observation":"Latest primary verification succeeded.","points":5}],"explanation":"Age of last successful verification: 10/10. Latest primary check succeeded: 5/5."},{"name":"metadata","weight":10,"assessedWeight":10,"points":10,"rules":[{"id":"summary","label":"Useful summary blockquote","weight":5,"observation":"A blockquote before the first H2 with at least 20 non-whitespace characters and no placeholder-only text.","points":5},{"id":"context","label":"Useful introductory context","weight":5,"observation":"An introductory paragraph before the first H2 with at least 20 non-whitespace characters and no placeholder-only text. Listing form fields do not earn these points.","points":5}],"explanation":"Useful summary blockquote: 5/5. Useful introductory context: 5/5."}],"earnedPoints":90,"assessedWeight":90,"availableWeight":100,"provisional":true,"calculatedAt":"2026-11-03T22:17:20.799Z","lastVerifiedAt":"2026-11-03T22:17:18.196Z","evidence":{"sourceUrl":"https://scanchess.com/llms.txt","contentHash":"1df00bb8ea05aab35c874cd16e0d22b8b624e721dbe276aead3858d10686da35","processingVersion":"2.0","retrievedAt":"2026-11-03T22:17:18.196Z"},"linkSampling":{"eligibleCount":84,"selectedCount":5,"sampledCount":5,"working":0,"broken":0,"unknown":5,"checkedAt":"2026-11-03T22:17:18.385Z","sourceHash":"1df00bb8ea05aab35c874cd16e0d22b8b624e721dbe276aead3858d10686da35","method":"deterministic sample, at most 5 URLs, at most 2 concurrent hosts, 15s budget","results":[{"url":"https://scanchess.com/blog/chessvision-ai-vs-scanchess","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/solutions/convert-chess-scoresheet-to-pgn","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/blog/fide-rated-players-statistics","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/solutions/digitize-chess-games","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"},{"url":"https://scanchess.com/solutions/chess-scoresheet-scanner-for-coaches","status":"unknown","httpStatus":null,"reason":"oversized","attempted":true,"checkedAt":"2026-11-03T22:17:18.385Z"}]},"warnings":["This measures observable documentation, not model rankings or citation probability.","H1 is the only required section in the llms.txt proposal. Other checks are LLMSList quality preferences; missing optional sections do not make usable text invalid.","Provisional score: 10 unmeasured points excluded. Unknown destinations are not classified as broken.","Destination accessibility covers a sample of 5 out of 84 unique links, not the entire website."]},"updatedAt":"2026-11-03T22:17:20.799Z"}