Maven Tools
Acesse inteligência em tempo real do Maven Central para obter informações rápidas e precisas sobre dependências.
Documentação
Servidor MCP Maven Tools
O Servidor MCP Maven Tools oferece a clientes compatíveis com MCP uma forma prática de inspecionar dependências JVM usando dados ao vivo do Maven Central.
Ele foi criado para desenvolvedores e agentes que precisam de mais do que uma simples consulta de versão: filtragem de estabilidade, comparações de atualização, sinais de saúde de dependências, dados de licença, verificações de CVE e consultas opcionais de documentação por meio do Context7.

Para Que Serve
- Verificações de versão: encontre versões estáveis e compare atualizações com contexto de major, minor e patch.
- Auditorias de dependências: inspecione idade, ritmo de lançamentos, vulnerabilidades conhecidas e dados de licença.
- Análise de POM: resolva versões declaradas de dependências por meio de parents e BOMs sem compilar o projeto.
- Planejamento de atualizações: obtenha edições estruturadas que um agente pode validar e aplicar, com atualizações major, conflitos e overrides sinalizados para revisão.
- Documentação: consulte documentações de bibliotecas por meio das ferramentas opcionais do Context7.
As ferramentas baseadas em coordenadas funcionam com projetos Maven, Gradle, SBT e Mill. As ferramentas de análise de POM e planejamento de atualizações aceitam arquivos pom.xml do Maven.
Início Rápido
Pré-requisito: Docker instalado e em execução. Nenhuma instalação local de Java é necessária. Para uma configuração sem Docker, consulte como compilar e executar o JAR.
Claude Desktop
Adicione a entrada maven-tools à configuração do seu Claude Desktop (consulte locais dos arquivos de configuração):
{
"mcpServers": {
"maven-tools": {
"command": "docker",
"args": ["run", "-i", "--rm", "arvindand/maven-tools-mcp:latest"]
}
}
}
VS Code + GitHub Copilot
Adicione o seguinte servidor a .vscode/mcp.json no seu workspace:
{
"servers": {
"maven-tools": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "arvindand/maven-tools-mcp:latest"]
}
}
}
Variantes de Imagem
| Tag | Transporte | Context7 | Melhor Para |
|---|---|---|---|
:latest | STDIO | Sim | Uso padrão de MCP em desktop |
:latest-noc7 | STDIO | Não | Redes onde o Context7 está bloqueado ou não é desejado |
:latest-http | HTTP | Sim | Clientes HTTP streamable e fluxos de trabalho sidecar |
CONTEXT7_API_KEY é opcional. A maioria das configurações pode começar sem ele. Se o seu ambiente exigir autenticação do Context7, ou se você quiser evitar limites anônimos, passe-o pelo Docker com -e CONTEXT7_API_KEY.
Para orientações mais completas de configuração, incluindo uso de JAR e contêiner nativo, Docker Compose e notas sobre ambiente, consulte docs/setup.md.
Ferramentas Disponíveis
A imagem padrão expõe 11 ferramentas MCP; -noc7 expõe as 9 ferramentas principais.
Ferramentas de inteligência Maven
| Ferramenta | O Que Faz |
|---|---|
get_latest_version | Encontra a versão mais recente com seleção ciente de estabilidade |
check_version_exists | Verifica uma versão específica e classifica sua estabilidade |
check_multiple_dependencies | Consulta em lote de coordenadas de dependências |
compare_dependency_versions | Compara versões atuais com atualizações disponíveis |
analyze_dependency_age | Classifica a idade de uma dependência |
analyze_release_patterns | Analisa ritmo de lançamentos e sinais de manutenção |
analyze_project_health | Executa uma auditoria mais ampla de saúde de dependências |
analyze_pom_dependencies | Resolve versões declaradas de dependências, identifica sua origem e expõe conflitos de BOM |
recommend_pom_upgrades | Produz recomendações acionáveis de atualização de POM e sinaliza mudanças que precisam de revisão |
Ferramentas de documentação Context7
| Ferramenta | O Que Faz |
|---|---|
resolve_library_id | Encontra um identificador de biblioteca de documentação |
query_docs | Busca documentação pelo ID da biblioteca no Context7 |
Para parâmetros, exemplos e notas ferramenta por ferramenta, consulte docs/tools.md.
Análise de dependências ciente de POM
Ambas as ferramentas de POM usam o Apache Maven Model Builder para herança de parents, propriedades e gerenciamento de dependências, incluindo BOMs importados. Elas aceitam XML de POM bruto e um pacote opcional sideloadedPoms para parents não lançados ou módulos irmãos.
analyze_pom_dependenciesretorna versões efetivas, classifica declarações comoEXPLICIT,MANAGEDouEXPLICIT_OVERRIDE, e identifica BOMs gerenciadores e conflitos.recommend_pom_upgradesretornadeterministicActionspara edições mecânicas eneedsAttentionpara atualizações major, conflitos de BOM e overrides explícitos. As ações identificam o campo de versão ou a propriedade a editar no POM de entrada.
As recomendações cobrem versões editáveis de parent/BOM, dependências explícitas, entradas raiz de gerenciamento de dependências e dependências diretas de build/plugin. Declarações sem um local de edição inequívoco no POM de entrada são ignoradas. O servidor retorna recomendações; o cliente ou agente valida e aplica.
A análise cobre dependências declaradas, não o grafo completo de dependências transitivas. A ativação de perfis é limitada a perfis ativos por padrão. Consulte detalhes e limites da análise de POM.
Exemplo
Um prompt comum no Copilot ou Claude é:
Verifique todas as versões mais recentes das dependências no meu
pom.xmle aponte qualquer coisa arriscada.
O cliente pode combinar os resultados das ferramentas para relatar:
- versão atual vs versão mais recente
- se a atualização é major, minor ou patch
- se o lançamento mais recente é estável
- se a dependência parece recente, envelhecendo ou desatualizada
- se há CVEs conhecidos ou preocupações de licença que valem atenção
Para perguntas mais amplas, como "qual biblioteca devo escolher?", combine metadados do Maven com documentação do Context7 e busca web no lado do cliente para contexto do ecossistema.
Consulte mais exemplos de prompts ou a habilidade de agente maven-tools para orientação sobre como escolher e combinar ferramentas.
Dogfooding
Este repositório usa suas próprias ferramentas em um fluxo de trabalho semanal de atualização de dependências. Um agente Python envia o POM para recommend_pom_upgrades, valida e aplica ações minor/patch, e abre um PR para revisão. Seu editor de XML verifica versões atuais e preserva a formatação. Revisões manuais de atualizações major usam o SDK do GitHub Copilot; atualizações rotineiras não exigem um LLM.
Consulte o guia de dogfooding para o agente, o fluxo de trabalho do GitHub Actions, credenciais e acionamentos manuais.
FAQ
- Isso substitui o Renovate ou Dependabot? O servidor fornece análise de dependências e recomendações de atualização. Edições de arquivos, testes, agendamento e criação de PRs exigem um agente ou fluxo de trabalho separado. O agente incluído demonstra isso para atualizações de POM do Maven.
- Funciona offline? Não totalmente. Consultas de metadados não armazenados em cache precisam de acesso ao Maven Central ou ao seu repositório configurado. Verificações de vulnerabilidades e documentação do Context7 também usam serviços externos.
- Ele analisa arquivos de build Gradle, SBT ou Mill? Não. Use as coordenadas Maven das dependências deles com as ferramentas baseadas em coordenadas; a análise de arquivos completos aceita XML de POM do Maven.
Para mais algumas notas de uso, consulte a seção FAQ em docs/examples.md.
Agradecimentos
O resolvedor de POM efetivo sob com.arvindand.mcp.maven.pom segue o formato de resolução
de maxxq-org/maxxq-maven (MIT,
Guy Chauliac), aqui limitado à resolução de dependências declaradas. Consulte NOTICE.
Mais Documentação
docs/setup.md- instalação, configuração de clientes, variantes de imagem, opções de compilação a partir do código-fontedocs/tools.md- catálogo completo de ferramentas, parâmetros e comportamento de respostasdocs/examples.md- prompts práticos, casos de uso avançados, comandos reutilizáveis e notas de FAQdocs/dogfooding.md- fluxo de trabalho semanal de auto-atualização e integração de agentesdocs/troubleshooting.md- problemas comuns de ambiente e correçõesdocs/architecture.md- princípios de design, opções de transporte/tempo de execução e notas técnicasCORPORATE-CERTIFICATES.md- suporte a certificados CA personalizados para redes restritas
Leitura Adicional
- Como Conectei o Claude ao Maven Central (e Por Que Você Deveria Também)
- Delegação Guiada: Adicionando Documentação do Context7 ao Meu Servidor MCP Maven Tools
Contribuindo
Se você quiser compilar ou testar localmente, comece com docs/setup.md e os scripts auxiliares em build/.
O histórico do projeto e as notas de versão estão em CHANGELOG.md.
Licença
Este projeto é licenciado sob a Licença MIT. Consulte LICENSE.
Autor
Arvind Menon
- GitHub: @arvindand