用途:把 JVM 依赖决策建立在 Maven Central 的实时数据上。适用于 Java、Kotlin、Scala 等 JVM 依赖,以及 Maven、Gradle、pom.xml、build.gradle、build.gradle.kts 相关的问题,例如最新版本、升级、CVE、许可证、依赖年龄与发布历史。
主要能力:通过 Maven Tools MCP 获取版本、安全、许可证、新鲜度和发布模式等事实,再由模型完成推理,给出建议、风险提示,并区分可立即执行与需人工复核的事项。依赖输入需规范为 groupId:artifactId 或 groupId:artifactId:version。
工具选择:查最新版本用 get_latest_version(stabilityFilter: PREFER_STABLE);校验具体版本用 check_version_exists;批量候选检查用 check_multiple_dependencies;单坐标升级分析用 compare_dependency_versions(includeSecurityScan: true,stabilityFilter: STABLE_ONLY);整份 pom.xml 升级计划用 recommend_pom_upgrades(mode: MINOR_PATCH);解析有效 POM 版本用 analyze_pom_dependencies;年龄用 analyze_dependency_age;维护信号用 analyze_release_patterns(monthsToAnalyze: 24);整体审计用 analyze_project_health。用户说“检查我的依赖”或粘贴依赖集合时默认用 analyze_project_health。
使用方式:先从输入或构建文件提取依赖,选择最窄的匹配工具,再用面向决策的语言报告:当前是什么、变化了什么、现在可安全做什么、哪些需人工复核。整份 POM 升级时,recommend_pom_upgrades 返回的 deterministic_actions[] 可直接应用,needs_attention[] 交给人工或模型复核。单坐标升级优先用 compare_dependency_versions,补丁与次版本为默认安全路径,主版本视为需人工复核。需要迁移指南或 API 细节时,先取依赖事实,再按可用性依次使用 Context7 工具或 WebSearch、WebFetch。
限制:不适用于未镜像到 Maven Central 的私有仓库、非 JVM 生态,以及依赖与决策已很明确的一次性查询。仅凭 Maven 元数据不能判断库的流行度、框架适配、迁移成本或性能取舍。安全扫描不完整或较慢时可使用部分结果并说明 CVE 数据可能不完整。版本类型不明时按不稳定处理。假设 Maven Tools MCP 已配置;不可用时提示用户参考 https://github.com/arvindand/maven-tools-mcp,需要同一服务器暴露原始 Context7 时用 arvindand/maven-tools-mcp:latest,文档另行处理时用 arvindand/maven-tools-mcp:latest-noc7。许可证为 MIT。