https://github.com/javaaidev/openapi-mcp-server
Convert OpenAPI spec to MCP server
https://github.com/javaaidev/openapi-mcp-server
kotlin mcp mcp-server openapi
Last synced: 5 months ago
JSON representation
Convert OpenAPI spec to MCP server
- Host: GitHub
- URL: https://github.com/javaaidev/openapi-mcp-server
- Owner: JavaAIDev
- License: mit
- Created: 2025-08-30T11:36:49.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-08-30T12:40:45.000Z (5 months ago)
- Last Synced: 2025-08-30T13:24:12.274Z (5 months ago)
- Topics: kotlin, mcp, mcp-server, openapi
- Language: Kotlin
- Homepage:
- Size: 66.4 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# OpenAPI MCP Server
Convert OpenAPI spec to MCP server, OpenAPI operations as tools.
This MCP server uses stdio transport.
## CLI Options
When running the MCP server, an OpenAPI spec is required. It can be either a file path or URL.
The MCP server also provides options to filter operations to be converted as MCP tools. Filter conditions of the same type are combined using `OR`, while filter conditions of different types are combined using `AND`.
Currently supported filter conditions:
| Condition | CLI option | Example |
|--------------|--------------------------|-------------------------------|
| HTTP method | `--include-http-method` | `--include-http-method=GET` |
| Path | `--include-path` | `--include-path=/holidays` |
| Operation Id | `--include-operation-id` | `--include-operation-id=Root` |
| Tag | `--include-tag` | `--include-tag=info` |
You can run the JAR file to see the CLI help.
```
Usage: openapi-mcp [-hV] [--include-http-method=[,
...]]...
[--include-operation-id=[,
...]]... [--include-path=
[,...]]... [--include-tag=[,
...]]...
Run OpenAPI MCP server
File path or URL of OpenAPI spec
-h, --help Show this help message and exit.
--include-http-method=[,...]
Include operations with HTTP methods (comma separated)
--include-operation-id=[,...]
Include operations with id (comma separated)
--include-path=[,...]
Include operations with paths (comma separated)
--include-tag=[,...]
Include operations with tags (comma separated)
-V, --version Print version information and exit.
```
## How to Run
### Standalone JAR file
Download latest [release JAR file](https://github.com/JavaAIDev/openapi-mcp-server/releases) and run it using `java -jar`.
```sh
java -jar openapi-mcp-server-0.1.2-all.jar https://api.apis.guru/v2/specs/canada-holidays.ca/1.8.0/openapi.json
```
### Container
Use Docker or Podman to run the container.
```sh
docker run -i ghcr.io/javaaidev/openapi-mcp-server https://api.apis.guru/v2/specs/canada-holidays.ca/1.8.0/openapi.json
```