Pacote Versão Servidor Mcp
Um servidor MCP que fornece LLMs com as versões mais recentes e estáveis de pacotes ao codificar.
Visão geral
O que é mcp-package-version?
O ### mcp-package-version é um repositório criado pelo usuário ### sammcj no GitHub. Este repositório foi projetado para gerenciar e rastrear as versões de pacotes dentro do ecossistema MCP (Multi-Channel Package). Ele serve como uma ferramenta vital para desenvolvedores que precisam manter o controle de versões e garantir compatibilidade entre diferentes versões de pacotes.
Recursos do mcp-package-version
- Controle de Versão: O repositório permite que os usuários gerenciem várias versões de pacotes, facilitando o retrocesso ou a atualização conforme necessário.
- Rastreamento de Compatibilidade: Ajuda a rastrear quais versões de pacotes são compatíveis entre si, reduzindo o risco de conflitos.
- Acesso Público: Sendo um repositório público, permite colaboração e contribuições de outros desenvolvedores, aprimorando a funcionalidade e a confiabilidade do processo de gerenciamento de pacotes.
- Documentação: Documentação abrangente é fornecida para ajudar os usuários a entender como usar efetivamente o repositório e seus recursos.
Como Usar o mcp-package-version
-
Clone o Repositório: Comece clonando o repositório para sua máquina local usando o comando:
git clone https://github.com/sammcj/mcp-package-version.git
-
Instale Dependências: Navegue até o diretório clonado e instale quaisquer dependências necessárias conforme descrito na documentação.
-
Gerencie Versões: Use os comandos fornecidos para adicionar, atualizar ou remover versões de pacotes. Certifique-se de seguir as diretrizes de versionamento para manter a compatibilidade.
-
Colabore: Se você deseja contribuir, faça um fork do repositório, faça suas alterações e envie um pull request para revisão.
-
Mantenha-se Atualizado: Verifique regularmente se há atualizações no repositório para garantir que você está usando os recursos e correções mais recentes.
Perguntas Frequentes
Q1: Qual é o propósito do repositório mcp-package-version?
A1: O repositório mcp-package-version foi projetado para ajudar os desenvolvedores a gerenciar e rastrear versões de pacotes dentro do ecossistema MCP, garantindo compatibilidade e facilidade de uso.
Q2: Como posso contribuir para o repositório mcp-package-version?
A2: Você pode contribuir fazendo um fork do repositório, fazendo suas alterações e enviando um pull request. Certifique-se de seguir as diretrizes de contribuição fornecidas na documentação.
Q3: O repositório mcp-package-version está aberto para uso público?
A3: Sim, o repositório é público, permitindo que qualquer pessoa acesse, use e contribua para ele.
Q4: Onde posso encontrar a documentação para mcp-package-version?
A4: A documentação está disponível dentro do próprio repositório, tipicamente em um arquivo README.md
ou em um diretório dedicado docs
.
Q5: Como faço para relatar problemas ou bugs no repositório mcp-package-version?
A5: Você pode relatar problemas navegando até a aba "Issues" no repositório e enviando um novo problema com informações detalhadas sobre o problema.
Detalhe
Package Version MCP Server
An MCP server that provides tools for checking latest stable package versions from multiple package registries:
- npm (Node.js/JavaScript)
- PyPI (Python)
- Maven Central (Java)
- Go Proxy (Go)
- Swift Packages (Swift)
- AWS Bedrock (AI Models)
- Docker Hub (Container Images)
- GitHub Container Registry (Container Images)
- GitHub Actions
This server helps LLMs ensure they're recommending up-to-date package versions when writing code.
IMPORTANT: I'm slowly moving across this tool to a component of my mcp-devtools server
<a href="https://glama.ai/mcp/servers/zkts2w92ba"><img width="380" height="200" src="https://glama.ai/mcp/servers/zkts2w92ba/badge" alt="https://github.com/sammcj/mcp-package-version MCP server" /></a>
Screenshot
Installation
Requirements:
- A modern go version installed (See Go Installation)
Using go install
(Recommended for MCP Client Setup):
go install github.com/sammcj/mcp-package-version/v2@HEAD
Then setup your client to use the MCP server. Assuming you've installed the binary with go install github.com/sammcj/mcp-package-version/v2@HEAD
and your $GOPATH
is /Users/sammcj/go/bin
, you can provide the full path to the binary:
{
"mcpServers": {
"package-version": {
"command": "/Users/sammcj/go/bin/mcp-package-version"
}
}
}
- For the Cline VSCode Extension this will be
~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
- For Claude Desktop
~/Library/Application\ Support/Claude/claude_desktop_config.json
- For GoMCP
~/.config/gomcp/config.yaml
Other Installation Methods
Or clone the repository and build it:
git clone https://github.com/sammcj/mcp-package-version.git
cd mcp-package-version
make
You can also run the server in a container:
docker run -p 18080:18080 ghcr.io/sammcj/mcp-package-version:main
Note: If running in a container, you'll need to configure the client to use the URL instead of command, e.g.:
{
"mcpServers": {
"package-version": {
"url": "http://localhost:18080",
}
}
}
Tip: Go Path
If $GOPATH/bin
is not in your PATH
, you'll need to provide the full path to the binary when configuring your MCP client (e.g. /Users/sammcj/go/bin/mcp-package-version
).
If you haven't used go applications before and have only just installed go, you may not have a $GOPATH
set up in your environment. This is important for any go install
command to work correctly.
Understanding
$GOPATH
The
go install
command downloads and compiles Go packages, placing the resulting binary executable in thebin
subdirectory of your$GOPATH
. By default,$GOPATH
is > usually located at$HOME/go
on Unix-like systems (including macOS). If you haven't configured$GOPATH
explicitly, Go uses this default.The location
$GOPATH/bin
(e.g.,/Users/your_username/go/bin
) needs to be included in your system'sPATH
environment variable if you want to run installed Go binaries directly by name from any terminal location.You can add the following line to your shell configuration file (e.g.,
~/.zshrc
,~/.bashrc
) to set$GOPATH
to the default if it's not already set, and ensure$GOPATH/bin
is in yourPATH
:[ -z "$GOPATH" ] && export GOPATH="$HOME/go"; echo "$PATH" | grep -q ":$GOPATH/bin" || export PATH="$PATH:$GOPATH/bin"
After adding this line, restart your terminal or MCP client.
Usage
The server supports two transport modes: stdio (default) and SSE (Server-Sent Events).
STDIO Transport (Default)
mcp-package-version
SSE Transport
mcp-package-version --transport sse --port 18080 --base-url "http://localhost:18080"
This would make the server available to clients at http://localhost:18080/sse
(Note the /sse
suffix!).
Command-line Options
--transport
,-t
: Transport type (stdio or sse). Default: stdio--port
: Port to use for SSE transport. Default: 18080--base-url
: Base URL for SSE transport. Default: http://localhost
Docker Images
Docker images are available from GitHub Container Registry:
docker pull ghcr.io/sammcj/mcp-package-version:main
You can also see the example docker-compose.yaml.
Tools
NPM Packages
Check the latest versions of NPM packages:
{
"name": "check_npm_versions",
"arguments": {
"dependencies": {
"react": "^17.0.2",
"react-dom": "^17.0.2",
"lodash": "4.17.21"
},
"constraints": {
"react": {
"majorVersion": 17
}
}
}
}
Python Packages (requirements.txt)
Check the latest versions of Python packages from requirements.txt:
{
"name": "check_python_versions",
"arguments": {
"requirements": [
"requests==2.28.1",
"flask>=2.0.0",
"numpy"
]
}
}
Python Packages (pyproject.toml)
Check the latest versions of Python packages from pyproject.toml:
{
"name": "check_pyproject_versions",
"arguments": {
"dependencies": {
"dependencies": {
"requests": "^2.28.1",
"flask": ">=2.0.0"
},
"optional-dependencies": {
"dev": {
"pytest": "^7.0.0"
}
},
"dev-dependencies": {
"black": "^22.6.0"
}
}
}
}
Java Packages (Maven)
Check the latest versions of Java packages from Maven:
{
"name": "check_maven_versions",
"arguments": {
"dependencies": [
{
"groupId": "org.springframework.boot",
"artifactId": "spring-boot-starter-web",
"version": "2.7.0"
},
{
"groupId": "com.google.guava",
"artifactId": "guava",
"version": "31.1-jre"
}
]
}
}
Java Packages (Gradle)
Check the latest versions of Java packages from Gradle:
{
"name": "check_gradle_versions",
"arguments": {
"dependencies": [
{
"configuration": "implementation",
"group": "org.springframework.boot",
"name": "spring-boot-starter-web",
"version": "2.7.0"
},
{
"configuration": "testImplementation",
"group": "junit",
"name": "junit",
"version": "4.13.2"
}
]
}
}
Go Packages
Check the latest versions of Go packages from go.mod:
{
"name": "check_go_versions",
"arguments": {
"dependencies": {
"module": "github.com/example/mymodule",
"require": [
{
"path": "github.com/gorilla/mux",
"version": "v1.8.0"
},
{
"path": "github.com/spf13/cobra",
"version": "v1.5.0"
}
]
}
}
}
Docker Images
Check available tags for Docker images:
{
"name": "check_docker_tags",
"arguments": {
"image": "nginx",
"registry": "dockerhub",
"limit": 5,
"filterTags": ["^1\\."],
"includeDigest": true
}
}
AWS Bedrock Models
List all AWS Bedrock models:
{
"name": "check_bedrock_models",
"arguments": {
"action": "list"
}
}
Search for specific AWS Bedrock models:
{
"name": "check_bedrock_models",
"arguments": {
"action": "search",
"query": "claude",
"provider": "anthropic"
}
}
Get the latest Claude Sonnet model:
{
"name": "get_latest_bedrock_model",
"arguments": {}
}
Swift Packages
Check the latest versions of Swift packages:
{
"name": "check_swift_versions",
"arguments": {
"dependencies": [
{
"url": "https://github.com/apple/swift-argument-parser",
"version": "1.1.4"
},
{
"url": "https://github.com/vapor/vapor",
"version": "4.65.1"
}
],
"constraints": {
"https://github.com/apple/swift-argument-parser": {
"majorVersion": 1
}
}
}
}
GitHub Actions
Check the latest versions of GitHub Actions:
{
"name": "check_github_actions",
"arguments": {
"actions": [
{
"owner": "actions",
"repo": "checkout",
"currentVersion": "v3"
},
{
"owner": "actions",
"repo": "setup-node",
"currentVersion": "v3"
}
],
"includeDetails": true
}
}
Releases and CI/CD
This project uses GitHub Actions for continuous integration and deployment. The workflow automatically:
- Builds and tests the application on every push to the main branch and pull requests
- Creates a release when a tag with the format
v*
(e.g.,v1.0.0
) is pushed - Builds and pushes Docker images to GitHub Container Registry
License
Configuração do Servidor
{
"mcpServers": {
"mcp-package-version": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--sammcj--mcp-package-version--mcp-package-version",
"./out --transport transport --base-url base-url"
],
"env": {}
}
}
}