PyPI MCP Server
Buscar y acceder a metadatos de paquetes de Python, historial de versiones y estadísticas de descarga del repositorio PyPI.
Documentación
Servidor MCP de PyPI
🔍 Habilitando asistentes de IA para buscar y acceder a información de paquetes de PyPI a través de una interfaz MCP simple.
El Servidor MCP de PyPI proporciona un puente hacia el repositorio de paquetes de PyPI para asistentes de IA a través del Protocolo de Contexto de Modelo (MCP). Permite que los modelos de IA busquen programáticamente paquetes de Python y accedan a sus metadatos, con funciones como recuperación de información de paquetes, búsqueda de paquetes, visualización del historial de versiones y estadísticas de descargas.
✨ Características principales
- 🔎 Búsqueda de paquetes: Consulta paquetes de PyPI por palabras clave ✅
- 📊 Acceso a metadatos: Obtén metadatos detallados de paquetes específicos ✅
- 📦 Información de versiones: Obtén todas las versiones publicadas de un paquete ✅
- 📈 Datos estadísticos: Obtén estadísticas de descargas de paquetes ✅
- 🚀 Recuperación eficiente: Acceso rápido a la información de paquetes ✅
🚀 Inicio rápido
Requisitos previos
- Python 3.10+
- httpx
- BeautifulSoup4
- mcp-python-sdk
- typing-extensions
Instalación
-
Clona el repositorio:
git clone https://github.com/JackKuo666/PyPI-MCP-Server.git cd PyPI-MCP-Server -
Instala las dependencias requeridas:
pip install -r requirements.txt
Ejecución del servidor
python pypi_server.py
El servidor se comunicará con los clientes MCP a través de entrada/salida estándar (stdio).
📚 Herramientas MCP
Obtener información de un paquete
get_package_info(package_name: str, version: Optional[str] = None) -> Dict
Obtén información detallada sobre un paquete especificado, con especificación de versión opcional.
Buscar paquetes
search_packages(query: str) -> List[Dict]
Busca paquetes de PyPI por palabras clave.
Obtener versiones de un paquete
get_package_releases(package_name: str) -> Dict
Obtén toda la información de versiones publicadas de un paquete especificado.
Obtener estadísticas de un paquete
get_package_stats(package_name: str) -> Dict
Obtén estadísticas de descargas de un paquete especificado.
🔧 Configuración
El servidor utiliza el protocolo MCP para comunicarse con los clientes a través de entrada/salida estándar (stdio), sin necesidad de configuración de puertos de red.
📋 Integración con asistentes de IA
Usando Claude Desktop
Agrega la siguiente configuración a tu claude_desktop_config.json:
{
"mcpServers": {
"pypi": {
"command": "python",
"args": ["pypi_server.py"]
}
}
}
Ejemplos de uso
En tu asistente de IA, puedes llamar a las herramientas MCP de PyPI de la siguiente manera:
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")