transparent-openapi-mcp
A KISS MCP server that maps OpenAPI v3 specifications 1:1 onto MCP tools, transparently - a change to a loaded OpenAPI spec never requires a change to this server's own code.
Using this as a Claude Code MCP server
Three steps: build the image, set up your server-side config, wire it into Claude Code.
1. Build
./podman_build.sh
2. Configure the server
The server needs its own config: a local file (mounted into the
container) that points at a config list, which in turn points at your
OpenAPI spec(s) and backend(s). See
examples/README.md for the full reference -
what each file contains, the <prefix>_<operationId> tool naming
rule, and a runnable example set proven to work end-to-end.
3. Wire it into Claude Code
Claude Code needs to know how to start the container as a stdio
subprocess. See
examples/claude-code/README.md
for the exact MCP config entry to add and how it relates to your
server-side config from step 2.
Once added, run /mcp in a Claude Code session and confirm
transparent-openapi-mcp shows up with its tools.
Try it with the bundled example
Before wiring in your own real spec/backend, you can verify the whole chain works using the bundled minimal example:
./podman_build.sh
mkdir -p ~/t-o-m-config
cp examples/*.example.json ~/t-o-m-config/
cd ~/t-o-m-config
mv local-config.example.json local-config.json
mv config-list.example.json config-list.json
mv minimal-openapi.example.json minimal-openapi.json
# in another terminal, serve that directory:
cd ~/t-o-m-config && python3 -m http.server 8000
# back in the first terminal:
./podman_run.sh ~/t-o-m-config/local-config.json
See examples/README.md for
the full walkthrough, including how to actually call a tool and see
a result (this just starts the server - it sits silently on stdio,
which is correct MCP behavior).
Design docs
See docs/core-mcp-server/requirements.md and
docs/core-mcp-server/architecture.md for the full requirement set
(R-CTRL, R-DEPLOY, R-CFG, R-BOOT, R-TOOLS, R-FWD, R-STACK, R-RELEASE)
and design.
Metadata
Release files for transparent-openapi-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| transparent_openapi_mcp-0.1.0.tar.gz | 12.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| transparent_openapi_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 31.0 kB
Release files / transparent_openapi_mcp-0.1.0.tar.gz
| Download URL | transparent_openapi_mcp-0.1.0.tar.gz |
|---|---|
| Size | 12.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b3655487fb98dd2217d8263add2e4ed50f94a45358aee19a205d88ae0d934b93
|
|
BLAKE2b-256 checksum How to use checksums |
e07cd53ec50e4f9fc0ec961d63d1ab786d1c9687e1b6becae9c61edc84c9b8a8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / transparent_openapi_mcp-0.1.0-py3-none-any.whl
| Download URL | transparent_openapi_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 18.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b4803eb12fd7d2c9e8f983b65c5675a51122232fe74acfc50aa6967b89c0c8c5
|
|
BLAKE2b-256 checksum How to use checksums |
313811a9512e2a8bb85e529013719a5fbf87dfadf0312b6633f4a392d521aedb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|