MCP服务器为AI助手提供针对所有JVM构建工具(Maven、Gradle、SBT、Mill)的Maven中央依赖智能。通过直接从Maven中央仓库读取maven-metadata.xml文件,获取即时且准确的依赖信息——比网络搜索或搜索API更快更可靠。集成Context7以支持文档。

询问你的AI助手:
与使用Maven中央仓库的任何构建工具配合工作:
| 构建工具 | 依赖格式 | 示例用法 |
|---|---|---|
| Maven | groupId:artifactId:version | org.springframework:spring-core:6.2.8 |
| Gradle | implementation("group:artifact:version") | 使用相同的Maven坐标 |
| SBT | libraryDependencies += "group" % "artifact" % "version" | 相同的groupId:artifactId格式 |
| Mill | ivy"group:artifact:version" | 相同的Maven中央查找 |
所有工具都使用标准的Maven坐标 —— 只需提供groupId:artifactId,其余由我们处理。
步骤1: 找到你的Claude Desktop配置文件
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.json~/.config/Claude/claude_desktop_config.json步骤2: 添加此配置(使用预构建的Docker镜像):
{
"mcpServers": {
"maven-tools": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"arvindand/maven-tools-mcp:latest"
]
}
}
}
步骤3: 重启Claude Desktop
前提条件: 已安装并运行Docker
注意: Docker镜像支持AMD64(Intel/AMD)和ARM64(Apple Silicon)架构。Docker会自动选择适合您平台的版本。
故障排除: Context7集成默认启用,并在启动时联系https://mcp.context7.com。如果您的网络阻止该URL,服务器会在stdout打印Spring堆栈跟踪,导致MCP握手失败。使用无Context7的原生镜像代替:arvindand/maven-tools-mcp:latest-noc7。(环境变量切换仅在直接运行JVM jar时有效。)
具有SSL检查的企业网络: 如果您需要Context7集成但您的网络使用SSL检查(中间人代理),您可以构建一个带有公司证书的自定义镜像。请参阅CORPORATE-CERTIFICATES.md以获取详细说明。
选项1:工作区配置 —— 创建.vscode/mcp.json:
{
"servers": {
"maven-tools": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "arvindand/maven-tools-mcp:latest"]
}
}
}
选项2:用户设置 —— 添加到您的VS Code设置:
{
"mcp": {
"servers": {
"maven-tools": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "arvindand/maven-tools-mcp:latest"]
}
}
}
}
使用方法: 打开聊天视图(Ctrl+Alt+I),选择代理模式,然后使用工具按钮启用Maven工具。
核心依赖智能:
高级分析:
| 工具 | 目的 | 关键特性 |
|---|---|---|
get_latest_version | 根据类型获取最新版本,带有稳定性偏好 | preferStable参数,所有版本类型 |
check_version_exists | 验证特定版本是否存在,带有类型信息 | 适用于任何JVM构建工具 |
check_multiple_dependencies | 检查多个依赖项,带有过滤器 | stableOnly参数,批量操作 |
compare_dependency_versions | 比较当前版本与最新版本,带有升级建议 | includeMigrationGuidance标志 |
analyze_dependency_age | 将依赖项分类为新鲜/当前/老化/过时 | includeModernizationGuidance标志 |
analyze_release_patterns | 分析维护活动并预测发布 | monthsToAnalyze参数,速度趋势 |
get_version_timeline | 增强版本时间线,带有时间分析 | versionCount参数,发布间隔检测 |
analyze_project_health | 多个依赖项的综合健康分析 | includeUpgradeStrategy标志 |
| 工具 | 目的 | 关键特性 |
|---|---|---|
resolve-library-id | 搜索库文档 | 总是可用(context7.enabled=true默认启用) |
get-library-docs | 根据ID获取库文档 | 总是可用(context7.enabled=true默认启用) |
核心参数:
preferStable - 在分析中优先考虑稳定版本stableOnly - 过滤到生产就绪版本onlyStableTargets - 仅建议升级到稳定版本分析参数:
maxAgeInDays - 设置可接受的依赖项年龄阈值monthsToAnalyze - 指定用于发布模式分析的时间段(默认:24个月)versionCount - 时间线上最近版本的数量(默认:2-20)includeRecommendations - 在健康分析中包含详细建议Context7集成:
Context7集成默认启用(context7.enabled=true)。Maven工具在响应模型中自动包含明确的编排指令,当需要升级或现代化时。此外,服务器作为MCP客户端暴露原始Context7工具(resolve-library-id,get-library-docs)直接给您的AI助手。禁用时,响应仅包含核心依赖分析,不包含编排指令或Context7工具。
通用兼容性:
所有工具都使用标准的Maven坐标(groupId:artifactId),并支持任何JVM构建工具。
get_latest_version获取Maven中央的任何依赖项的最新版本(适用于Maven、Gradle、SBT、Mill),带有稳定性偏好。
参数:
dependency (字符串,必需):Maven坐标格式groupId:artifactId(无版本)preferStable (布尔值,可选):当为true时,在响应中优先考虑稳定版本(默认:false)示例:
{
"dependency": "org.springframework:spring-core",
"preferStable": false
}
{
"dependency": "org.springframework:spring-boot",
"preferStable": true
}
响应:
{
"dependency": "org.springframework:spring-core",
"latest_stable": { "version": "6.2.7", "type": "stable" },
"latest_rc": { "version": "7.0.0-RC1", "type": "rc" },
"latest_beta": { "version": "7.0.0-beta1", "type": "beta" },
"latest_alpha": { "version": "7.0.0-alpha1", "type": "alpha" },
"latest_milestone": { "version": "7.0.0-M5", "type": "milestone" },
"total_versions": 100
}
check_version_exists检查特定依赖项版本是否存在并确定其稳定性类型。适用于任何JVM构建工具。
参数:
dependency (字符串,必需):Maven坐标格式groupId:artifactId(无版本)version (字符串,必需):要检查的版本示例:
{
"dependency": "org.jetbrains.kotlin:kotlin-stdlib",
"version": "1.9.0"
}
响应:
{
"exists": true,
"version": "6.0.0",
"type": "stable"
}
check_multiple_dependencies检查多个依赖项的最新版本,带有过滤选项。适用于任何JVM构建工具。
参数:
dependencies (字符串,必需):逗号或换行符分隔的Maven坐标列表(无版本)stableOnly (布尔值,可选):当为true时,仅过滤到生产就绪版本(默认:false)示例:
{
"dependencies": "org.jetbrains.kotlin:kotlin-stdlib,com.squareup.retrofit2:retrofit,org.apache.spark:spark-core_2.13",
"stableOnly": false
}
{
"dependencies": "org.springframework:spring-boot,com.fasterxml.jackson.core:jackson-core",
"stableOnly": true
}
响应(数组):
[
{
"dependency": "org.springframework:spring-core",
"primary_version": "6.2.7",
"primary_type": "stable",
"total_versions": 100,
"stable_versions": 82,
"latest_stable": { "version": "6.2.7", "type": "stable" },
"latest_rc": { "version": "7.0.0-RC1", "type": "rc" },
"latest_beta": null,
"latest_alpha": null,
"latest_milestone": { "version": "7.0.0-M5", "type": "milestone" }
},
// ...更多结果
]
compare_dependency_versions比较当前依赖项版本与最新可用版本,并显示带有安全控制的升级建议。
参数:
currentDependencies (字符串,必需):逗号或换行符分隔的Maven坐标列表,带有版本(groupId:artifactId:version)onlyStableTargets (布尔值,可选):当为true时,仅建议升级到稳定版本(默认:false)示例:
{
"currentDependencies": "org.jetbrains.kotlin:kotlin-stdlib:1.8.0,com.squareup.retrofit2:retrofit:2.9.0",
"onlyStableTargets": false
}
{
"currentDependencies": "org.springframework:spring-boot:2.7.0,org.hibernate:hibernate-core:5.6.0",
"onlyStableTargets": true
}
响应:
{
"comparison_date": "2025-06-07T22:38:47Z",
"dependencies": [
{
"dependency": "org.springframework:spring-core:6.0.0",
"current_version": "6.0.0",
"latest_version": "7.0.0-M5",
"latest_type": "milestone",
"update_type": "major",
"update_available": true,
"status": "success",
"error": null
}
],
"update_summary": {
"major_updates": 1,
"minor_updates": 0,
"patch_updates": 0,
"no_updates": 0
}
}
注意: Context7集成默认启用。以下原始Context7 MCP工具通过服务器的双重MCP架构(同时充当MCP服务器和MCP客户端)自动可用:
resolve-library-id使用智能名称解析搜索库文档。
参数:
libraryName (字符串,必需):库查找的搜索词(例如,“spring boot”,“testcontainers”)示例:
{
"libraryName": "testcontainers postgresql"
}
get-library-docs使用其Context7 ID获取库的综合文档。
参数:
context7CompatibleLibraryID (字符串,必需):Context7兼容的库ID(来自resolve-library-id)topic (字符串,可选):聚焦文档的主题(例如,“设置”,“迁移”,“配置”)tokens (整数,可选):要检索的最大标记数(默认:10000)示例:
{
"context7CompatibleLibraryID": "/testcontainers/testcontainers-java",
"topic": "postgresql setup",
"tokens": 5000
}
这些工具通过Spring AI MCP客户端集成默认自动可用。服务器同时充当MCP服务器(公开Maven工具)和MCP客户端(公开Context7工具),提供统一的接口,既可用于依赖分析,也可用于文档访问。
简单问题:
多构建工具支持:
高级稳定性控制:
操作: 粘贴您的build.gradle:"分析我的Gradle依赖项是否有过时版本"
结果: 即时跨任何构建工具的通用依赖分析
操作: "显示这些受影响依赖项的最新稳定版本"
结果: 即时的安全补丁识别,带有生产安全建议
操作: "Spring Boot、Spring Security和Jackson的最新稳定版本是什么,适用于Maven和Gradle?"
**结果: