quickoauth

Why this site exists

Writing an MCP server takes an afternoon. Getting Claude, ChatGPT, or Grok to connect to it with authentication can eat a week — not because the OAuth is hard, but because the requirements live in four different specs (RFC 9728 protected-resource metadata, RFC 8414 authorization-server metadata, RFC 7591 dynamic client registration, OAuth 2.1 PKCE), each client probes your server a little differently, and when any probe fails you get the same message: "unable to connect." No status code, no log line on your side — some checks fail before a single request reaches your server.

This site is the record of getting one self-hosted MCP server through claude.ai's connector validation — an Auth0 tenant fronted by a thin proxy, behind Caddy — and then extending the same flow to ChatGPT and Grok. Everything here was verified against a server that passed, not paraphrased from the specs.

What actually makes it easier

The discovery sequence is written down, in order. The connector checklist lists every request a client makes before you ever see a login screen — the DNS and TLS pre-flight, the 401 probe, both metadata documents, the DCR call — with the exact response each step needs. You implement against a known sequence instead of reverse-engineering one from a spinner.

The prompts carry the requirements so you don't have to. Each prompt encodes the endpoint contracts, header formats, and redirect-URI rules for a specific stack — FastMCP, an Auth0 proxy, Cloudflare Workers, Caddy. Fill in your domain, paste it into Claude Code or any coding agent, and the agent wires it while you review. The knowledge transfers as work, not homework.

Debugging is a decision tree, not a guess. The failure map orders the seven ways connections break by how often they actually happen, each with a one-line test. You run them top to bottom; the first failure is your diagnosis.

The per-client differences fit in one table. Claude registers via DCR, ChatGPT prefers CIMD with DCR as fallback, Grok runs its flow in-app, and each has its own callback URL. One guide covers the deltas and the registration pattern that survives all three — allow what registers, validate exactly — so one server passes every client without hardcoding any of them.

Your agent can use this site directly. Everything here is also served over MCP at https://quickoauth.com/mcp. Add it as a connector and the agent doing your OAuth work can search these guides and pull these prompts mid-task, instead of you copy-pasting between tabs.

The short version

Without this site: read four RFCs and three vendors' docs, implement, get "unable to connect," and iterate blind. With it: run the checklist, paste the prompt for your stack, run the four curl checks, connect. The OAuth doesn't get simpler — the path through it does.