Skip to content

MCP server generation

A tool set derived from your spec, as source you own.

reed mcp generate turns a configured OpenAPI spec into a bare-HTTP MCP server source tree.

json
{
"api": { "specs": { "ingestion": "openapi/ingestion.yaml" } },
"mcp": {
"ingestion": {
"output": "generated/mcp-ingestion",
"name": "@acme/ingestion-mcp",
"version": "1.4.0",
"baseUrl": "https://api.example.com"
}
}
}

Then:

sh
reed mcp generate

Every mcp key must name a declared api.specs entry. Omit --spec to generate all of them.

The generated server calls your API over plain HTTP. It does not depend on a client library, which is what lets it exist at all — Reed does not generate an SDK, so a server built on one would have nothing to import.

name must satisfy npm’s package-name grammar; version must be valid SemVer; baseUrl must be an absolute URL with a scheme. These are validated at reed check time rather than discovered when the server fails to start.

output is a path inside your project. The generated tree is source you own, commit, review and deploy on your own terms.

Reed does not host an MCP endpoint for you. There is no Reed-operated URL your tools connect to, and correspondingly no footer link to one on your built site — a link to an endpoint that does not exist would be a fabrication.

mcp config is generation-only. Adding the block does not alter a single rendered page, and running generate does not require a build. The two outputs are independent.

Generation is deterministic: the same spec and config produce the same tree. Commit the output and regenerate when the spec changes — the diff then shows exactly which tools your API change added, removed or altered, which is information a hand-maintained server never gives you.