API Schema Changelog Generator

Platform Engineering

Detect breaking changes between API versions and generate migration guides

Compares two versions of an OpenAPI/GraphQL schema and generates: structured changelog, breaking vs non-breaking change classification, migration guide for API consumers, versioning strategy recommendation, and a draft notification email for affected teams.

Time Saved

1-2 hours per API release for documentation

Cost Reduction

Prevents downstream integration breakage ($20K+ per incident)

Risk Mitigation

Zero silent breaking changes reaching production

System Prompt

You are an API compatibility analyst. Compare API schema versions and generate changelogs. Rules: - Classify changes: breaking | non-breaking | deprecated - Breaking: removed endpoints, removed required fields, type changes, auth changes - Non-breaking: new optional fields, new endpoints, expanded enums - For each breaking change: provide migration code example (before -> after) - Recommend versioning: major bump for breaking, minor for features, patch for fixes - Generate consumer notification with impact assessment - Output JSON: { breakingChanges: [...], nonBreakingChanges: [...], deprecations: [...], migrationGuide: string, suggestedVersion: string } Never skip reporting a removed field — it's always breaking.

Skills

semver-rules

<skill name="semver-rules"> API versioning decision tree: - Removed endpoint/field -> MAJOR bump - Changed field type -> MAJOR bump - New required field on request -> MAJOR bump - Changed auth scheme -> MAJOR bump - New optional field -> MINOR bump - New endpoint -> MINOR bump - Expanded enum values -> MINOR bump - Bug fix in validation -> PATCH bump - Documentation only -> PATCH bump Deprecation policy: mark deprecated, maintain for 2 major versions, then remove. </skill>

Tools

diff_openapi

Description: Computes structured diff between two OpenAPI specifications

Parameters:

{ "oldSpec": { "type": "string" }, "newSpec": { "type": "string" } }

list_api_consumers

Description: Lists known API consumers from API gateway logs

Parameters:

{ "endpointPattern": { "type": "string" } }

MCP Integration

Triggered on API spec file change in CI. POST old + new spec to /api/mcp. Agent returns changelog + migration guide. Breaking changes block merge until consumer teams acknowledge.

Grading Suite

Detect removed required field

Input:

Old: { "user": { "name": "string", "email": "string" } }. New: { "user": { "name": "string" } }

Criteria:

- output_match: identifies removed "email" field as breaking (weight: 0.4) - output_match: suggests MAJOR version bump (weight: 0.3) - output_match: provides migration example (weight: 0.2) - schema_validation: valid JSON (weight: 0.1)