io.github.sethclawd-prog/schemaguard

Official registry Developer tools

API Schema Drift Monitor — detect breaking changes in OpenAPI specs

Install

Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).

NPM package @sethclawd/schemaguard
Claude Code
claude mcp add schemaguard -- npx -y @sethclawd/schemaguard@0.1.2
JSON configuration (Claude Desktop, Cursor, VS Code)
{
    "mcpServers": {
        "schemaguard": {
            "command": "npx",
            "args": [
                "-y",
                "@sethclawd/schemaguard@0.1.2"
            ]
        }
    }
}

Documentation

From the project's README on GitHub, refreshed weekly. Links open on GitHub.

Contents
  1. SchemGuard
  2. Why
  3. Install
  4. Usage
  5. What it detects
  6. GitHub Actions
  7. Programmatic API
  8. License

SchemGuard

API Schema Drift Monitor — detect breaking changes in OpenAPI specs before they break your consumers.

Why

APIs break silently. A field gets renamed, an endpoint gets removed, an enum value disappears — and downstream consumers break in production. SchemGuard catches these before deploy.

Install

npm install -g schemaguard

Usage

Diff two specs
schemaguard diff old-api.yaml new-api.yaml

Output:

Found 11 change(s):

❌ BREAKING CHANGES (9):
──────────────────────────────────────────────────
  ⛔ [endpoint-removed]
     Endpoint removed: DELETE /pets/{petId}
     at: DELETE /pets/{petId}

  ⛔ [field-type-changed]
     Parameter type changed: petId (string → integer)
     at: GET /pets/{petId} > param petId
  ...

🚨 9 breaking change(s) detected — deployment blocked.
CI mode
schemaguard ci --spec ./openapi.yaml --baseline ./main-openapi.yaml
  • Exit 0 = no breaking changes, safe to deploy
  • Exit 1 = breaking changes detected, blocks the pipeline
  • Exit 2 = error (invalid spec, file not found)
Lint a spec
schemaguard lint ./openapi.yaml

Checks for missing operationId, missing descriptions, no security schemes, etc.

JSON output
schemaguard diff old.yaml new.yaml --format json

Returns structured JSON for programmatic consumption by agents and CI tools.

What it detects

Breaking changes (exit code 1)
RuleDescription
endpoint-removedAn endpoint was deleted
method-removedAn HTTP method was removed from a path
required-param-addedA new required parameter was added
param-removedAn existing parameter was removed
request-field-made-requiredA request field became required
field-type-changedA field's type was changed
response-field-removedA response field was removed
enum-value-removedAn enum value was narrowed
auth-requirement-changedSecurity schemes were modified
response-code-removedA response status code was removed
Non-breaking changes (info only)
RuleDescription
endpoint-addedA new endpoint was added
optional-param-addedA new optional parameter was added
response-field-addedA new response field was added
enum-value-addedAn enum value was widened
description-changedDescription or summary text changed
deprecatedAn endpoint was marked as deprecated

GitHub Actions

- name: Check API compatibility
  run: npx schemaguard ci --spec ./openapi.yaml --baseline ./baseline.yaml

Programmatic API

import { parseSpec, diffSpecs, formatDiff } from 'schemaguard';

const oldSpec = parseSpec('./v1.yaml');
const newSpec = parseSpec('./v2.yaml');
const result = diffSpecs(oldSpec, newSpec);

if (result.hasBreakingChanges) {
  console.log(`${result.breaking.length} breaking changes found`);
}

License

MIT

Frequently asked questions

What is io.github.sethclawd-prog/schemaguard?

API Schema Drift Monitor — detect breaking changes in OpenAPI specs

How do I install io.github.sethclawd-prog/schemaguard?

It runs on your machine. In Claude Code: claude mcp add schemaguard -- npx -y @sethclawd/schemaguard@0.1.2. For other clients, paste the JSON configuration from this page into their MCP settings.

Does io.github.sethclawd-prog/schemaguard need an API key?

Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.

Is io.github.sethclawd-prog/schemaguard open source?

Yes. Its code is on GitHub under the MIT license.

Who maintains io.github.sethclawd-prog/schemaguard?

It is published by sethclawd-prog. AI.tn lists it but does not maintain or endorse it.

From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.