Because the tool surface is generated from the spec, the same package fronts a payments API, an internal service, or the Petstore demo — you control which operations surface through whitelist and blacklist patterns, keeping the tool list scoped to what the agent should touch.
A server with no fixed tool list: it loads an OpenAPI or Swagger spec from a file or URL and exposes each operation as an MCP tool, so an assistant can call a REST API directly. The tools you get are whatever the spec defines.
- Loads specs from a local path or an HTTP URL, with OpenAPI Overlays to patch them
- Filters which operations become tools using glob patterns on operation id or URL path, so a large API can be trimmed to the handful you want
- Carries authentication, custom headers, and a target-URL override through to the live API
- Pointed at the bundled Petstore sample, it exposes that API's operations — findPetsByStatus, getInventory, placeOrder, createUser and the rest — as a working example of the mapping
Runs through npx; Node is the prerequisite. Any credentials the target API needs are passed as headers or environment values you supply.
One command — npx -y @tyk-technologies/api-to-mcp@latest --spec https://petstore3.swagger.io/api/v3/openapi.json
