Repository navigation
v0.1.0
python-mcp-bootstrap v0.1.0
First release of the shared pre-install Python bootstrap for MCP applications.
Highlights
- Python floor
3.14, provisioning pin3.15.2. - Explicit
--install-pythonconsent before any download. - Project-local uv-managed interpreter and
.venv; the system Python is not
changed. - Selection order:
--python, the running interpreter, an existing.venv,
then the consent card. - Install verification, atomic pin writes, broken-venv preservation, and typed
failure results. - The good-running path hands off once and records the interpreter in
spec.env_var. A later pass with that variable set and no continuation
reportsmissing_continuation(exit7) rather than re-executing the entry
point; a wrapper that branches onspec.env_varcontinues normally. - Path-like
install_argsand venv-redirecting flags are rejected before any
subprocess starts. pinmust be a plain final version at or aboverequired.- Windows-aware handoff and uv discovery.
- Project-path validation and credential-redacted diagnostics.
- Vendoring tooling that copies
core.pyand writes aVENDOR.jsonmanifest. - CI on Python 3.14.10 and 3.15.2 on Ubuntu, macOS, and Windows, plus a 3.12
compatibility job and a wheel/release gate.
Honest limits
- Path checks are lexical: they reject absolute, rooted, and
..values but
do not resolve symlinks. A symlink inside the project can still point
outside; the consumer owns that boundary. - Concurrent first runs against one project are not supported. Run one
bootstrap at a time; there is no lock around the.venvmove or the
provisioning steps.
Install and verify
python -m pip install python-mcp-bootstrap
python -m python_mcp_bootstrap --checkVendor into a consumer
python scripts/vendor.py \
--target /path/to/consumer \
--dest src/example/_vendor/python_mcp_bootstrap.pyUse --check to verify the pinned copy without writing.
Release integrity
- v0.1.0 is the first release and is an annotated tag.
- The wheel and sdist are attached to this GitHub release and published to
PyPI by the OIDC workflow;dist/stays gitignored.SHA256SUMScovers the
wheel and sdist. - Tags are unsigned for now. An unsigned tag is not a signature; verify the
artifacts by digest.
Artifacts
python_mcp_bootstrap-0.1.0-py3-none-any.whlpython_mcp_bootstrap-0.1.0.tar.gz