OpenMCP

OpenMCP turns any OpenAPI specification into an MCP server and lets you choose which tools the agent sees

  • 303 ★ on the repository
  • Last commit
  • MIT
MCP server

Extended access

Why this level

  • The agent gets access to a third-party API's methods, including write ones if the spec has them
  • API keys end up in openmcp.json or environment variables
All reasons and checks

getdatanaut/openmcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/openmcp

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The agent gets access to a third-party API's methods, including write ones if the spec has them
  • API keys end up in openmcp.json or environment variables

This is third-party code. Review the repository files before installing.

What it does

OpenMCP takes an OpenAPI specification from a URL or a local file and starts an MCP server for it. Each operation in the spec becomes an agent tool, named after its operationId. The `npx -y openmcp install <url or path> --client <client>` command creates an openmcp.json file and registers the server in the chosen client's MCP configuration, for example Cursor. Running it again updates the existing file. In openmcp.json you set headers, query parameters and an allowlist of tools for each server. One file can combine several sources: servers built from OpenAPI and ordinary stdio servers such as postgres. They merge into a single MCP server with only the tools you need.

Who it is for. For developers who want to give an agent access to a REST API that has an OpenAPI description without hand-writing an MCP server.

Good fit when

  • A service publishes an openapi.json but has no ready MCP server, and the agent needs a few of its methods
  • A large spec would produce hundreds of tools and you want to keep two or three by operationId
  • You want one server that combines a REST API with a database stdio server, keeping only the safe query tool for the database
  • The API key should live in an environment variable and be injected into a header through a template

Not a fit when

  • You need an MCP server with curated descriptions and composite workflows: OpenMCP exposes the spec's operations as they are
  • The API has no OpenAPI description: there is nothing to build the server from without a spec
  • You need ongoing support: the repository was last updated in August 2025

Example request

Connect the weather API at https://api.weather.gov/openapi.json as an MCP server in Cursor and keep only the zone forecast tool

MCP

Transport
stdio, sse
Authentication
not required

Limitations

  • Requires Node.js: every command runs through npx.
  • The agent gets only what the spec describes, and tool description quality depends on its author.
  • Only the stdio and sse transports.
  • For APIs with authorization you must set the key or header in openmcp.json yourself.
  • OpenMCP does not judge how dangerous a method is: delete or payment operations from the spec reach the agent until you remove them from the allowlist.
  • OpenMCP does not track spec changes, so recheck the file after the API is updated.

How to disable. Remove the openmcp entry from the client's MCP configuration and the openmcp.json file from the project. No further processes start after that.

FAQ

How do I turn an OpenAPI file into an MCP server?

Run `npx -y openmcp install <url or path> --client cursor`. The command creates openmcp.json and adds the server to the client's configuration. To start the server by hand use `npx -y openmcp run --config <path to openmcp.json>`.

How do I leave the agent only some API methods?

In openmcp.json each server has a tools array of operationIds. An empty array exposes every operation. The same list works for stdio servers: for postgres you can allow only the query tool.

How do I pass an API key without writing it into the config?

Define variables in the configs section and reference them in headers with a {{NAME}} template. If a value is not set, OpenMCP tries to read an environment variable with the same name.

Does OpenMCP pick up changes in the spec?

Not on its own. After the API changes, run the install command again: it updates the existing openmcp.json. Then check whether new dangerous methods appeared in the list.

Which clients does OpenMCP work with?

You pick the client with the `--client` flag, and there are examples for Cursor and Claude. The server runs over stdio and sse.

Discussion

No questions or reviews yet.

A CLI that builds a ready-made TypeScript MCP server from an OpenAPI 3 spec, with tools, validation and auth generated for you

CLIExtended access643Repository stars

A gateway that turns any API with an OpenAPI V3 spec into an MCP server, without touching the original API

MCP serverExtended access625Repository stars

A plugin with skills for building TypeScript MCP servers and MCP apps: the agent scaffolds, edits, debugs and verifies them

PluginExtended access10.8KRepository stars

An MCP server that lets an agent read files, search code and run commands in a workspace

MCP serverBroad access1.2KRepository stars
Official

Ref's MCP server: documentation search for APIs and libraries that hands the agent only the relevant parts of pages

MCP serverExtended access1.2KRepository stars

1MCP Agent

1mcp-agent

One MCP server instead of many: the agent merges connected servers and gives them to a client through a single address. A beta version

MCP serverExtended access525Repository stars

Comparison with similar tools

Entries that share the main search query, and how they differ.

EntryOfficialAuthenticationRepository starsMain difference
OpenMCP (this entry)nonot required303
X API MCP (xmcp)yesOAuth865a ready server for one API, X, OpenMCP builds from any specification
Weeek MCP servernoAPI key0a ready MCP server for one service built from its OpenAPI, with no general generator

README in short

A weather API example walks from the install command to a working server in Cursor. A large openmcp.json example covers auth, headers and tool lists.

README badge

Report a problem

Foxx AIOpenMCP
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.