npx mcpblaze@latest connector <openapi url>Get your App listed in Claude and ChatGPTComply with leading AI directory listing policies
- Claude
- ChatGPT
One command. Ready to submit.To both Claude and ChatGPT.
Point it at your OpenAPI spec. It makes your API a Claude Connector and a ChatGPT plugin with sign-in and per-user rules, checks every published requirement, runs the test calls a reviewer makes, and writes the packet you paste into each portal.
You submit. Anthropic and OpenAI decide.
~/code/mybackend $ npm run dev
⚡️ My app: A restaurant table booking app, running on localhost:3000
GET /reservations/{id} Get one booking
DELETE /reservations/{id} Cancel a booking
POST /reservations Book a table
~/code/mybackend $
What the directories ask, and how each item is met
Anthropic and OpenAI publish what they look for. Every line is a check, run against your live connector. The result is a table: the rule, why it complies, the policy page it comes from.
Domain & transport
14- Your own domain, one CNAME
- Streamable HTTP; a 401 that starts sign-in
Sign-in
13- OAuth on the connector itself
- The consent page names claude.ai or chatgpt.com
Tools
21- Explicit hints: modify and delete prompt
- No tool asks for a credential
Runtime
5- Errors say what the API said
- No traces or request ids in results
Listing
43- Privacy page answers 200 and says what it keeps
- Name and tagline within each portal’s limits
Attestations
11- Claude’s seven, ChatGPT’s three
- Recorded with your name and the time
Drift
1- Live tools match the listing snapshot
- A nightly re-check emails you
Evidence
16- Every tool answered for the reviewer
- Every prompt made the agent call a tool
Safe fixes are applied for you. What needs you is asked once, pre-filled from your spec.
It runs the calls a reviewer makes before you submit
Each example prompt is tried the moment you type it, through Claude Code and through Codex CLI. Every tool is called with a good argument and a bad one. The gateway records what happened; the CLI’s word is never the evidence. You still test it in Claude and in ChatGPT yourself, the way the reviewer will.
Then the use cases and the reviewer instructions are written from that run. Enter accepts.
- 1.Add https://mcp.resiresi.example (your own domain) as a custom connector in Claude or ChatGPT; sign in with the username and password entered in the credential fields.
- 2.Ask: "Book a table for 2 tonight at Nino Pizza" — uses createReservation; expect a booking with an id, the guests and the time.
- 3.Ask: "Cancel my 20:00 booking" — uses cancelReservation; expect the status cancelled.
- 4.A bad argument (guests: "many") answers "400: guests must be a number" — a message, not a crash.
Sign-in and permissions, without writing them
Anthropic requires OAuth when tools act on a user’s account, and allows no sign-in only for public data; OpenAI accepts OAuth or none, never a shared token in the listing. People sign in once in Claude or ChatGPT; every call reaches your backend with their name on it, and your spec’s rules decide what they may do.
Who’s asking
signed in as ana@ninopizza.com
book me a table for 2 tonight
●Booked: table 1, 2 people at 19:30
POST /reservations
x-abz-user-id user_8f2k… Ana, signed in
x-abz-tenant-id ninopizza her pizzeria
x-abz-identity eyJhbGciOi… signed by MCPblaze: can't be faked
{ "guests": 2, "time": "19:30" }
Are they allowed
Bencancel Ana’s 19:30 booking
✗Not yours: only whoever made it can cancel it
Bencancel my 20:00 booking
✓Cancelled
Ninocancel Ana’s 19:30 bookingadmin
✓Cancelled. Nino is an admin of Nino Pizza
The submission packet
When every check is green: every field to paste, in each portal’s order, the reviewer account (created for you, shown once), the test steps, and the compliance table as proof.
A nightly re-check is switched on when the listing is green: it emails you if the listing drifts or a new check is added.
# ResiResi — directory submission packet
Claude: ready · ChatGPT: ready
## Listing
- Name: ResiResi
- Connector URL: https://mcp.resiresi.example
- Auth: OAuth sign-in on the connector
## Reviewer account
- Username: reviewer-resiresi
- Password: shown once, stored encrypted
## Portal steps, in portal order
1. Connection · 2. Tools · 3. Listing · 4. Use cases · 5. Company · 6. Authentication · 7. Data handling · 8. Test & launch …
### Compliance — rule by rule, with sources
What we do not do
We do not submit for you
You paste the packet into each portal. The command says what goes where.
We do not decide
Passing these checks means your connector meets the requirements we can verify. Listing decisions are made by Anthropic and OpenAI.
We do not replace ChatGPT
The automated runs are made from Claude Code and from Codex CLI, and the gateway records them. The real ChatGPT surface you try yourself before you submit.
One command, then you submit
Start in the terminal, finish on the page, or the other way round: every answer is saved as you give it, and one scorecard says what is left.
Or from your agent: claude mcp add --transport http mcpblaze https://mcp.mcpblaze.com — it can create the MCP server and check readiness; the details are on the page.
Rather hand it to your agent? Paste one prompt into Claude Code or Codex.