catalog / services

URL Shortener

Slug generation, redirects, click analytics, expiry and custom domains.

19 capabilities 2 sections reference specification

Build against it

# give your agent the catalog — no account, no install
claude mcp add provespec -- npx -y provespec-mcp

# then, from any agent session
spec_get(slug: "url-shortener")                → the capability tree
spec_checklist(slug: "url-shortener")          → the questions to answer
spec_grade(slug: "url-shortener", grades: [...])  → parity % + the gap list

# or just fetch it
curl https://provespec.com/catalog/url-shortener/spec.json

Grade every capability below as yes · partial · no · na, with a file reference as evidence. Whatever you leave ungraded counts as missing — the gap list is the work queue.

Or just paste this to your agent

Use the ProveSpec MCP server. Fetch the "url-shortener" spec with
spec_get, then walk spec_checklist and grade this repository against it —
one verdict per capability, each with a file reference as the note.
Call spec_grade with the results and give me the gap list as the plan.

If the server is not registered, add it first:
  claude mcp add provespec -- npx -y provespec-mcp

The specification

AI 15

Core
  • Shorten URL POST /api/links returns short code + full short URL
  • Redirect GET /:code -> 301/302 unknown code -> 404
  • URL validation reject non-http(s) and malformed URLs
  • Custom alias optional caller-chosen code; 409 when taken
  • Code generation base62, 6-8 chars collision-safe
  • Idempotent shorten same long URL returns the same code (per owner)
Links
  • Expiration TTL or date expired -> 410
  • Delete/disable link
  • List own links GET /api/links paginated
Analytics
  • Click counting total clicks per link
  • Click metadata referrer, ts at minimum timestamp series
  • Stats endpoint GET /api/links/:code/stats
Ops
  • Persistence links survive restart
  • Rate limiting on shorten endpoint
  • Health endpoint GET /healthz

UI 4

Shorten form
  • Paste URL, get short link with copy-to-clipboard
  • Inline validation errors
Links page
  • List with clicks and created date
  • Per-link stats view clicks over time
Download spec.json All 53 specs