## How scoring works

agentgrade checks for 10 capabilities across payments, discovery, and identity. Each capability has sub-checks that fall into two tiers:

- **Verified** — agentgrade made a live request and confirmed the capability works (e.g., [MCP](/kb/mcp) handshake completed, [OpenAPI](/kb/openapi) spec returned valid JSON)
- **Declared** — a manifest or config file was found that claims the capability exists, but it wasn't independently confirmed

Verified checks are weighted **2x** in the score calculation. A site that works is worth more than a site that claims to work.

## The 10 capabilities

### Payments (highest weight)
- **Machine Payments** — [x402](/kb/x402), [MPP](/kb/mpp), or [L402](/kb/l402) detected via HTTP 402 headers
- **Bazaar** — x402.json service catalog with discoverable endpoints

### Discovery
- **MCP** — Model Context Protocol endpoint (JSON-RPC 2.0)
- **AI Plugin** — ai-plugin.json manifest with reachable API spec
- **Claude Plugin** — claude.json manifest with valid endpoints
- **OpenAPI** — openapi.json spec that returns valid JSON
- **[llms.txt](/kb/llms-txt)** — LLM context file starting with an H1 heading
- **Skills** — skills.json manifest with reachable endpoints

### Informational (lower weight)
- **[agents.txt](/kb/agents-txt)** — Agent access policy file
- **[robots.txt](/kb/robots-txt)** — Agent-aware directives for AI crawlers

### Optional (don't hurt your score)
- **Identity** — WebFinger, DID, Nostr NIP-05, AT Protocol DID

## Score breakdown

The percentage score is: **(passed check weight / total check weight) × 100**

The summary shows "X / Y checks passed" where Y excludes optional checks that weren't found. Optional checks (identity protocols) can only help your score, never hurt it.

## How to improve your score

1. **Add discovery files first** — `/openapi.json` and `/llms.txt` are the easiest wins
2. **Make sure they work** — a reachable, valid OpenAPI spec gets you verified checks, not just declared
3. **Add MCP** — the MCP handshake (initialize → tools/list → tools/call) earns multiple verified checks
4. **Add payment support** — x402 or MPP headers on at least one endpoint lights up the Machine Payments capability
5. **Publish a service catalog** — `/.well-known/x402.json` with discoverable endpoints earns Bazaar checks

## Related

- [SKILL.md](/kb/skills)
- [A2A](/kb/a2a)
- [WebMCP](/kb/webmcp)
