# Ladderboard > A round-robin ladder and match-score board for small clubs. Players join by scanning one printed QR poster: no app to install, no account to make. The ladder table is computed from the results you enter, using a fixed published rule order, so the same results always give the same table. Service URL: https://ladder.rowb.app/ MCP endpoint: https://ladder.rowb.app/mcp (Streamable HTTP, JSON-RPC. Bearer API key required for tool calls.) Server card: https://ladder.rowb.app/.well-known/mcp/server-card.json ## What it does - Keeps one club ladder: players and match results. - Computes standings: wins, then head-to-head, then set percentage, then games, then name. - Suggests the next match: the closest-ranked pair with no result yet. - Prints an A4 QR poster (https://ladder.rowb.app/poster?key=...) so players join without an account. ## REST API (Bearer key required) - POST /api/ladder {"club":"Riverside Tennis","sport":"tennis"} -> creates/updates the ladder, returns the join URL - POST /api/player {"name":"Ana Ruiz"} -> registers a player, returns a 6-character code - POST /api/match {"player_a":"Ana Ruiz","player_b":"Bo Chen","sets_a":2,"sets_b":1} - GET /api/standings -> table + the next recommended match - GET /health -> liveness, no key ## Prices (USD, billed per recorded match; players and the board are unlimited on every plan) - Anonymous: 5 matches/day, no key - Free key: 50 matches/month, no card — https://ladder.rowb.app/signup - Entry: $5/month, 1,000 matches/month - Starter: $9/month, 5,000 matches/month Pricing page: https://ladder.rowb.app/pricing ## Notes for agents - No account is needed for a player: the organiser registers them by name and the player gets a private link. - Player pages are private and disallowed in robots.txt.