Paketversion Mcp-Server
Ein MCP-Server, der LLMs die neuesten stabilen Paketversionen beim Programmieren bereitstellt.
Übersicht
Was ist mcp-package-version?
Das ### mcp-package-version ist ein Repository, das von dem Benutzer ### sammcj auf GitHub erstellt wurde. Dieses Repository wurde entwickelt, um die Versionen von Paketen innerhalb des MCP (Multi-Channel Package) Ökosystems zu verwalten und zu verfolgen. Es dient als wichtiges Werkzeug für Entwickler, die die Versionskontrolle aufrechterhalten und die Kompatibilität zwischen verschiedenen Paketversionen sicherstellen müssen.
Funktionen von mcp-package-version
- Versionskontrolle: Das Repository ermöglicht es Benutzern, mehrere Versionen von Paketen zu verwalten, was das Zurücksetzen oder Aktualisieren bei Bedarf erleichtert.
- Kompatibilitätsverfolgung: Es hilft dabei, nachzuvollziehen, welche Versionen von Paketen miteinander kompatibel sind, wodurch das Risiko von Konflikten verringert wird.
- Öffentlicher Zugang: Als öffentliches Repository ermöglicht es die Zusammenarbeit und Beiträge von anderen Entwicklern, was die Gesamtfunktionalität und Zuverlässigkeit des Paketmanagementprozesses verbessert.
- Dokumentation: Umfassende Dokumentation wird bereitgestellt, um Benutzern zu helfen, das Repository und seine Funktionen effektiv zu nutzen.
So verwenden Sie mcp-package-version
-
Klonen Sie das Repository: Beginnen Sie damit, das Repository mit dem Befehl auf Ihren lokalen Computer zu klonen:
git clone https://github.com/sammcj/mcp-package-version.git
-
Abhängigkeiten installieren: Navigieren Sie in das geklonte Verzeichnis und installieren Sie alle notwendigen Abhängigkeiten, wie in der Dokumentation beschrieben.
-
Versionen verwalten: Verwenden Sie die bereitgestellten Befehle, um Paketversionen hinzuzufügen, zu aktualisieren oder zu entfernen. Stellen Sie sicher, dass Sie die Versionsrichtlinien befolgen, um die Kompatibilität aufrechtzuerhalten.
-
Zusammenarbeiten: Wenn Sie beitragen möchten, forken Sie das Repository, nehmen Sie Ihre Änderungen vor und reichen Sie eine Pull-Anfrage zur Überprüfung ein.
-
Auf dem Laufenden bleiben: Überprüfen Sie regelmäßig auf Updates des Repositories, um sicherzustellen, dass Sie die neuesten Funktionen und Fehlerbehebungen verwenden.
Häufig gestellte Fragen
F1: Was ist der Zweck des mcp-package-version Repositories?
A1: Das mcp-package-version Repository wurde entwickelt, um Entwicklern zu helfen, Paketversionen innerhalb des MCP-Ökosystems zu verwalten und zu verfolgen, um Kompatibilität und Benutzerfreundlichkeit sicherzustellen.
F2: Wie kann ich zum mcp-package-version Repository beitragen?
A2: Sie können beitragen, indem Sie das Repository forken, Ihre Änderungen vornehmen und eine Pull-Anfrage einreichen. Stellen Sie sicher, dass Sie die in der Dokumentation bereitgestellten Beitragsrichtlinien befolgen.
F3: Ist das mcp-package-version Repository für die öffentliche Nutzung geöffnet?
A3: Ja, das Repository ist öffentlich, sodass jeder darauf zugreifen, es nutzen und dazu beitragen kann.
F4: Wo finde ich die Dokumentation für mcp-package-version?
A4: Die Dokumentation ist im Repository selbst verfügbar, typischerweise in einer README.md
-Datei oder einem speziellen docs
-Verzeichnis.
F5: Wie melde ich Probleme oder Fehler im mcp-package-version Repository?
A5: Sie können Probleme melden, indem Sie zum Tab "Issues" im Repository navigieren und ein neues Problem mit detaillierten Informationen über das Problem einreichen.
Detail
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
Serverkonfiguration
{
"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": {}
}
}
}