mcpbeat

Python API Consistency Validator

arabelatso/python-api-consistency-validator

Validate API consistency between two versions of Python libraries. Use when you need to compare API behavior, signatures, and exceptions between library versions to identify breaking changes, incompatible modifications, and behavior differences. The skill performs static analysis of Python code, compares function signatures, class definitions, parameter types, return types, and generates a detailed JSON report with breaking changes, warnings, and migration guidance. Supports Python libraries and packages.

3k tokens
context cost
the whole folder, loaded on every use
2
files
ships runnable scripts
0
copies elsewhere
how many repositories repackaged it
141
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/ArabelaTso/Skills-4-SE --skill python-api-consistency-validator

The instruction itself

7 sections, as written by the author

Python API Consistency Validator

Overview

This skill validates API consistency between two versions of Python libraries by comparing signatures, behavior, and exceptions. It identifies breaking changes, incompatible modifications, and provides detailed reports to guide safe API migration or upgrade.

Quick Start

# Compare two versions of a Python library
python scripts/validate.py /path/to/old_version /path/to/new_version

# Specify output file
python scripts/validate.py old_lib/ new_lib/ --output report.json

What Gets Validated

  • Function Signatures - Parameters, return types, decorators
  • Class Definitions - Methods, inheritance, attributes
  • Parameter Changes - Added, removed, or modified parameters
  • Return Type Changes - Modified return types
  • Removed APIs - Deleted functions, classes, or methods

Validation Report

The tool generates a JSON report with:

  • Breaking Changes: API removals, incompatible modifications
  • Warnings: Type changes, signature modifications
  • Info: New additions, non-breaking changes
  • Summary: Total issues by severity

Example report:

{
  "summary": {
    "breaking_changes": 3,
    "warnings": 5,
    "info": 2
  },
  "breaking_changes": [
    {
      "type": "function_removed",
      "name": "deprecated_func",
      "severity": "breaking",
      "message": "Function 'deprecated_func' was removed"
    }
  ]
}

Usage

python scripts/validate.py <old_version_path> <new_version_path> [--output <report.json>]

The validator exits with code 1 if breaking changes are found, 0 otherwise.

Tips

  • Run validation before upgrading dependencies
  • Review breaking changes carefully
  • Check warnings for potential issues
  • Use in CI/CD pipelines to catch API changes
  • Compare against semantic versioning expectations

How to use it

Copy the folder

Take arabelatso/python-api-consistency-validator from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.