Short answer: You do not need a registry to expose your own API. Keep the spec in the repo, generate the server, run it over a local transport for development, and host it over HTTP for remote agents. A registry is optional discovery, not a requirement to publish.

What publishing actually requires

An MCP server needs a transport and a reachable endpoint. For local development, stdio or a local HTTP port is enough. For remote agents, host the server over HTTPS. None of this requires a catalog.

The minimal path

  1. Compile the OpenAPI file into a server in the studio.
  2. Run it locally over stdio or HTTP and confirm the tools in the call log.
  3. For remote agents, host the server over HTTPS, alongside the docs.
  4. Point the agent at the endpoint; list it in a catalog only if you want discovery.

Why teams skip the registry

For a private or internal API, a public catalog is not useful and the server is reached directly. Keeping the docs and the server on the same host means they are always in sync.

When to add a listing

List the server when you want external agents to discover it. Treat the listing as a pointer to the generated server, not as a separately maintained copy.

This is part of the Powerduck vs Smithery comparison. Next, read provenance and skipped tools.