DEV Community

Jeff
Jeff

Posted on Originally published at powerduck.com

Generate an MCP Server from OpenAPI vs Pulling One from a Registry

Short answer: A registry supplies a server someone else authored; a generator compiles your contract into a server. For your own API, the generated server is correct by construction and updates on save, while a registry entry is a snapshot that must be re-published whenever the API changes.

What a registry entry is

It is a published artifact, a version of a server at a point in time. For a stable third-party service that is fine. For your own backend, it is a snapshot of a moving target, and it is stale as soon as the contract changes.

What a generated server is

Property Registry entry Generated server
Origin An author Your spec
Timing Published snapshot Current on every save
Correctness As authored Valid by construction
Maintenance Re-publish Regenerate

The failure that snapshots create

The classic bug is a stale listing: the endpoint moved, the registry still serves the old shape, and the agent trusts it. A generated server cannot serve a shape the contract does not declare.

How to use both

Generate from the contract as the source of truth, then publish or list that server when you want discovery. The listing reflects the current contract instead of a hand-maintained snapshot.

This is part of the Powerduck vs Smithery comparison. Next, read the OAuth comparison.

Top comments (0)