package-registry-mcp

package-registry-mcp

Enables AI assistants to search and retrieve detailed package information from multiple package registries (NPM, crates.io, NuGet, PyPI, Go).

Category
Visit Server

README

Package Registry MCP Server

A Model Context Protocol (MCP) server that enables AI assistants and agents (Claude, Cursor, Copilot, etc.) to search package registries and retrieve up-to-date package information.

Getting Started

Cursor

Install MCP Server

Alternatively, in Cursor, you can configure MCP servers in your settings:

  1. Open Cursor Settings (Cmd/Ctrl + ,)
  2. Search for "MCP" or go to Extensions > MCP
  3. Add a new server with:
    • Name: package-registry
    • Command: npx
    • Args: ["-y", "package-registry-mcp"]

Claude Code

For Claude Code, run the following command in your terminal:

claude mcp add package-registry 'npx -y package-registry-mcp'

After configuration, you'll have access to package search and information tools.

Claude Desktop

Add this server to your Claude Desktop by adding the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "package-registry": {
      "command": "npx",
      "args": ["-y", "package-registry-mcp"]
    }
  }
}

The config file is typically located at:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

After adding the configuration, restart Claude Desktop.

Features

  • Search NPM packages
  • Get detailed NPM package information
  • Search crates.io (Rust package registry)
  • Get detailed crate information
  • Search NuGet packages (.NET package registry)
  • Get detailed NuGet package information
  • Get detailed PyPI package information (Python package registry)
  • Get detailed Go module information (Go package registry)
  • Real-time data directly from package registries

Available Tools

NPM Tools

search-npm-packages

Search the NPM registry for packages matching a query.

Parameters:

  • query (string): Search term for packages
  • limit (number, optional): Maximum number of results (1-100, default: 10)

Example:

bun tool search-npm-packages '{"query": "react", "limit": 5}'

get-npm-package-details

Get detailed information about a specific NPM package.

Parameters:

  • name (string): Exact crate name

Example:

bun tool get-npm-package-details '{"name": "react"}'

Returns detailed information including:

  • Package metadata (name, description, version, license)
  • Dependencies (runtime, dev, peer)
  • Maintainer information
  • Repository and homepage links
  • Last 50 versions (newest first)

list-npm-package-versions

List all versions of a specific NPM package.

Parameters:

  • name (string): Exact crate name
  • limit (number, optional): Maximum number of versions to return (1-1000, default: 100)

Example:

bun tool list-npm-package-versions '{"name": "react", "limit": 50}'

Returns:

  • Package name and total version count
  • All versions sorted by release date (newest first)
  • Latest version information

crates.io Tools

search-cargo-packages

Search crates.io for Rust crates matching a query.

Parameters:

  • query (string): Search term for crates
  • limit (number, optional): Maximum number of results (1-100, default: 10)

Example:

bun tool search-cargo-packages '{"query": "serde", "limit": 5}'

get-cargo-package-details

Get detailed information about a specific crate from crates.io.

Parameters:

  • name (string): Exact crate name

Example:

bun tool get-cargo-package-details '{"name": "serde"}'

Returns detailed information including:

  • Crate metadata (name, description, version, license)
  • Keywords and categories
  • Download statistics (total and recent)
  • Features and crate size
  • Repository, homepage, and documentation links
  • Last 50 versions (newest first)

list-cargo-package-versions

List all versions of a specific crate from crates.io.

Parameters:

  • name (string): Exact crate name
  • limit (number, optional): Maximum number of versions to return (1-1000, default: 100)

Example:

bun tool list-cargo-package-versions '{"name": "serde", "limit": 50}'

Returns:

  • Crate name and total version count
  • All versions sorted by release date (newest first)
  • Latest and max stable version information

NuGet Tools

search-nuget-packages

Search the NuGet registry for .NET packages matching a query.

Parameters:

  • query (string): Search term for packages
  • limit (number, optional): Maximum number of results (1-100, default: 10)

Example:

bun tool search-nuget-packages '{"query": "newtonsoft", "limit": 5}'

get-nuget-package-details

Get detailed information about a specific NuGet package.

Parameters:

  • name (string): Exact package name

Example:

bun tool get-nuget-package-details '{"name": "Newtonsoft.Json"}'

Returns detailed information including:

  • Package metadata (name, description, version, license)
  • Authors and project information
  • Target frameworks and dependencies
  • Download statistics and verification status
  • Project, license, and icon URLs
  • Last 50 versions (newest first)

list-nuget-package-versions

List all versions of a specific NuGet package.

Parameters:

  • name (string): Exact package name
  • limit (number, optional): Maximum number of versions to return (1-1000, default: 100)

Example:

bun tool list-nuget-package-versions '{"name": "Newtonsoft.Json", "limit": 50}'

Returns:

  • Package name and total version count
  • All versions sorted by release date (newest first)
  • Latest version information

PyPI Tools

Note: PyPI does not provide a JSON search API, so only package details and version listing are supported. For searching, please use the PyPI website directly at https://pypi.org/search/.

get-pypi-package-details

Get detailed information about a specific PyPI package.

Parameters:

  • name (string): Exact package name

Example:

bun tool get-pypi-package-details '{"name": "requests"}'

Returns detailed information including:

  • Package metadata (name, description, version, license)
  • Author and maintainer information
  • Dependencies and Python version requirements
  • Classifiers and keywords
  • Project URLs and documentation links
  • Download statistics
  • Vulnerability information
  • Last 50 versions (newest first)

list-pypi-package-versions

List all versions of a specific PyPI package.

Parameters:

  • name (string): Exact package name
  • limit (number, optional): Maximum number of versions to return (1-1000, default: 100)

Example:

bun tool list-pypi-package-versions '{"name": "django", "limit": 50}'

Returns:

  • Package name and total version count
  • All versions sorted by release date (newest first)
  • Latest version information

Go Tools

Note: pkg.go.dev does not provide a JSON search API, so only package details and version listing are supported. For searching, please use the pkg.go.dev website directly at https://pkg.go.dev/search/.

get-golang-package-details

Get detailed information about a specific Go module/package.

Parameters:

  • module (string): Exact module path (e.g., "github.com/gin-gonic/gin")

Example:

bun tool get-golang-package-details '{"module": "github.com/gin-gonic/gin"}'

Returns detailed information including:

  • Module path and latest version
  • Publication date and repository information
  • VCS (version control system) details
  • pkg.go.dev and go get command links
  • Last 50 versions (newest first)

list-golang-package-versions

List all versions of a specific Go module/package.

Parameters:

  • module (string): Exact module path
  • limit (number, optional): Maximum number of versions to return (1-1000, default: 100)

Example:

bun tool list-golang-package-versions '{"module": "github.com/gorilla/mux", "limit": 50}'

Returns:

  • Module path and total version count
  • All versions sorted by release date (newest first)
  • Latest version information

Installation

Install the package globally:

npm install -g package-registry-mcp

Or use directly with npx (no installation required):

npx package-registry-mcp

Development

npm install
# or
bun install
# or
yarn install

Development

# Install dependencies
bun install

# Build the server
bun run build

# Format code
bun run format

# Test individual MCP tools
bun tool <tool-name> <json-arguments>
# NPM Examples:
# bun tool search-npm-packages '{"query": "react"}'
# bun tool get-npm-package-details '{"name": "react"}'
# bun tool list-npm-package-versions '{"name": "react", "limit": 50}'
# crates.io Examples:
# bun tool search-cargo-packages '{"query": "serde"}'
# bun tool get-cargo-package-details '{"name": "serde"}'
# bun tool list-cargo-package-versions '{"name": "serde", "limit": 50}'
# NuGet Examples:
# bun tool search-nuget-packages '{"query": "newtonsoft"}'
# bun tool get-nuget-package-details '{"name": "Newtonsoft.Json"}'
# bun tool list-nuget-package-versions '{"name": "Newtonsoft.Json", "limit": 50}'
# PyPI Examples:
# bun tool get-pypi-package-details '{"name": "requests"}'
# bun tool list-pypi-package-versions '{"name": "django", "limit": 50}'
# Go Examples:
# bun tool get-golang-package-details '{"module": "github.com/gin-gonic/gin"}'
# bun tool list-golang-package-versions '{"module": "github.com/gorilla/mux", "limit": 50}'

Requirements

  • Node.js 18+ or Bun runtime
  • Internet connection for package registry access

License

See LICENSE file for details.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured