Skip to main content
Glama
Maven Version Server

Maven Version Server

Maven Version Server

MCP server for Maven dependency version management using ONLY maven-metadata.xml from Maven Central (NO Solr search API).

Features

  • 4 Tools for Maven dependency management

  • Strict stability filtering - excludes SNAPSHOT, alpha, beta, RC, milestones, etc.

  • Pure metadata approach - uses only maven-metadata.xml

  • Fast and reliable - direct XML parsing, no search API dependencies

Related MCP server: versionator-mcp

Tools

1. get_latest_stable_version

Get the latest stable version for a Maven dependency.

Input:

{
  "dependency": "io.mockk:mockk"
}

Output: Plain text version string (e.g., 1.14.7)

2. get_all_versions

List all versions with optional filtering and limits.

Input:

{
  "dependency": "com.google.guava:guava",
  "stableOnly": true,
  "limit": 10
}

Output: Newline-separated version list

3. check_version_exists

Verify if a specific version exists and check its stability.

Input:

{
  "dependency": "org.springframework:spring-core",
  "version": "6.2.8"
}

Output: JSON object with exists, isStable fields

4. compare_versions

Compare two versions and get upgrade recommendations.

Input:

{
  "dependency": "org.springframework:spring-core",
  "currentVersion": "5.3.20",
  "targetVersion": "6.2.8"
}

Output: JSON object with upgrade type and recommendation

Stability Filter

Excludes versions containing (case-insensitive):

  • SNAPSHOT - Development snapshots

  • alpha / a - Alpha releases

  • beta / b - Beta releases

  • RC - Release candidates

  • M + digit - Milestones

  • CR - Candidate releases

  • EA - Early access

  • preview - Preview releases

  • dev - Development versions

  • incubating - Apache incubator

Installation

npm install -g maven-version-server

Or use with npx (no installation needed):

npx maven-version-server

Configure for Claude Code CLI

Add to ~/.claude/mcp_servers.json:

{
  "mcpServers": {
    "maven-version": {
      "command": "npx",
      "args": ["maven-version-server"]
    }
  }
}

Or if installed globally:

{
  "mcpServers": {
    "maven-version": {
      "command": "maven-version-server"
    }
  }
}

Build from source

git clone https://github.com/krotim/maven-version-server.git
cd maven-version-server
npm install
npm run build

Usage Examples

Example 1: Get latest stable version

User: What's the latest stable version of MockK?
Claude: [Uses get_latest_stable_version with dependency="io.mockk:mockk"]
Result: 1.14.7

Example 2: Compare versions

User: Should I upgrade Spring Core from 5.3.20 to 6.2.8?
Claude: [Uses compare_versions]
Result: {
  "currentVersion": "5.3.20",
  "targetVersion": "6.2.8",
  "upgradeType": "major",
  "recommendation": "Caution: Major version upgrade may contain breaking changes. Review migration guide.",
  "isCurrentStable": true,
  "isTargetStable": true
}

Example 3: List recent versions

User: Show me the last 5 versions of Guava
Claude: [Uses get_all_versions with limit=5]
Result:
33.5.0-jre
33.4.0-jre
33.3.1-jre
33.3.0-jre
33.2.1-jre

Testing

Test with MCP Inspector

npm run inspector

Manual test

node build/index.js

Technical Details

License

MIT

Available Tools

4 tools
check_version_existsA

Verify if a specific version exists for a Maven dependency

Inputs: dependency (required), version (required).

compare_versionsB

Compare two versions and suggest an upgrade path

Inputs: dependency (required), currentVersion (required), targetVersion.

get_all_versionsA

List all available versions for a Maven dependency, optionally filtering to stable versions only

Inputs: dependency (required), stableOnly, limit.

get_latest_stable_versionA

Get the latest stable version for a Maven dependency (excludes SNAPSHOT, alpha, beta, RC, milestone, etc.)

Inputs: dependency (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: checking existence, comparing versions, listing all versions, and getting the latest stable version. The descriptions make it unambiguous which tool to use for each specific task.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern (check_version_exists, compare_versions, get_all_versions, get_latest_stable_version). The naming is predictable and readable throughout the set.

    Tool Count5/5

    Four tools is well-scoped for a Maven version server, covering core operations without bloat. Each tool earns its place by addressing a distinct aspect of version management.

    Completeness4/5

    The tool set covers most essential version operations for Maven dependencies, but there is a minor gap in update or dependency resolution tools (e.g., suggesting compatible versions or handling transitive dependencies). However, the provided tools allow agents to work effectively within the domain.

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      An MCP (Model Context Protocol) server that provides tools for checking Maven dependency versions. This server enables LLMs to verify Maven dependencies and retrieve their latest versions from Maven Central Repository.
      3
      180 npm
      34
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      An MCP server that queries 19 package registries (npm, PyPI, crates.io, etc.) to retrieve the latest version of packages and their metadata.
      21
      1
      MIT
    • F
      license
      A
      quality
      D
      maintenance
      An MCP server that performs comprehensive health checks on project dependencies for JavaScript and Python projects, detecting outdated packages and fetching changelogs.
      1
      -