A Python project template for a pip package with MCP server support and agentic coding workflows (planning + test-driven development)
Project description
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pip_project_template-0.1.0.tar.gz.
File metadata
- Download URL: pip_project_template-0.1.0.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.0rc1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e6ee93f243c0b210b6c11e69e8ca75e8972e19ee5a41570b57964b84af9154d
|
|
| MD5 |
1f9297dd8367c45063d5fa86167a1ea8
|
|
| BLAKE2b-256 |
a8e284fe9a633c1a4f512709ded3d89341a962250ea3a0b82a8cbe6c3198bd55
|
File details
Details for the file pip_project_template-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pip_project_template-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.0rc1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f453976ee1beede61f84d76701b9a0b227328fa3194678882d6a0af2fcace338
|
|
| MD5 |
37588c94339a89db7070dc00fb9a86b8
|
|
| BLAKE2b-256 |
4b7ab2464017adc8af4b6e8f1f6a350247556045a589c032cdf8a3bc52050ff4
|