mcp-license-header-guardian
README.md
# mcp-license-header-guardian
Deterministic, network-free, read-only MCP guardian that enforces license headers in tracked Python files (Tier 1).
## What this repo is for
Use this repository as the starting point for new guardians.
It provides:
- A frozen V1 contract (`docs/V1_CONTRACT.md`)
- Canonical output examples (`docs/EXAMPLE_OUTPUTS.md`)
- Determinism guardrails (pytest)
## Invariants (do not violate under V1)
- One tool only: `check_license_header`
- Output schema keys are fixed
- Fail-closed on invalid input or internal error
- No timestamps, randomness, environment metadata
- No network calls
- No repo mutation / disk writes
If you need any of the above, declare V2.
## Local development
Install editable:
python3 -m pip install -e .
Run tests:
pytest -q
Print canonical JSON output:
python3 -c "from mcp_license_header_guardian.server import check_license_header, canonical_json; print(canonical_json(check_license_header('.')))"
## MCP server
Run:
mcp-license-header-guardian
TDQS
A4/5.0
Scored across 1 tool
Disambiguation5/5
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool's purpose is singular and clearly defined.
Naming Consistency5/5
A single tool inherently has perfect naming consistency, as there are no other tools to compare against. The name 'check_license_header' follows a clear verb_noun pattern.
Tool Count2/5
One tool is too few for the server's apparent purpose of license header management, as it only provides a read-only check without any complementary tools for fixing, updating, or managing headers across files.
Completeness2/5
The tool surface is severely incomplete for license header management, lacking essential operations such as adding, removing, or modifying headers, which are necessary for a full workflow in this domain.
Maintenance
ActivityInactive
ResponsivenessNo issues