feat: Implement PyPI Discovery & Monitoring Tools
Add comprehensive PyPI discovery and monitoring capabilities with 4 core tools: - monitor_pypi_new_releases: Track new releases by category with real-time alerts - get_pypi_trending_today: Analyze current trending packages with market insights - search_pypi_by_maintainer: Find packages by maintainer with portfolio analysis - get_pypi_package_recommendations: Algorithm-based package recommendations Features: - RSS feed integration for real-time release monitoring - Intelligent caching system with configurable TTL - Advanced package categorization and filtering - Trending analysis with multiple data signals - Personalized recommendations with user context - Comprehensive error handling and logging - Full test coverage with mocked dependencies - MCP server endpoints for all discovery tools Dependencies: - Add feedparser for RSS feed parsing - Enhanced server.py with 4 new MCP tool endpoints - Updated tools/__init__.py exports This implementation provides production-ready monitoring and discovery capabilities that integrate seamlessly with the existing codebase architecture.
This commit is contained in:
parent
9924df34ec
commit
1b4ca9f902
5 changed files with 2035 additions and 0 deletions
|
|
@ -41,6 +41,12 @@ from .search import (
|
|||
search_by_category,
|
||||
search_packages,
|
||||
)
|
||||
from .discovery import (
|
||||
get_pypi_package_recommendations,
|
||||
get_pypi_trending_today,
|
||||
monitor_pypi_new_releases,
|
||||
search_pypi_by_maintainer,
|
||||
)
|
||||
from .analytics import (
|
||||
analyze_pypi_competition,
|
||||
get_pypi_package_analytics,
|
||||
|
|
@ -78,4 +84,8 @@ __all__ = [
|
|||
"get_pypi_security_alerts",
|
||||
"get_pypi_package_rankings",
|
||||
"analyze_pypi_competition",
|
||||
"monitor_pypi_new_releases",
|
||||
"get_pypi_trending_today",
|
||||
"search_pypi_by_maintainer",
|
||||
"get_pypi_package_recommendations",
|
||||
]
|
||||
|
|
|
|||
1061
pypi_query_mcp/tools/discovery.py
Normal file
1061
pypi_query_mcp/tools/discovery.py
Normal file
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue