feat: rename package from pal-e-docs-mcp to pal-e-mcp #51
No reviewers
Labels
No labels
domain:backend
domain:devops
domain:frontend
status:approved
status:in-progress
status:needs-fix
status:qa
type:bug
type:devops
type:feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
forgejo_admin/pal-e-mcp!51
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "50-rename-to-pal-e-mcp"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Renames the MCP server repo, Python package, and all import paths from
pal-e-docs-mcp/pal_e_docs_mcptopal-e-mcp/pal_e_mcp. Updates SDK dependency frompal-e-docs-sdktopal-e-sdk>=0.5.0. The MCP server key in~/.mcp.jsonstayspal-e-docs(project name), preserving themcp__pal-e-docs__*tool prefix.Changes
pyproject.toml-- package name, script entry point, wheel path, uv source, SDK dependency all renamedsrc/pal_e_docs_mcp/->src/pal_e_mcp/-- package directory renamedsrc/pal_e_mcp/server.py--from pal_e_docs_sdk import->from pal_e_sdk importsrc/pal_e_mcp/__main__.py--from pal_e_docs_mcp.server->from pal_e_mcp.servertests/conftest.py-- allpal_e_docs_mcpimports ->pal_e_mcptests/test_param_alignment.py-- allpal_e_docs_mcpimports ->pal_e_mcpuv.lock-- regenerated with new package namesAlso completed outside this repo:
pal-e-docs-mcp->pal-e-mcp~/.mcp.jsonupdated: directory path and module name~/pal-e-docs-mcp->~/pal-e-mcppal-e-sdk==0.5.0manually published to Forgejo PyPI (CI clone TLS error on SDK repo)Test Plan
python -c "import pal_e_mcp; print('OK')"-- passespytest tests/ -v-- 59/59 tests passruff check src/ tests/-- cleanruff format --check src/ tests/-- cleanmcp__pal-e-docs__get_notestill worksReview Checklist
Related Notes
forgejo_admin/pal-e-sdk#39(SDK rename, merged)pal-e-docs-- the project this work belongs toQA Review
Diff Analysis
Mechanical rename -- 27 additions, 27 deletions, perfectly symmetric. All changes are find-and-replace on package/module names.
Checklist
pal_e_docs_mcp,pal-e-docs-mcp,pal_e_docs_sdk,pal-e-docs-sdkacross all.py,.toml,.ymlfiles returns zero matchesfrom pal_e_docs_sdk->from pal_e_sdkin server.py (only SDK import in codebase)"pal-e-docs"(project name, not package name) -- correct per issue specpal-e-sdk==0.5.0from Forgejo PyPI (hashes present)Infra Notes
pal-e-sdk==0.5.0was manually published to Forgejo PyPI because SDK CI pipeline #15/#16 hit TLS clone errors. This is a transient infra issue, not a code problem.~/.mcp.jsonand local directory rename completed outside the repo (documented in PR body).VERDICT: APPROVE
Clean mechanical rename. No logic changes, no risk surface.
PR #51 Review
DOMAIN REVIEW
Tech stack: Python / MCP (FastMCP) / uv / Hatchling / Woodpecker CI
This is a mechanical rename: package
pal-e-docs-mcp->pal-e-mcp, SDK dependencypal-e-docs-sdk->pal-e-sdk. 16 files changed, 27 additions / 27 deletions -- symmetrical, as expected for a pure rename.Critical verification -- MCP tool prefix preserved:
FastMCP("pal-e-docs")insrc/pal_e_mcp/server.py:11-- CONFIRMED unchanged. The server name stayspal-e-docs, which means themcp__pal-e-docs__*tool prefix is preserved. This is the most important thing in this PR.Critical verification -- ~/.mcp.json updated:
"pal-e-docs"-- CONFIRMED (preserves tool prefix)/home/ldraney/pal-e-mcp-- CONFIRMED (new path)pal_e_mcp-- CONFIRMED (new module name)Import rename completeness:
src/pal_e_mcp/server.py:from pal_e_sdk import PalEDocsClient, PalEDocsError-- correctsrc/pal_e_mcp/__main__.py:from pal_e_mcp.server import main-- correcttests/conftest.py: all 5 tool module imports usepal_e_mcp.tools.*-- correcttests/test_param_alignment.py: all imports usepal_e_mcp.tools.*-- correctpyproject.toml: package name, script entry point, wheel path, uv source, SDK dependency all renamed -- correctuv.lock: regenerated withpal-e-mcpandpal-e-sdk-- correct, no stale referencesGrep for stale references (excluding .venv, .git): Only
README.mdstill contains old names (see NIT below).Old source directory removed:
src/pal_e_docs_mcp/no longer exists. Clean.SDK version bump:
pal-e-docs-sdk>=0.4.0->pal-e-sdk>=0.5.0-- matches the upstream SDK rename (pal-e-sdk#39).Woodpecker CI:
.woodpecker.ymlhas no package-name-specific references -- it runsruff check src/and builds generically. No changes needed. Correct.BLOCKERS
README.md not updated (NIT-level, but flagging for completeness):
/home/ldraney/pal-e-mcp/README.mdstill contains:# pal-e-docs-mcp(should be# pal-e-mcp)"args": ["run", "--directory", "/path/to/pal-e-docs-mcp", "python", "-m", "pal_e_docs_mcp"](should referencepal-e-mcpandpal_e_mcp)This is not in the diff because the README was not modified. While the README is documentation (not runtime code), it is actively misleading -- anyone following the setup instructions would use the wrong directory and module name. I am classifying this as a non-blocker since it does not affect runtime behavior, but it should be fixed before or shortly after merge.
No runtime blockers found. All code paths, imports, config, and dependencies are correctly renamed.
NITS
README.md stale references (as detailed above). Two lines need updating: the title and the mcp.json example. Low effort, high clarity.
Version in pyproject.toml vs uv.lock mismatch is cosmetic only. pyproject.toml says
version = "0.3.0"and uv.lock agrees. The old uv.lock had0.2.0. This is fine -- version bump alongside rename is reasonable.SOP COMPLIANCE
50-rename-to-pal-e-mcpreferences issue #50pal-e-sdk#39documentedPROCESS OBSERVATIONS
~/.mcp.jsonupdate, local directory rename, manual SDK publish) are well-documented in the PR body. Good traceability.mcp__pal-e-docs__get_notestill works") is the right post-merge smoke test. Make sure this happens.VERDICT: APPROVED