一个全面的模型上下文协议(MCP)服务器,用于PyPI包信息管理和查询。该服务器为AI模型提供了强大的工具,可以查询PyPI包数据、分析依赖关系、检查漏洞以及管理Python包信息。
git clone https://github.com/AstroAir/pypi-mcp.git
cd pypi-mcp
uv sync
git clone https://github.com/AstroAir/pypi-mcp.git
cd pypi-mcp
pip install -e .
# 使用安装的脚本
pypi-mcp
# 或直接使用Python
python -m pypi_mcp.server
pypi-mcp --transport http --host 0.0.0.0 --port 8000
get_package_info(package_name, version?, include_files?) - 获取详细的包元数据get_package_versions(package_name, limit?, include_prereleases?) - 列出包的版本search_packages(query, limit?, include_description?) - 搜索包compare_versions(package_name, version1, version2) - 比较两个包的版本check_compatibility(package_name, version?, python_version?) - 检查Python兼容性get_dependencies(package_name, version?, include_extras?) - 分析包的依赖关系check_vulnerabilities(package_name, version?) - 检查安全漏洞get_package_health(package_name, version?) - 评估包的健康状况和维护情况get_pypi_stats() - 获取PyPI范围内的统计信息get_cache_info() - 获取服务器缓存信息pypi://stats/overview - PyPI统计概览pypi://package/{package_name} - 包元数据资源analyze_package(package_name, version?) - 生成综合包分析compare_packages(package1, package2) - 生成包比较分析security_review(package_name) - 生成安全审查提示服务器可以通过环境变量进行配置:
# PyPI API设置
export PYPI_MCP_PYPI_BASE_URL="https://pypi.org"
export PYPI_MCP_USER_AGENT="pypi-mcp/0.1.0"
# 性能设置
export PYPI_MCP_TIMEOUT=30.0
export PYPI_MCP_RATE_LIMIT=1.0
export PYPI_MCP_CACHE_TTL=300
export PYPI_MCP_CACHE_MAX_SIZE=1000
# 日志记录
export PYPI_MCP_LOG_LEVEL="INFO"
# 功能标志
export PYPI_MCP_ENABLE_VULNERABILITY_CHECK=true
export PYPI_MCP_ENABLE_STATS=true
export PYPI_MCP_ENABLE_SEARCH=true
添加到您的Claude Desktop配置中:
{
"mcpServers": {
"pypi": {
"command": "pypi-mcp",
"args": []
}
}
}
包信息: "FastAPI的最新版本是什么?它的依赖关系有哪些?"
安全检查: "检查Django 3.2.0是否有任何已知的安全漏洞"
包比较: "比较FastAPI和Flask用于构建Web API"
依赖分析: "requests的运行时依赖关系是什么?"
兼容性检查: "numpy 1.24.0是否与Python 3.11兼容?"
git clone https://github.com/AstroAir/pypi-mcp.git
cd pypi-mcp
uv sync --dev
uv run pytest
uv run black pypi_mcp/
uv run isort pypi_mcp/
uv run mypy pypi_mcp/
# 验证打包配置
python scripts/packaging_utils.py
# 构建包
uv build
# 验证构建的包
python scripts/validate_package.py
有关详细的打包信息,请参阅docs/developer-guide/packaging.md。
服务器由以下组件构建:
server.py - 主要的FastMCP服务器,带有工具定义client.py - 带有异步支持的PyPI API客户端models.py - Pydantic数据模型cache.py - 缓存实用程序config.py - 配置管理utils.py - 辅助函数exceptions.py - 自定义异常此项目根据MIT许可证发布 - 详情见LICENSE文件。