trackmcp
Back to directory
JackKuo666

PyPI-MCP-Server

View on GitHub

๐Ÿ” Enabling AI assistants to search and access PyPI package information through a simple MCP interface.

2 stars PythonOthers Updated Jun 10, 2025

Documentation

PyPI MCP Server

๐Ÿ” Enabling AI assistants to search and access PyPI package information through a simple MCP interface.

PyPI MCP Server provides a bridge to the PyPI package repository for AI assistants through the Model Context Protocol (MCP). It allows AI models to programmatically search Python packages and access their metadata, supporting features like retrieving package information, searching packages, viewing version history, and download statistics.

โœจ Core Features

  • ๐Ÿ”Ž Package Search: Query PyPI packages by keywords โœ…
  • ๐Ÿ“Š Metadata Access: Get detailed metadata for specific packages โœ…
  • ๐Ÿ“ฆ Version Information: Get all released versions of a package โœ…
  • ๐Ÿ“ˆ Statistics Data: Get download statistics for packages โœ…
  • ๐Ÿš€ Efficient Retrieval: Fast access to package information โœ…

๐Ÿš€ Quick Start

Prerequisites

  • Python 3.10+
  • httpx
  • BeautifulSoup4
  • mcp-python-sdk
  • typing-extensions

Installation

1. Clone the repository:

code
git clone https://github.com/JackKuo666/PyPI-MCP-Server.git
   cd PyPI-MCP-Server

2. Install required dependencies:

code
pip install -r requirements.txt

Running the Server

bash
python pypi_server.py

The server will communicate with MCP clients through standard input/output (stdio).

๐Ÿ“š MCP Tools

Get Package Information

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

Get detailed information about a specified package, with optional version specification.

Search Packages

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

Search PyPI packages by keywords.

Get Package Releases

python
get_package_releases(package_name: str) -> Dict

Get all released version information for a specified package.

Get Package Statistics

python
get_package_stats(package_name: str) -> Dict

Get download statistics for a specified package.

๐Ÿ”ง Configuration

The server uses the MCP protocol to communicate with clients through standard input/output (stdio), no network port configuration needed.

๐Ÿ“‹ Integration with AI Assistants

Using Claude Desktop

Add the following configuration to your `claude_desktop_config.json`:

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

Usage Examples

In your AI assistant, you can call the PyPI MCP tools as follows:

code
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")

๐Ÿ“„ License

MIT

Frequently asked questions

What is PyPI-MCP-Server?

PyPI-MCP-Server is ๐Ÿ” Enabling AI assistants to search and access PyPI package information through a simple MCP interface.

How do I install PyPI-MCP-Server?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is PyPI-MCP-Server open source?

Yes โ€” it is hosted on GitHub at https://github.com/JackKuo666/PyPI-MCP-Server and has 2 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP