---
title: "Waymark report for agentkey.app"
canonical: "https://waymark.genedai.me/score/agentkey.app"
last-updated: "2026-09-13T12:20:27.265Z"
---

# Waymark report for agentkey.app

Waymark scored agentkey.app 72.9/100 (B) on 13 Sep 2026.
Score: 72.9/100 — Usable with gaps
Scanned: 2026-09-13T12:20:27.265Z
Canonical report: https://waymark.genedai.me/score/agentkey.app

## Layer breakdown

- Discovery: 17.3/20 (17 of 21 eligible checks passed)
- Access: 21.9/30 (26 of 38 eligible checks passed)
- Usability: 23.6/40 (9 of 17 eligible checks passed)
- Payments: 10/10 (1 of 1 eligible checks passed)

## Findings

### 1. Well-known AI catalog

- Layer: discovery
- Result: failed
- Evidence: No ai-plugin.json or ai-catalog.json.
- Recommended fix: Add /.well-known/ai-plugin.json or /.well-known/ai-catalog.json.

### 2. OpenAPI / Swagger link

- Layer: access
- Result: failed
- Evidence: No OpenAPI/Swagger link in HTML.
- Recommended fix: Link to an OpenAPI or Swagger document from the homepage.

### 3. RSS or Atom feed

- Layer: access
- Result: failed
- Evidence: No RSS/Atom link.
- Recommended fix: Expose an RSS or Atom feed for machine subscribers.

### 4. CSP or X-Frame-Options

- Layer: access
- Result: failed
- Evidence: Neither CSP nor X-Frame-Options on homepage.
- Recommended fix: Send Content-Security-Policy or X-Frame-Options.

### 5. CORS / API hint

- Layer: access
- Result: partial
- Evidence: No CORS header or obvious API path.
- Recommended fix: If you expose an API, send Access-Control-Allow-Origin for intended clients.

### 6. OAuth / OIDC well-known

- Layer: access
- Result: failed
- Evidence: No oauth-authorization-server or openid-configuration.
- Recommended fix: Publish /.well-known/openid-configuration or oauth-authorization-server if you authenticate agents.

### 7. robots.txt AI policy

- Layer: discovery
- Result: partial
- Evidence: robots.txt present but no named AI crawlers.
- Recommended fix: Name GPTBot, ClaudeBot, Google-Extended, PerplexityBot and state allow or deny.

### 8. HTTP Link header

- Layer: discovery
- Result: failed
- Evidence: No rel=sitemap|describedby|api-catalog|alternate on homepage.
- Recommended fix: Send RFC 8288 Link headers for related machine resources.

### 9. MCP initialize

- Layer: usability
- Result: failed
- Evidence: No MCP card to initialize
- Recommended fix: Expose Streamable HTTP MCP and answer initialize.

### 10. ai-plugin.json

- Layer: discovery
- Result: failed
- Evidence: No /.well-known/ai-plugin.json.
- Recommended fix: Optionally publish a plugin-style capability manifest.

### 11. security.txt

- Layer: access
- Result: failed
- Evidence: No /.well-known/security.txt Contact.
- Recommended fix: Publish /.well-known/security.txt with a Contact field.

### 12. Rate limit signal

- Layer: usability
- Result: partial
- Evidence: API surface without a rate-limit signal.
- Recommended fix: Document or send rate-limit headers on APIs.

### 13. Idempotency signal

- Layer: usability
- Result: partial
- Evidence: API surface without idempotency notes.
- Recommended fix: Document idempotency keys for mutating calls.

### 14. Machine-readable errors

- Layer: usability
- Result: partial
- Evidence: API surface without a JSON error shape.
- Recommended fix: Return a JSON or problem+json error body.

### 15. OpenAPI document

- Layer: access
- Result: failed
- Evidence: OpenAPI probe.
- Recommended fix: Publish an OpenAPI document at a stable URL.

### 16. Honest 404

- Layer: usability
- Result: failed
- Evidence: Unknown path returned the same-origin homepage (SPA 200).
- Recommended fix: Return HTTP 404 for unknown paths. Soft-shell fail only when the unknown path is a same-origin homepage SPA 200.

### 17. MCP server

- Layer: usability
- Result: partial
- Evidence: MCP mentioned without a documented initialize.
- Recommended fix: Publish an MCP card or document the MCP URL in llms.txt, then answer initialize.

### 18. Agent instruction / when-to-use

- Layer: access
- Result: failed
- Evidence: Agent file exists without when-to-use guidance.
- Recommended fix: Tell agents when to reach for you: add a 'when to use this' section to your llms.txt (or a dedicated agent-instructions file) that names your best-fit use cases.

### 19. Organization schema completeness

- Layer: access
- Result: failed
- Evidence: Organization JSON-LD missing contactPoint and address.
- Recommended fix: Add Organization JSON-LD that includes both contactPoint (with email/phone and contactType) and address (PostalAddress).

### 20. llms.txt links resolve

- Layer: access
- Result: partial
- Evidence: 5 real, 2 homepage-shell, 1 dead of 8 sampled links.
- Recommended fix: Make every link your llms.txt declares resolve to real content, not a homepage shell 200.

### 21. Markdown frontmatter metadata

- Layer: access
- Result: failed
- Evidence: Served markdown has no YAML frontmatter block.
- Recommended fix: Open served markdown with a --- frontmatter block carrying title plus description, canonical, or last-updated.

### 22. Page token budget

- Layer: access
- Result: failed
- Evidence: Extracted text is 117077 characters, over the ~100k agent budget.
- Recommended fix: Keep each page's extracted text under ~100K characters so it fits an agent's context window.

### 23. Accessible document structure

- Layer: usability
- Result: partial
- Evidence: Landmarks partial (main=false nav=true h1=true skip=false).
- Recommended fix: Give the homepage a main region, nav, H1, and a heading order that does not skip levels.

### 24. Multi-language SDK packages

- Layer: usability
- Result: partial
- Evidence: npm matches; second ecosystem homepage does not.
- Recommended fix: Publish official SDK packages on npm and PyPI whose homepage is this domain.

## Interpretation

Public technical snapshot; not a guarantee of task completion. Private and authenticated workflows are outside this scan. Cite scanned_at and the canonical report URL; the URL serves the latest completed snapshot and can change after a rescan.

The official Waymark score is Discovery 20 / Access 30 / Usability 40 / Payments 10. N/A and scanner-error checks drop out of the denominator; they are not scored as failures. An observed agent journey is supporting evidence and does not change the numeric score.
