- Change Python test matrix from 3.8-3.12 to 3.10-3.13
- Update test-install to test on 3.10 and 3.13 (min/max versions)
- Keep other Python versions in workflow for comprehensive testing
This aligns with the updated minimum Python requirement of 3.10+
to match the mcp package dependency requirements.
BREAKING CHANGE: Minimum Python version is now 3.10+
- Replace fastmcp>=0.1.0 with mcp>=1.0.0 (official MCP SDK)
- Update requires-python from ">=3.8" to ">=3.10"
- Remove Python 3.8 and 3.9 from classifiers
- Update mypy and black target versions to match
- Replace fastmcp keyword with mcp-server
- Update mypy overrides for mcp.* modules
This fixes the dependency conflict where fastmcp requires Python 3.10+
but the project claimed to support Python 3.8+. The official MCP SDK
provides the same FastMCP functionality with import: from mcp import FastMCP
This script helps keep version numbers in sync between pyproject.toml
and _version.py. It can check sync status, update _version.py to match
pyproject.toml, or set both files to a new version.
Usage:
- python sync_version.py # Check sync status
- python sync_version.py --update # Update _version.py to match pyproject.toml
- python sync_version.py --set 1.0.2 # Set both versions to 1.0.2
Change author from "Claude AI Assistant" to "Ryan Malloy" and
email to "ryan@supported.systems" to be consistent with the
package metadata in pyproject.toml.
- Complete setup instructions for trusted publishing
- Step-by-step publishing process
- Troubleshooting guide
- Best practices for versioning and changelog
- Triggers on version tags (v*)
- Supports both TestPyPI and PyPI publishing
- Uses trusted publishing (OIDC) for security
- Requires all tests to pass before publishing
- Creates GitHub releases with changelog
- Supports manual workflow dispatch for testing