SuperAPI AI 工具集

maven-mcp

maven-mcp 是一个面向 Maven 与 Gradle 依赖情报的 MCP 服务器及 AI 编程代理插件。它通过 MCP 协议为 Claude Code、Grok Build、Cursor、Codex 等代理提供依赖查询能力:查询构件版本、扫描项目过期依赖、检查漏洞(CVE)、获取变更日志、许可证与项目审计。插件内置单文件 Python 3 MCP 服务器,仅用标准库、无 pip 依赖,支持 stdio 与无状态 Streamable HTTP 两种传输。

访问官网

工具介绍

maven-mcp 是 kirich1409 在 GitHub 上的开源项目(MIT 许可),为 AI 编程代理提供 Maven 与 Gradle 依赖情报。它同时是一个 MCP 服务器,也是 Claude Code、Grok Build、Cursor、Codex 的代理插件。

用途

  • 查询 artifacts 版本(最新版本、可用版本)
  • 扫描项目中的过期依赖
  • 检查依赖漏洞(CVE)
  • 获取变更日志(changelogs)
  • 许可证与项目审计相关的依赖情报

主要能力

  • 捆绑一个单文件 Python 3 MCP 服务器(plugin/server/server.py),通过 stdio 使用 MCP(stdin/stdout 上的 JSON-RPC 2.0),或通过无状态 Streamable HTTP 端点通信。
  • 仅使用 Python 标准库,零 pip 依赖。
  • 插件通过 .mcp.json(Claude Code、Grok Build)和 mcp.json(Cursor、Codex)注册服务器,命令均为 python3。
  • 版本查询使用构建文件声明的仓库;当该范围未声明任何仓库时,使用 Maven Central、Google Maven 和 Gradle Plugin Portal。私有仓库需要凭据。
  • Gradle 扫描运行项目 wrapper 一次,读取生产运行时类路径(*RuntimeClasspath),再合并构建文件与版本目录中声明的来源。
  • Maven 扫描在本地读取 pom.xml。
  • 预编辑钩子 pre-edit-deps.sh 在编辑 Gradle、Maven 或版本目录文件前运行,可拦截疑似幻觉或标记为恶意的坐标,并可对严重/高危 CVE、仿冒包名或工具链不匹配进行询问;post-edit-deps.sh 提醒运行 /check-deps。两者均为失败开放:缺少 jq、timeout/gtimeout 或服务器错误时放行编辑。
  • Claude Code 对已安装技能的名称与描述有上下文预算(约模型上下文窗口的 1%),描述溢出时会被丢弃;因此只有超出单次工具调用的工作流技能保持模型路由,其余为手动调用(disable-model-invocation: true),但斜杠命令和底层 MCP 工具不变。

使用方式

  • 支持的构建系统:Gradle(build.gradle、build.gradle.kts、settings.gradle、settings.gradle.kts)、Maven(pom.xml)、版本目录(gradle/libs.versions.toml)。
  • Python 3.9+ 需在 PATH;服务器仅用标准库。
  • jq 与 timeout/gtimeout 供写入时钩子使用;macOS 上 timeout 来自 brew install coreutils(gtimeout)。没有这些钩子不生效,编辑照常进行;MCP 服务器本身不需要它们。
  • Claude Code 与 Grok Build 通过 marketplace 安装,需要 --trust 才能运行捆绑的 MCP 服务器与写入守卫钩子,安装后重载插件或开始新会话。
  • Cursor 与 Codex 通过 npx plugins 安装,CLI 会检测已安装代理并逐一安装。plugin/ 目录下为同一套 skills、server 和钩子脚本提供三个清单;刻意不提供根 plugin.json(Agent Plugins 1.0 清单),以避免 Codex 通过其 Agent Plugins 加载器加载并静默禁用所有钩子。
  • 本地路径(开发)时插件自动通过 .mcp.json 注册捆绑服务器,无需单独安装或构建。
  • 非插件客户端使用 uv(uvx maven-mcp,或 uv tool install maven-mcp 后运行 maven-mcp)。uv 会下载 Python 3.9+,本地 Claude Code、Codex、Grok 不会预装 uv;Claude Code 云 VM 已带 Python 和 uv;Web ChatGPT 无法生成本地进程,仅限 HTTP。
  • 与任意 MCP 客户端配合:Codex、Cursor、Claude Desktop、Gemini CLI、Kimi 均可运行发布的控制台脚本,命令为 uvx maven-mcp。
  • Kimi Code 配置位于 ~/.kimi-code/mcp.json(用户级)或 .kimi-code/mcp.json(项目级),使用 mcpServers 对象,command 为 uvx,args 为 ["maven-mcp"];Cursor 用 ~/.cursor/mcp.json,Claude Desktop 用 claude_desktop_config.json,Gemini CLI 用 ~/.gemini/settings.json,Codex 用 ~/.codex/config.toml。环境变量(如 GITHUB_TOKEN、MAVEN_MCP_OFFLINE)可通过各客户端的 env 字段传入。
  • HTTP 模式(远程/云代理):启动服务器后 MCP 端点为 http://<host>:<port>/mcp(单一 POST 端点,JSON 响应,无 SSE)。Kimi Code 用 url 字段,Gemini CLI 用 httpUrl 字段,Codex 在 config.toml 中设 url。MAVEN_MCP_HTTP_HOST 默认 127.0.0.1,MAVEN_MCP_HTTP_PORT 默认 8765。HTTP 传输无认证,仅绑定 localhost 或可信网络;若需暴露给互联网上的云代理,应置于终止 TLS 并强制认证的反向代理之后。

适用场景与限制

  • 适用于使用 Gradle 或 Maven 构建的 Java 项目,配合支持 MCP 的 AI 编程代理进行依赖升级、漏洞排查与审计。
  • HTTP 传输本身无认证,默认仅本机;私有仓库需凭据;预编辑钩子为失败开放;钩子依赖 jq 与 timeout/gtimeout,缺失则不生效。
  • Codex 在 deny 后仍会应用 apply_patch。npm、Homebrew 和 MCPB bundle 不是安装渠道。
  • 贡献分支从 develop 出发,编码代理的契约见 AGENTS.md;发布是在 main 上派发 Release。 许可为 MIT,详见 LICENSE。