feat: Add PyPI Development Workflow Tools

Implement comprehensive PyPI development workflow tools to assist with package preparation and validation:

1. **validate_pypi_package_name** - Validates package name format according to PyPI standards, checks availability, and provides improvement recommendations

2. **preview_pypi_package_page** - Generates preview of PyPI package page with metadata validation, SEO analysis, and discoverability scoring

3. **check_pypi_upload_requirements** - Validates package metadata against PyPI upload requirements with compliance scoring and actionable next steps

4. **get_pypi_build_logs** - Analyzes package distributions, build quality, platform support, and provides build health assessment

Key Features:
- Full PyPI standards compliance validation
- Package name availability checking
- Comprehensive metadata analysis
- Build distribution analysis with platform filtering
- SEO and discoverability optimization
- Upload readiness assessment
- Actionable recommendations and next steps
- Comprehensive error handling and logging

Files Added:
- pypi_query_mcp/tools/workflow.py - Core workflow functionality
- tests/test_workflow.py - Comprehensive test suite
- Updated server.py with 4 new MCP tool endpoints
- Updated tools/__init__.py with exports

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Ryan Malloy 2025-08-16 09:44:33 -06:00
parent 1b4ca9f902
commit f79144d710
4 changed files with 1949 additions and 0 deletions

View file

@ -53,6 +53,12 @@ from .analytics import (
get_pypi_package_rankings,
get_pypi_security_alerts,
)
from .workflow import (
check_pypi_upload_requirements,
get_pypi_build_logs,
preview_pypi_package_page,
validate_pypi_package_name,
)
__all__ = [
"query_package_info",
@ -88,4 +94,8 @@ __all__ = [
"get_pypi_trending_today",
"search_pypi_by_maintainer",
"get_pypi_package_recommendations",
"validate_pypi_package_name",
"preview_pypi_package_page",
"check_pypi_upload_requirements",
"get_pypi_build_logs",
]