PyPI包搜索服务

PyPI MCP Server为AI助手提供了一个通过模型上下文协议(MCP)访问PyPI包存储库的桥梁,支持搜索Python包、获取包元数据、版本信息和下载统计等功能。

  • by JackKuo666
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 jackkuo666/pypi-mcp-server

使用说明

PyPI MCP服务器

🔍 使AI助手能够通过简单的MCP界面搜索和访问PyPI包信息。

PyPI MCP服务器通过模型上下文协议(MCP)为AI助手提供了一个到PyPI包存储库的桥梁。它允许AI模型以编程方式搜索Python包并访问其元数据,支持检索包信息、搜索包、查看版本历史和下载统计等功能。

✨ 核心功能

  • 🔎 包搜索:按关键字查询PyPI包✅
  • 📊 元数据访问:获取特定包的详细元数据✅
  • 📦 版本信息:获取包的所有已发布版本✅
  • 📈 统计数据:获取软件包的下载统计数据✅
  • 🚀 高效检索:快速访问包裹信息✅

🚀 快速开始

先决条件

  • Python 3.10+
  • httpx
  • 美丽的Soup4
  • mcp-python-sdk
  • 键入扩展名

安装

  1. 克隆存储库:

    git clone https://github.com/JackKuo666/PyPI-MCP-Server.git
    cd PyPI-MCP-Server
    
  2. 安装所需的依赖项:

    pip install -r requirements.txt
    

运行服务器

python pypi_server.py

服务器将通过标准输入/输出(stdio)与MCP客户端通信。

📚 MCP工具

获取包裹信息

get_package_info(package_name: str, version: Optional[str] = None) -> Dict

获取有关指定包的详细信息,以及可选的版本规范。

搜索套餐

search_packages(query: str) -> List[Dict]

按关键字搜索PyPI包。

获取软件包发布

get_package_releases(package_name: str) -> Dict

获取指定包的所有已发布版本信息。

获取包统计信息

get_package_stats(package_name: str) -> Dict

获取指定包的下载统计信息。

🔧 配置

服务器使用MCP协议通过标准输入/输出(stdio)与客户端通信,不需要网络端口配置。

📋 与AI助手集成

使用克劳德桌面

将以下配置添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "pypi": {
      "command": "python",
      "args": ["pypi_server.py"]
    }
  }
}

使用示例

在您的AI助手中,您可以按如下方式调用PyPI MCP工具:

Use PyPI tool to search for Flask package:
@pypi search_packages("flask")

Get detailed information about a specific package:
@pypi get_package_info("requests")

Get information about a specific version of a package:
@pypi get_package_info("django", "4.2.0")

View all released versions of a package:
@pypi get_package_releases("numpy")

Get download statistics for a package:
@pypi get_package_stats("pandas")

📄 许可证

麻省理工学院