Package Registry Search

Busca y obtén información actualizada sobre paquetes de NPM, Cargo, PyPi y NuGet.

Documentación

Servidor MCP de Registro de Paquetes

Un servidor de Protocolo de Contexto de Modelo (MCP) que permite a asistentes de IA y agentes (Claude, Cursor, Copilot, etc.) buscar en registros de paquetes y recuperar información actualizada de paquetes.

NPM Version NPM Downloads License Node.js GitHub Stars Trust Score

Primeros Pasos

Cursor

Install MCP Server

Alternativamente, en Cursor, puedes configurar servidores MCP en tu configuración:

  1. Abre la Configuración de Cursor (Cmd/Ctrl + ,)
  2. Busca "MCP" o ve a Extensiones > MCP
  3. Agrega un nuevo servidor con:
    • Nombre: package-registry
    • Comando: npx
    • Argumentos: ["package-registry-mcp"]

Claude Code

Para Claude Code, ejecuta el siguiente comando en tu terminal:

claude mcp add -s user package-registry npx package-registry-mcp

Después de la configuración, tendrás acceso a herramientas de búsqueda e información de paquetes.

Claude Desktop

Agrega este servidor a tu Claude Desktop añadiendo lo siguiente a tu claude_desktop_config.json:

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

El archivo de configuración normalmente se encuentra en:

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

Después de agregar la configuración, reinicia Claude Desktop.

Características

  • Buscar paquetes NPM
  • Obtener información detallada de paquetes NPM
  • Buscar en crates.io (registro de paquetes de Rust)
  • Obtener información detallada de crates
  • Buscar paquetes NuGet (registro de paquetes .NET)
  • Obtener información detallada de paquetes NuGet
  • Obtener información detallada de paquetes PyPI (registro de paquetes de Python)
  • Obtener información detallada de módulos Go (registro de paquetes de Go)
  • Buscar Avisos de Seguridad de GitHub para vulnerabilidades
  • Datos en tiempo real directamente de los registros de paquetes

Herramientas Disponibles

Herramientas NPM

search-npm-packages

Busca en el registro NPM paquetes que coincidan con una consulta.

Parámetros:

  • query (cadena): Término de búsqueda para paquetes
  • limit (número, opcional): Número máximo de resultados (1-100, predeterminado: 10)

Ejemplo:

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

get-npm-package-details

Obtén información detallada sobre un paquete NPM específico.

Parámetros:

  • name (cadena): Nombre exacto del paquete

Ejemplo:

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

Devuelve información detallada que incluye:

  • Metadatos del paquete (nombre, descripción, versión, licencia)
  • Dependencias (tiempo de ejecución, desarrollo, pares)
  • Información de mantenedores
  • Enlaces de repositorio y página principal
  • Últimas 50 versiones (más recientes primero)

list-npm-package-versions

Lista todas las versiones de un paquete NPM específico.

Parámetros:

  • name (cadena): Nombre exacto del paquete
  • limit (número, opcional): Número máximo de versiones a devolver (1-1000, predeterminado: 100)

Ejemplo:

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

Devuelve:

  • Nombre del paquete y número total de versiones
  • Todas las versiones ordenadas por fecha de publicación (más recientes primero)
  • Información de la última versión

Herramientas crates.io

search-cargo-packages

Busca en crates.io crates de Rust que coincidan con una consulta.

Parámetros:

  • query (cadena): Término de búsqueda para crates
  • limit (número, opcional): Número máximo de resultados (1-100, predeterminado: 10)

Ejemplo:

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

get-cargo-package-details

Obtén información detallada sobre un crate específico de crates.io.

Parámetros:

  • name (cadena): Nombre exacto del crate

Ejemplo:

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

Devuelve información detallada que incluye:

  • Metadatos del crate (nombre, descripción, versión, licencia)
  • Palabras clave y categorías
  • Estadísticas de descargas (totales y recientes)
  • Características y tamaño del crate
  • Enlaces de repositorio, página principal y documentación
  • Últimas 50 versiones (más recientes primero)

list-cargo-package-versions

Lista todas las versiones de un crate específico de crates.io.

Parámetros:

  • name (cadena): Nombre exacto del crate
  • limit (número, opcional): Número máximo de versiones a devolver (1-1000, predeterminado: 100)

Ejemplo:

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

Devuelve:

  • Nombre del crate y número total de versiones
  • Todas las versiones ordenadas por fecha de publicación (más recientes primero)
  • Información de la última versión y la versión estable máxima

Herramientas NuGet

search-nuget-packages

Busca en el registro NuGet paquetes .NET que coincidan con una consulta.

Parámetros:

  • query (cadena): Término de búsqueda para paquetes
  • limit (número, opcional): Número máximo de resultados (1-100, predeterminado: 10)

Ejemplo:

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

get-nuget-package-details

Obtén información detallada sobre un paquete NuGet específico.

Parámetros:

  • name (cadena): Nombre exacto del paquete

Ejemplo:

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

Devuelve información detallada que incluye:

  • Metadatos del paquete (nombre, descripción, versión, licencia)
  • Autores e información del proyecto
  • Marcos de destino y dependencias
  • Estadísticas de descargas y estado de verificación
  • URLs del proyecto, licencia e icono
  • Últimas 50 versiones (más recientes primero)

list-nuget-package-versions

Lista todas las versiones de un paquete NuGet específico.

Parámetros:

  • name (cadena): Nombre exacto del paquete
  • limit (número, opcional): Número máximo de versiones a devolver (1-1000, predeterminado: 100)

Ejemplo:

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

Devuelve:

  • Nombre del paquete y número total de versiones
  • Todas las versiones ordenadas por fecha de publicación (más recientes primero)
  • Información de la última versión

Herramientas PyPI

Nota: PyPI no proporciona una API de búsqueda JSON, por lo que solo se admiten detalles de paquetes y listado de versiones. Para buscar, utiliza el sitio web de PyPI directamente en https://pypi.org/search/.

get-pypi-package-details

Obtén información detallada sobre un paquete PyPI específico.

Parámetros:

  • name (cadena): Nombre exacto del paquete

Ejemplo:

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

Devuelve información detallada que incluye:

  • Metadatos del paquete (nombre, descripción, versión, licencia)
  • Información de autor y mantenedores
  • Dependencias y requisitos de versión de Python
  • Clasificadores y palabras clave
  • URLs del proyecto y enlaces de documentación
  • Estadísticas de descargas
  • Información de vulnerabilidades
  • Últimas 50 versiones (más recientes primero)

list-pypi-package-versions

Lista todas las versiones de un paquete PyPI específico.

Parámetros:

  • name (cadena): Nombre exacto del paquete
  • limit (número, opcional): Número máximo de versiones a devolver (1-1000, predeterminado: 100)

Ejemplo:

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

Devuelve:

  • Nombre del paquete y número total de versiones
  • Todas las versiones ordenadas por fecha de publicación (más recientes primero)
  • Información de la última versión

Herramientas Go

Nota: pkg.go.dev no proporciona una API de búsqueda JSON, por lo que solo se admiten detalles de paquetes y listado de versiones. Para buscar, utiliza el sitio web de pkg.go.dev directamente en https://pkg.go.dev/search/.

get-golang-package-details

Obtén información detallada sobre un módulo/paquete Go específico.

Parámetros:

  • module (cadena): Ruta exacta del módulo (por ejemplo, "github.com/gin-gonic/gin")

Ejemplo:

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

Devuelve información detallada que incluye:

  • Ruta del módulo y última versión
  • Fecha de publicación e información del repositorio
  • Detalles del VCS (sistema de control de versiones)
  • Enlaces de pkg.go.dev y comando go get
  • Últimas 50 versiones (más recientes primero)

list-golang-package-versions

Lista todas las versiones de un módulo/paquete Go específico.

Parámetros:

  • module (cadena): Ruta exacta del módulo
  • limit (número, opcional): Número máximo de versiones a devolver (1-1000, predeterminado: 100)

Ejemplo:

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

Devuelve:

  • Ruta del módulo y número total de versiones
  • Todas las versiones ordenadas por fecha de publicación (más recientes primero)
  • Información de la última versión

Herramientas de Avisos de Seguridad de GitHub

search-github-advisories

Busca en la Base de Datos de Avisos de Seguridad de GitHub vulnerabilidades.

Parámetros:

  • ecosystem (cadena, opcional): Filtrar por ecosistema de paquetes (npm, pip, maven, nuget, go, rust, rubygems, composer, pub, swift, erlang, actions, other)
  • severity (cadena, opcional): Filtrar por nivel de gravedad (unknown, low, medium, high, critical)
  • type (cadena, opcional): Filtrar por tipo de aviso (reviewed, malware, unreviewed)
  • cveId (cadena, opcional): Filtrar por identificador CVE
  • limit (número, opcional): Número máximo de resultados (1-100, predeterminado: 30)

Ejemplo:

bun tool search-github-advisories '{"ecosystem": "npm", "severity": "critical", "limit": 5}'

get-github-advisory

Obtén información detallada sobre un Aviso de Seguridad de GitHub específico.

Parámetros:

  • ghsaId (cadena): El identificador GHSA (por ejemplo, GHSA-grv7-fg5c-xmjg)

Ejemplo:

bun tool get-github-advisory '{"ghsaId": "GHSA-grv7-fg5c-xmjg"}'

Devuelve información detallada que incluye:

  • Metadatos del aviso (ID GHSA, ID CVE, resumen, descripción)
  • Gravedad y puntuación CVSS
  • Paquetes afectados y rangos de versiones vulnerables
  • Versiones parcheadas
  • Clasificaciones CWE
  • Referencias y créditos

get-package-advisories

Obtén todos los avisos de seguridad que afectan a un paquete específico.

Parámetros:

  • ecosystem (cadena): El ecosistema del paquete (npm, pip, maven, etc.)
  • packageName (cadena): El nombre del paquete (por ejemplo, braces, lodash)
  • severity (cadena, opcional): Filtrar por nivel de gravedad
  • limit (número, opcional): Número máximo de resultados (1-100, predeterminado: 30)

Ejemplo:

bun tool get-package-advisories '{"ecosystem": "npm", "packageName": "braces"}'

Devuelve:

  • Todos los avisos de seguridad conocidos para el paquete especificado
  • Rangos de versiones vulnerables y versiones parcheadas
  • Clasificaciones de gravedad y puntuaciones CVSS

Instalación

Instala el paquete globalmente:

npm install -g package-registry-mcp

O úsalo directamente con npx (sin necesidad de instalación):

npx package-registry-mcp

Contribuciones

Consulta CONTRIBUTING.md para la configuración de desarrollo y pautas.

Requisitos

  • Node.js 18+ o tiempo de ejecución Bun
  • Conexión a Internet para acceso al registro de paquetes

Licencia

Consulta el archivo LICENSE para más detalles.