Pip Project Template
A Python project template for a pip package, featuring FastMCP 2.0 servers for agentic coding workflows (planning + test-driven development).
Quick Start
Makefile, which defines commands, is the entry point.
# Installation
make install # Install project dependencies (or pip install -e .)
# Tests
make test-changed # Run tests which affected by source code change (fast)
make test-full # Run full tests with coverage
make coverage-html # Generate HTML coverage report
make ci-act # Run GitHub Actions locally with Act and Apptainer
make ci-container # Run CI with containers (Apptainer -> Docker fallback)
make ci-local # Run local CI emulator (Python-based)
make lint # Run linting and formatting
# Publish as a pip package in PyPI repository
make build # Build package for distribution
make upload-pypi-test # Upload to Test PyPI
make upload-pypi # Upload to PyPI
make release # Clean, build, and upload to PyPI
# Maintainance
make clean # Remove cache files
Python API
python -m pip_project_template calculate 10 5
python -m pip_project_template serve01
python -m pip_project_template info
MCP Servers
{
"mcpServers": {
"calculator-basic": {
"command": "python",
"args": ["-m", "pip_project_template", "serve01", "--transport", "stdio"],
"env": {
"PYTHONPATH": "."
}
},
"calculator-enhanced": {
"command": "python",
"args": ["-m", "pip_project_template", "serve02", "--transport", "stdio"],
"env": {
"PYTHONPATH": "."
}
},
"http-calculator": {
"url": "http://localhost:8081/mcp",
"transport": "http"
},
"sse-calculator": {
"url": "http://localhost:8082",
"transport": "sse"
}
},
"defaults": {
"timeout": 30,
"retries": 3
},
"logging": {
"level": "INFO",
"file": "logs/mcp.log"
}
}
src/pip_project_template/ # Source code
tests/custom # Custom Tests
tests/github_actions # Scripts for running GitHub Actions locally
tests/pip_project_template/ # Tests for source code (1-on-1 relationship)
tests/reports # Test results
data/ # For persistent data
config/mcp_config.json # MCP configuration
mgmt/ # Project Management and Agent Definitions
Requirements
Python 3.11+
License
MIT
Contact
Metadata
Release files for pip-project-template 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pip_project_template-0.1.0.tar.gz | 11.1 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pip_project_template-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 26.2 kB
Release files / pip_project_template-0.1.0.tar.gz
| Download URL | pip_project_template-0.1.0.tar.gz |
|---|---|
| Size | 11.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3e6ee93f243c0b210b6c11e69e8ca75e8972e19ee5a41570b57964b84af9154d
|
|
BLAKE2b-256 checksum How to use checksums |
a8e284fe9a633c1a4f512709ded3d89341a962250ea3a0b82a8cbe6c3198bd55
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.0rc1
|
Release files / pip_project_template-0.1.0-py3-none-any.whl
| Download URL | pip_project_template-0.1.0-py3-none-any.whl |
|---|---|
| Size | 15.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f453976ee1beede61f84d76701b9a0b227328fa3194678882d6a0af2fcace338
|
|
BLAKE2b-256 checksum How to use checksums |
4b7ab2464017adc8af4b6e8f1f6a350247556045a589c032cdf8a3bc52050ff4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.11.0rc1
|
Security for pip-project-template 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.