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.
- Query the latest version of any Maven dependency
- Verify if a Maven dependency exists
- Check if a specific version of a dependency exists
- Real-time access to Maven Central Repository data
- Clone or download this repository
- Install dependencies:
npm install
- Build the server:
npm run build
Add the server to your MCP settings configuration file:
{
"mcpServers": {
"maven-deps-server": {
"command": "node",
"args": ["/path/to/maven-deps-server/build/index.js"]
}
}
}
Retrieves the latest version of a Maven dependency.
Input Schema:
{
"type": "object",
"properties": {
"dependency": {
"type": "string",
"description": "Maven dependency in format \"groupId:artifactId\" (e.g. \"org.springframework:spring-core\")"
}
},
"required": ["dependency"]
}
Example Usage:
const result = await mcpClient.callTool("maven-deps-server", "get_maven_latest_version", {
dependency: "org.springframework:spring-core"
});
// Returns: "6.2.1"
Checks if a specific version of a Maven dependency exists.
Input Schema:
{
"type": "object",
"properties": {
"dependency": {
"type": "string",
"description": "Maven dependency in format \"groupId:artifactId\" (e.g. \"org.springframework:spring-core\")"
},
"version": {
"type": "string",
"description": "Version to check (e.g. \"5.3.20\")"
}
},
"required": ["dependency", "version"]
}
Example Usage:
const result = await mcpClient.callTool("maven-deps-server", "check_maven_version_exists", {
dependency: "org.springframework:spring-core",
version: "5.3.20"
});
// Returns: "true" or "false"
// Input: org.springframework:spring-core
"6.2.1"
// Input: org.apache.kafka:kafka-clients
"3.7.2"
// Input: nonexistent.group:fake-artifact
"No Maven dependency found for nonexistent.group:fake-artifact"
// Input: { dependency: "org.springframework:spring-core", version: "5.3.20" }
"true"
// Input: { dependency: "org.springframework:spring-core", version: "0.0.1" }
"false"
- Uses Maven Central's REST API to fetch dependency information
- Sorts results by timestamp to ensure the latest version is returned
- Includes error handling for invalid dependencies and API issues
- Returns clean, parseable version strings for valid dependencies
- Provides boolean responses for version existence checks
The server handles various error cases:
- Invalid dependency format
- Invalid version format
- Non-existent dependencies
- API connection issues
- Malformed responses
To modify or extend the server:
- Make changes to
src/index.ts
- Rebuild using
npm run build
- Restart the MCP server to apply changes
MIT