Package Registry Search

Pesquise e obtenha informações atualizadas sobre pacotes NPM, Cargo, PyPi e NuGet.

Documentação

Package Registry MCP Server

Um servidor Model Context Protocol (MCP) que permite que assistentes e agentes de IA (Claude, Cursor, Copilot, etc.) pesquisem registros de pacotes e obtenham informações atualizadas sobre pacotes.

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

Começando

Cursor

Install MCP Server

Alternativamente, no Cursor, você pode configurar servidores MCP nas suas configurações:

  1. Abra as Configurações do Cursor (Cmd/Ctrl + ,)
  2. Pesquise por "MCP" ou vá para Extensões > MCP
  3. Adicione um novo servidor com:
    • Nome: package-registry
    • Comando: npx
    • Argumentos: ["package-registry-mcp"]

Claude Code

Para o Claude Code, execute o seguinte comando no seu terminal:

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

Após a configuração, você terá acesso às ferramentas de pesquisa e informações de pacotes.

Claude Desktop

Adicione este servidor ao seu Claude Desktop adicionando o seguinte ao seu claude_desktop_config.json:

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

O arquivo de configuração geralmente está localizado em:

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

Após adicionar a configuração, reinicie o Claude Desktop.

Recursos

  • Pesquisar pacotes NPM
  • Obter informações detalhadas de pacotes NPM
  • Pesquisar crates.io (registro de pacotes Rust)
  • Obter informações detalhadas de crates
  • Pesquisar pacotes NuGet (registro de pacotes .NET)
  • Obter informações detalhadas de pacotes NuGet
  • Obter informações detalhadas de pacotes PyPI (registro de pacotes Python)
  • Obter informações detalhadas de módulos Go (registro de pacotes Go)
  • Pesquisar GitHub Security Advisories por vulnerabilidades
  • Dados em tempo real diretamente dos registros de pacotes

Ferramentas Disponíveis

Ferramentas NPM

search-npm-packages

Pesquise no registro NPM por pacotes que correspondam a uma consulta.

Parâmetros:

  • query (string): Termo de pesquisa para pacotes
  • limit (número, opcional): Número máximo de resultados (1-100, padrão: 10)

Exemplo:

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

get-npm-package-details

Obtenha informações detalhadas sobre um pacote NPM específico.

Parâmetros:

  • name (string): Nome exato do pacote

Exemplo:

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

Retorna informações detalhadas incluindo:

  • Metadados do pacote (nome, descrição, versão, licença)
  • Dependências (runtime, dev, peer)
  • Informações dos mantenedores
  • Links do repositório e da página inicial
  • Últimas 50 versões (mais recentes primeiro)

list-npm-package-versions

Liste todas as versões de um pacote NPM específico.

Parâmetros:

  • name (string): Nome exato do pacote
  • limit (número, opcional): Número máximo de versões a retornar (1-1000, padrão: 100)

Exemplo:

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

Retorna:

  • Nome do pacote e contagem total de versões
  • Todas as versões ordenadas por data de lançamento (mais recentes primeiro)
  • Informações da versão mais recente

Ferramentas crates.io

search-cargo-packages

Pesquise no crates.io por crates Rust que correspondam a uma consulta.

Parâmetros:

  • query (string): Termo de pesquisa para crates
  • limit (número, opcional): Número máximo de resultados (1-100, padrão: 10)

Exemplo:

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

get-cargo-package-details

Obtenha informações detalhadas sobre um crate específico do crates.io.

Parâmetros:

  • name (string): Nome exato do crate

Exemplo:

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

Retorna informações detalhadas incluindo:

  • Metadados do crate (nome, descrição, versão, licença)
  • Palavras-chave e categorias
  • Estatísticas de download (total e recentes)
  • Recursos e tamanho do crate
  • Links do repositório, página inicial e documentação
  • Últimas 50 versões (mais recentes primeiro)

list-cargo-package-versions

Liste todas as versões de um crate específico do crates.io.

Parâmetros:

  • name (string): Nome exato do crate
  • limit (número, opcional): Número máximo de versões a retornar (1-1000, padrão: 100)

Exemplo:

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

Retorna:

  • Nome do crate e contagem total de versões
  • Todas as versões ordenadas por data de lançamento (mais recentes primeiro)
  • Informações da versão mais recente e da versão estável máxima

Ferramentas NuGet

search-nuget-packages

Pesquise no registro NuGet por pacotes .NET que correspondam a uma consulta.

Parâmetros:

  • query (string): Termo de pesquisa para pacotes
  • limit (número, opcional): Número máximo de resultados (1-100, padrão: 10)

Exemplo:

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

get-nuget-package-details

Obtenha informações detalhadas sobre um pacote NuGet específico.

Parâmetros:

  • name (string): Nome exato do pacote

Exemplo:

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

Retorna informações detalhadas incluindo:

  • Metadados do pacote (nome, descrição, versão, licença)
  • Autores e informações do projeto
  • Frameworks de destino e dependências
  • Estatísticas de download e status de verificação
  • URLs do projeto, licença e ícone
  • Últimas 50 versões (mais recentes primeiro)

list-nuget-package-versions

Liste todas as versões de um pacote NuGet específico.

Parâmetros:

  • name (string): Nome exato do pacote
  • limit (número, opcional): Número máximo de versões a retornar (1-1000, padrão: 100)

Exemplo:

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

Retorna:

  • Nome do pacote e contagem total de versões
  • Todas as versões ordenadas por data de lançamento (mais recentes primeiro)
  • Informações da versão mais recente

Ferramentas PyPI

Nota: O PyPI não fornece uma API de pesquisa JSON, portanto apenas detalhes de pacotes e listagem de versões são suportados. Para pesquisar, use o site do PyPI diretamente em https://pypi.org/search/.

get-pypi-package-details

Obtenha informações detalhadas sobre um pacote PyPI específico.

Parâmetros:

  • name (string): Nome exato do pacote

Exemplo:

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

Retorna informações detalhadas incluindo:

  • Metadados do pacote (nome, descrição, versão, licença)
  • Informações do autor e dos mantenedores
  • Dependências e requisitos de versão do Python
  • Classificadores e palavras-chave
  • URLs do projeto e links de documentação
  • Estatísticas de download
  • Informações de vulnerabilidades
  • Últimas 50 versões (mais recentes primeiro)

list-pypi-package-versions

Liste todas as versões de um pacote PyPI específico.

Parâmetros:

  • name (string): Nome exato do pacote
  • limit (número, opcional): Número máximo de versões a retornar (1-1000, padrão: 100)

Exemplo:

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

Retorna:

  • Nome do pacote e contagem total de versões
  • Todas as versões ordenadas por data de lançamento (mais recentes primeiro)
  • Informações da versão mais recente

Ferramentas Go

Nota: o pkg.go.dev não fornece uma API de pesquisa JSON, portanto apenas detalhes de pacotes e listagem de versões são suportados. Para pesquisar, use o site pkg.go.dev diretamente em https://pkg.go.dev/search/.

get-golang-package-details

Obtenha informações detalhadas sobre um módulo/pacote Go específico.

Parâmetros:

  • module (string): Caminho exato do módulo (ex.: "github.com/gin-gonic/gin")

Exemplo:

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

Retorna informações detalhadas incluindo:

  • Caminho do módulo e versão mais recente
  • Data de publicação e informações do repositório
  • Detalhes do VCS (sistema de controle de versão)
  • Links do pkg.go.dev e do comando go get
  • Últimas 50 versões (mais recentes primeiro)

list-golang-package-versions

Liste todas as versões de um módulo/pacote Go específico.

Parâmetros:

  • module (string): Caminho exato do módulo
  • limit (número, opcional): Número máximo de versões a retornar (1-1000, padrão: 100)

Exemplo:

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

Retorna:

  • Caminho do módulo e contagem total de versões
  • Todas as versões ordenadas por data de lançamento (mais recentes primeiro)
  • Informações da versão mais recente

Ferramentas GitHub Security Advisory

search-github-advisories

Pesquise no banco de dados GitHub Security Advisory por vulnerabilidades.

Parâmetros:

  • ecosystem (string, opcional): Filtrar por ecossistema de pacote (npm, pip, maven, nuget, go, rust, rubygems, composer, pub, swift, erlang, actions, other)
  • severity (string, opcional): Filtrar por nível de gravidade (unknown, low, medium, high, critical)
  • type (string, opcional): Filtrar por tipo de advisory (reviewed, malware, unreviewed)
  • cveId (string, opcional): Filtrar por identificador CVE
  • limit (número, opcional): Número máximo de resultados (1-100, padrão: 30)

Exemplo:

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

get-github-advisory

Obtenha informações detalhadas sobre um GitHub Security Advisory específico.

Parâmetros:

  • ghsaId (string): O identificador GHSA (ex.: GHSA-grv7-fg5c-xmjg)

Exemplo:

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

Retorna informações detalhadas incluindo:

  • Metadados do advisory (ID GHSA, ID CVE, resumo, descrição)
  • Gravidade e pontuação CVSS
  • Pacotes afetados e faixas de versões vulneráveis
  • Versões corrigidas
  • Classificações CWE
  • Referências e créditos

get-package-advisories

Obtenha todos os advisories de segurança que afetam um pacote específico.

Parâmetros:

  • ecosystem (string): O ecossistema do pacote (npm, pip, maven, etc.)
  • packageName (string): O nome do pacote (ex.: braces, lodash)
  • severity (string, opcional): Filtrar por nível de gravidade
  • limit (número, opcional): Número máximo de resultados (1-100, padrão: 30)

Exemplo:

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

Retorna:

  • Todos os advisories de segurança conhecidos para o pacote especificado
  • Faixas de versões vulneráveis e versões corrigidas
  • Classificações de gravidade e pontuações CVSS

Instalação

Instale o pacote globalmente:

npm install -g package-registry-mcp

Ou use diretamente com npx (sem necessidade de instalação):

npx package-registry-mcp

Contribuindo

Consulte CONTRIBUTING.md para configuração de desenvolvimento e diretrizes.

Requisitos

  • Node.js 18+ ou runtime Bun
  • Conexão com a internet para acesso aos registros de pacotes

Licença

Consulte o arquivo LICENSE para obter detalhes.