fix(server.json): shorten description to ≤100 chars for MCP Registry#30
Merged
Conversation
The v0.1.5 release.yml run failed at the publish-mcp-registry job's validate step: MCP Registry's schema enforces body.description ≤ 100 chars, but the v0.1.5 server.json description was 152 chars. PyPI accepted the longer form (no such limit there) so v0.1.5 is live on PyPI with attestations, but MCP Registry stayed at v0.1.4. Tightened to 96 chars while preserving all three locked anchor phrases (canonical Python stdlib oracle / always free, always MIT / token-frugal) per .planning/POSITIONING.md's adapt-for-length contract: "The canonical Python stdlib oracle for AI coding agents — always free, always MIT, token-frugal." pyproject.toml description stays at 154 chars (PyPI summary limit is 512 — the surface-specific length contract intentionally varies). This unblocks the next release: with this fix on main, the next tag push will publish to MCP Registry successfully.
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe PR updates the ChangesServer Description Update
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Possibly related PRs
Poem
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
ayhammouda
added a commit
that referenced
this pull request
May 14, 2026
v0.1.5 published successfully to PyPI but the publish-mcp-registry job failed at validation: MCP Registry's schema enforces body.description ≤ 100 chars and the v0.1.5 server.json had a 152-char description. PR #30 already shortened server.json's description to 96 chars on main and pre-validated it with mcp-publisher locally against the real registry endpoint. v0.1.6 ships the same wheel content as v0.1.5 plus that corrected server.json so MCP Registry catches up. Lockstep version bump: - pyproject.toml line 7: 0.1.5 -> 0.1.6 - server.json line 11: 0.1.5 -> 0.1.6 - server.json line 17 (packages[0].version): 0.1.5 -> 0.1.6 Verified locally: - uv build produces 0.1.6 wheel + sdist - python-docs-mcp-server --version reports 0.1.6 from clean venv - mcp-publisher validate server.json -> valid
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Hotfix for the MCP Registry validation failure surfaced during the v0.1.5 release pipeline.
Context
The v0.1.5 release ran successfully on PyPI (live with attestations) but the
publish-mcp-registryjob in release run #25876196215 failed at theValidate server.jsonstep:MCP Registry's schema enforces
body.description ≤ 100 chars. PyPI has no such limit (summary cap is 512), so v0.1.5 published successfully on PyPI with the 152-char description, but MCP Registry rejected it. The downstreamgithub-releasejob was blocked; I created the v0.1.5 GH Release manually from local dist artifacts.The fix
Shorten
server.jsondescriptionfrom 152 to 96 chars, preserving all three locked anchor phrases per.planning/POSITIONING.md:Anchor coverage verified:
canonical Python stdlib oraclealways free, always MITtoken-frugalPre-validated against MCP Registry's actual endpoint:
Not touched
pyproject.tomldescription stays at 154 chars. PyPI's 512-char summary cap means the longer form is fine for the PyPI display; the surface-specific length contract in POSITIONING.md is intentional.Next step
With this fix on
main, the next tag push will publish to MCP Registry successfully. Whether to ship v0.1.6 now as a patch release (purely metadata; same wheel content) or fold this into the natural next release is a separate call — discussed in the post-merge follow-up.Test plan
mcp-publisher validate server.json→ valid (run locally with the actual mcp-publisher binary against the real registry endpoint)🤖 Generated with Claude Code
Summary by CodeRabbit