Covenant
About
Contract & breaking-change detector for MCP servers — semver for your interface. Snapshot tools/resources/prompts into a lockfile, diff in CI, fail on breaking changes. Single Rust binary, SARIF, GitHub Action.
Details
- Author
- studiomeyer-io
- Downloads
- 187
Jump to
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: studiomeyer-io/mcp-covenant@v0.1.0
The README includes setup instructions such as mcp-covenant check --baseline mcp-covenant.lock -- node dist/server.js.
mcp-covenant
Contract & breaking-change detection for Model Context Protocol servers — semver for your MCP interface.
When you ship a typed library you have a public API and tooling that screams when you break
it. MCP servers have neither: they just serve whatever tools/list returns today. Rename a
tool, add a required argument, narrow an enum — every agent built on your server breaks, and
nothing in your pipeline noticed.
mcp-covenant is one static binary that snapshots your server's interface into a committed
lockfile and fails CI when a change would break existing clients — classified the way a
human would: breaking / minor / patch.
```text
$ mcp-covenant check --baseline mcp-covenant.lock -- node dist/server.js
mcp-covenant: 3 change(s) — required version bump: MAJOR
BREAKING (2)
x tool:legacy — tool was removed [tool.removed]
x tool:search → inputSchema.properties.limit — new required property [schema.property.required.added]
MINOR (1)
+ tool:newtool — new tool [tool.added]
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


