使用说明
项目简介
Jolokia MCP Server是一个基于Model Context Protocol (MCP) 构建的服务器应用。它的主要作用是作为大型语言模型 (LLM) 客户端与Java应用程序的Java Management Extensions (JMX) 接口之间的桥梁。通过集成Jolokia HTTP/JSON桥接器,该服务器使得LLM能够通过标准化的MCP协议远程访问、监控和管理运行中的Java应用。
主要功能点
- 集成Jolokia: 利用Jolokia客户端库与目标Java应用中运行的Jolokia代理通信。
- 暴露JMX功能: 将JMX核心功能(如列出MBeans、读取/写入属性、执行操作)封装成LLM可理解和调用的Tools。
- 支持LLM调用: 遵守MCP协议,允许LLM客户端通过Tool调用机制与服务器交互,实现对Java应用的远程控制和信息获取。
- 多种传输协议: 支持MCP定义的Stdio(标准输入输出)和Server-Sent Events (SSE) 等传输协议,方便与不同的MCP客户端集成。
安装步骤
- 环境准备: 确保您的系统已安装Java开发工具包 (JDK 11或更高版本) 和Apache Maven。
- 克隆仓库: 使用Git命令克隆项目源代码:
git clone https://github.com/jolokia/jolokia-mcp-server.git cd jolokia-mcp-server - 构建项目: 在项目根目录执行Maven命令进行构建:
构建成功后,生成的可执行JAR文件位于 'target' 目录下,名称格式为 'jolokia-mcp-server-X.Y.Z-SNAPSHOT.jar' (X.Y.Z是版本号)。mvn clean install
服务器配置
MCP客户端需要配置如何启动此MCP服务器进程并与之通信。以下是用于MCP客户端配置的示例信息:
- 服务器名称: 'Jolokia MCP Server'
- 启动命令 (command): 'java'
- 启动参数 (args):
[ "-jar", "path/to/your/jolokia-mcp-server-X.Y.Z-SNAPSHOT.jar", "http://localhost:8778/jolokia", "--sse" // 可选参数:如果需要使用SSE,请保留此行;否则使用默认的stdio ]
参数说明:
- '"path/to/your/jolokia-mcp-server-X.Y.Z-SNAPSHOT.jar"': 替换为您实际构建出的MCP服务器JAR文件的完整路径。
- '"http://localhost:8778/jolokia"': 必须替换为目标Java应用中运行的Jolokia代理的实际访问URL。这是服务器连接Jolokia的关键。
- '"--sse"': 这是一个可选参数。如果存在,服务器将使用SSE作为MCP传输协议,并通过HTTP端口通信;如果省略,服务器将默认使用Stdio协议进行通信。
请将上述信息填入您的MCP客户端的服务器配置中。
基本使用方法
- 确保目标Java应用已启动,并且Jolokia代理正在运行并可通过配置的URL访问。
- 启动您的MCP客户端,并加载使用上述配置信息的Jolokia MCP Server。
- 一旦客户端与服务器成功建立连接,LLM即可通过客户端发现Jolokia MCP Server提供的Tools(如 'listMBeans', 'readMBeanAttribute', 'executeMBeanOperation' 等)。
- LLM可以通过自然语言或其他方式请求客户端调用这些Tools,例如询问“列出所有可用的MBeans”或“获取名为 java.lang:type=Memory 的MBeans的 HeapMemoryUsage 属性值”,客户端会将请求转发给Jolokia MCP Server,服务器则通过Jolokia代理与目标Java应用交互,并将结果返回给客户端和LLM。
信息
分类
开发者工具