oaslint MCP
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
oaslint MCP — The Hard Way
Build a small MCP server that lints OpenAPI specs and detects breaking changes between two versions of an API, from the first byte of YAML to an agent calling your tools over stdio.
At the end you will have built a compact version of oaslint-mcp yourself, and you will understand the idea that almost every API-diff tool gets subtly wrong: a request and a response vary in opposite directions, so the very same edit is breaking in one and harmless in the other.
Why This Exists
Most MCP tutorials wrap a REST call. The interesting work in a useful server is elsewhere:
reading hostile, messy input safely (YAML bombs,
$refloops,../../paths, URLs that want to be fetched);turning three dialects of a format into one model, so the rules are written once;
deciding what a change means, not just that it happened;
failing in ways that tell the agent what to do next.
Related MCP server: OpenAPI Contract Guard MCP
Who This Is For
Developers who have a "hello world" MCP server and want to build one that earns its keep, and anyone who has shipped an API change and found out afterwards that it broke a client.
Prerequisites: Python and a rough idea of what OpenAPI is. Nothing to install except
pip install -r requirements.txt (the MCP SDK, PyYAML and anyio). No network, no other services.
Modules
# | Module | What You'll Build |
01 | Read Swagger 2.0, OpenAPI 3.0 and 3.1 safely and squash them into one operation model | |
02 |
| |
03 | A schema walker that survives recursive schemas, and the outline an agent reads | |
04 | Merge | |
05 | The core idea: request vs response variance, and a diff that says BREAKING, POTENTIALLY BREAKING or safe | |
06 | A JSON Schema subset validator that reports a JSON pointer for every violation | |
07 | Three tools, errors that instruct, a sandboxed |
Each module contains:
README.md: the concept, the listing of the newlite/file (embedded from the real file, and CI fails if they drift apart), a walk-through, how to run it, how to break it, and what the full server does differently;main.py: runnable code that uses the new file and asserts its results.
Running It
pip install -r requirements.txt
python verify.py # every module, the way CI does
python verify.py 05 # one module
python 05-classifying-changes/main.pyThe sample APIs are in specs/: the same small shop written as Swagger 2.0, OpenAPI 3.0 and 3.1, a
second version with real breaking changes, a recursive schema, and a split spec with file refs
plus an evil.yaml that tries to read outside the sandbox.
The Library, File by File
lite/loader.py 01 parse, detect the version, normalise operations
lite/refs.py 02 Resolver: $ref, cycles, sandboxed files
lite/walk.py 03 outline of a (possibly recursive) schema
lite/flat.py 04 flatten allOf, normalise nullable
lite/diff.py 05 classify changes by direction
lite/validate.py 06 validate a JSON document
lite/server.py 07 the MCP serverEach module adds exactly one file. Nothing is hidden in a framework.
MIT licensed.
This server cannot be deployed
Maintenance
Related MCP Connectors
Detect breaking changes, generate changelogs, diff, and validate OpenAPI specs.
Schema-aware API monitoring: diff OpenAPI specs for breaking changes, manage endpoints.
Dated, verified API breakages for coding agents, plus a local scan for them in your existing code.
Breaking changes between two versions: npm, PyPI, GitHub Actions, Helm, Terraform, crates.io, Go.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceValidates OpenAPI documents, JSON Schemas, and JSON payloads. Also compares OpenAPI specs and displays breaking changes.-
- AlicenseAqualityDmaintenanceEnables AI clients to validate OpenAPI specs, compare versions, detect breaking changes, and generate changelogs.4MIT
- AlicenseBqualityBmaintenanceLocal OpenAPI contract checks and breaking-change detection between spec versions for AI coding agents.277 npmMIT
- AlicenseAqualityBmaintenanceEnables coding agents to validate OpenAPI documents and JSON Schemas, validate data against a schema, and diff OpenAPI versions—including against a git ref—to classify breaking changes and suggest semver updates.3MIT