基于原生JDK工具的轻量级JVM监控和诊断MCP(多代理通信协议)服务器实现。提供AI代理强大的能力来监控和分析Java应用程序,无需使用像Arthas这样的第三方工具。
<a href="https://glama.ai/mcp/servers/@xzq-xu/jvm-mcp-server"> <img width="380" height="200" src="https://gips1.baidu.com/it/u=581357734,80670480&fm=3081&app=3081&f=PNG?w=760&h=400" alt="JVM 服务器 MCP 服务器" /> </a># 如果尚未安装,请安装uv
curl -LsSf https://astral.sh/uv/install.sh | sh # Linux/macOS
# 或者
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" # Windows
# 安装包
uv pip install jvm-mcp-server
pip install jvm-mcp-server
# 克隆仓库
git clone https://github.com/your-repo/jvm-mcp-server.git
cd jvm-mcp-server
# 使用uv(推荐)
uv venv # 创建虚拟环境
uv sync # 安装依赖
# 或在开发模式下安装
uv pip install -e .
# 本地模式
uv run jvm-mcp-server
# 使用环境变量文件进行远程模式
uv run --env-file .env jvm-mcp-server
# 在特定目录中
uv --directory /path/to/project run --env-file .env jvm-mcp-server
# 本地模式
uvx run jvm-mcp-server
# 使用环境变量
uvx run --env-file .env jvm-mcp-server
from jvm_mcp_server import JvmMcpServer
# 本地模式
server = JvmMcpServer()
server.run()
# 远程模式(通过环境变量)
# 设置SSH_HOST, SSH_PORT, SSH_USER, SSH_PASSWORD或SSH_KEY
import os
os.environ['SSH_HOST'] = 'user@remote-host'
os.environ['SSH_PORT'] = '22'
server = JvmMcpServer()
server.run()
{
"mcpServers": {
"jvm-mcp-server": {
"command": "uv",
"args": [
"--directory",
"/path/to/jvm-mcp-server",
"run",
"--env-file",
"/path/to/jvm-mcp-server/.env",
"jvm-mcp-server"
]
}
}
}
JVM-MCP-Server 提供了一整套工具用于JVM监控和诊断:
list_java_processes:列出所有Java进程get_thread_info:获取特定进程的线程信息get_jvm_info:获取JVM基础信息get_memory_info:获取内存使用信息get_stack_trace:获取线程堆栈跟踪信息get_class_info:获取详细的类信息,包括结构get_stack_trace_by_method:获取方法调用路径decompile_class:反编译类源代码search_method:在类中搜索方法watch_method:监控方法调用get_logger_info:获取日志信息set_logger_level:设置日志级别get_dashboard:获取系统资源仪表盘get_jcmd_output:执行JDK jcmd命令get_jstat_output:执行JDK jstat命令有关每个工具的详细文档,请参阅可用工具。
JVM-MCP-Server 建立在一个模块化架构上:
BaseCommand:所有命令的抽象基类CommandExecutor:命令执行接口(本地和远程)OutputFormatter:命令输出格式化接口JvmMcpServer:注册所有工具的主要服务器类该项目正在积极开发中。请参阅Native_TODO.md了解当前进度。
欢迎贡献!请随时提交Pull Request。
git checkout -b feature/amazing-feature)git commit -m '添加一些惊人的功能')git push origin feature/amazing-feature)此项目采用MIT许可证 - 详情请参阅LICENSE文件。