mcpField
J
Jolokia MCP Server

Jolokia MCP Server

ローカル
github.com/tadayosi開発ツール184 週間前に更新

Jolokia MCP Server について

Jolokia MCP Serverは、Jolokia経由でJavaアプリケーションのJMX MBeanを管理するためのサーバーです。独立型と、アプリケーションからMCPを直接公開するJVMエージェント型があります。

主な機能

  1. 01JVMのMBean一覧表示
  2. 02MBeanの操作と属性の確認
  3. 03MBean属性の読み書き
  4. 04MBean操作の実行
  5. 05独立型とJVMエージェント型

活用シーン

  1. 01接続したJavaアプリケーションのMBeanを確認
  2. 02実行中のMBean属性値を変更
  3. 03MCPホスト経由でMBean操作を実行

MCP 対応

MCPクライアントにMBeanの検索、属性アクセス、操作実行のツールを公開します。独立型はJolokia経由で接続し、JVMエージェント型はアプリケーション内にMCP HTTPエンドポイントを開きます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Jolokia MCP サーバー

テスト Maven Central:jolokia-mcp-server Maven Central:jolokia-mcp-agent-jvm

Java アプリケーション向けの JMX-HTTP ブリッジである Jolokia の MCP サーバーです。この MCP サーバーにより、LLM は Jolokia 経由で JMX API を使用して Java アプリケーションを管理できます。

https://github.com/user-attachments/assets/624ec93b-da69-49b5-be8f-02f2ff14bd2e

ディストリビューション

バージョン 0.4 以降、Jolokia MCP Server では、さまざまなデプロイのニーズに応じて、次の 2 種類のディストリビューションを提供しています。

スタンドアロン MCP サーバー

スタンドアロン MCP サーバーは、標準的な MCP サーバーとして機能します。stdio または HTTP を使用して MCP ホストに登録され、MCP サーバー自体が、Jolokia エージェントをアタッチした Java アプリケーションと、HTTP 経由の JMX で通信します。

スタンドアロン MCP サーバーを使用するには、まず Java アプリケーションに Jolokia エージェントをアタッチする必要があります。詳しい手順については、Jolokia のマニュアルを参照してください。 https://jolokia.org/reference/html/manual/agents.html

JVM エージェント MCP サーバー

一方、JVM エージェント MCP サーバーは、標準の Jolokia JVM エージェントを簡単に置き換えられる「ドロップイン」代替として提供します。

このディストリビューションでは、標準の Jolokia JVM エージェントの代わりに、MCP サーバーの JVM エージェントをアプリケーションにアタッチするだけです。すると、JVM エージェント MCP サーバーが MCP プロトコル用の HTTP ポートを直接開き、Java アプリケーション自体を MCP サーバーとして機能させます。

機能

この MCP サーバーは起動時に単一の JVM に接続し、接続した JVM に対して次の機能を提供します。

  • 接続した JVM の MBean を一覧表示する
  • MBean の操作を一覧表示する
  • MBean の属性を一覧表示する
  • MBean の属性を読み書きする
  • MBean の操作を実行する
ツール

この MCP サーバーは 6 つのツールを提供します。

  • listMBeans
    • JVM で利用可能な MBean を一覧表示する
    • 出力(List<String>):JVM 内のすべての MBean オブジェクト名の一覧
  • listMBeanOperations
    • 指定した MBean で利用可能な操作を一覧表示する
    • 入力:
      • mbean(String):MBean 名
    • 出力(String):指定した MBean で利用可能なすべての操作の定義を JSON 形式で表したもの
  • listMBeanAttributes
    • 指定した MBean で利用可能な属性を一覧表示する
    • 入力:
      • mbean(String):MBean 名
    • 出力(String):指定した MBean で利用可能なすべての属性の定義を JSON 形式で表したもの
  • readMBeanAttribute
    • 指定した MBean の属性を読み取る
    • 入力:
      • mbean(String):MBean 名
      • attribute(String):属性名
    • 出力(String):指定した属性の値を文字列で表したもの、または "null"
  • writeMBeanAttribute
    • 指定した MBean の属性値を設定する
    • 入力:
      • mbean(String):MBean 名
      • attribute(String):属性名
      • value(Object):属性値
    • 出力(String):指定した属性の以前の値を文字列で表したもの、または "null"
  • executeMBeanOperation
    • 指定した MBean の操作を実行する
    • 入力:
      • mbean(String):MBean 名
      • operation(String):操作名
      • args(Object[]):引数
    • 出力(String):操作の戻り値を文字列で表したもの、または "null"

Jolokia のバージョン互換性

以下の表に、jolokia-mcp-server の各リリースと互換性のある Jolokia のバージョンを示します。

jolokia-mcp-serverJolokia
0.6.x2.6.1 – 2.6.3
0.5.x2.4.3 – 2.6.0
0.4.x2.2.9 – 2.4.3
0.3.x2.2.8 – 2.2.9
0.2.x2.2.8
0.1.x2.2.8

インストール

スタンドアロン

MCP サーバーのランナー jar をダウンロードします。

Jolokia MCP サーバーを MCP ホストにインストールするには、MCP の設定に以下の項目を追加します。

{
  "mcpServers": {
    "jolokia": {
      "command": "java",
      "args": [
        "-jar",
        "<path-to-the-runner-jar>/jolokia-mcp-0.6.1-runner.jar"
      ]
    }
  }
}

または、JBang を使用する場合は(この方法では jar のダウンロードは不要です)。

{
  "mcpServers": {
    "jolokia": {
      "command": "jbang",
      "args": [
        "org.jolokia.mcp:jolokia-mcp-server:0.6.1:runner"
      ]
    }
  }
}
JVM エージェント

MCP サーバーの javaagent jar をダウンロードします。

次に、-javaagent オプションを指定して Java アプリケーションを実行します。

java -javaagent:jolokia-mcp-agent-jvm-0.6.1-javaagent.jar -jar your-app.jar

これにより、MCP HTTP トランスポートが http://localhost:8779/mcp で起動します。

Jolokia MCP サーバーを MCP ホストに登録するには、MCP の設定に以下の項目を追加します。

{
  "mcpServers": {
    "jolokia": {
      "httpUrl": "http://localhost:8779/mcp"
    }
  }
}

実行

java -jar で実行します。

java -jar jolokia-mcp-server-0.6.1-runner.jar [Jolokia URL]

JBang を使用する場合は、Maven GAV(org.jolokia.mcp:jolokia-mcp-server:0.6.1:runner)を指定して直接実行できます。

jbang org.jolokia.mcp:jolokia-mcp-server:0.6.1:runner
HTTP トランスポート

この MCP サーバーはデフォルトで stdio トランスポートを使用します。HTTP トランスポートに切り替えるには、--http オプションを使用します。

java -jar jolokia-mcp-server-0.6.1-runner.jar --http

HTTP トランスポートのエンドポイントは、デフォルトで http://localhost:8080/mcp に起動します。

設定オプション

パラメーター/オプションデフォルト説明
位置パラメーターhttp://localhost:8778/jolokiaMCP サーバーが接続する Jolokia エンドポイントの URL
--httpfalse (stdio)HTTP トランスポートを有効にします
--ssefalse (stdio)非推奨です。--http を使用してください
--port=<number>8080HTTP エンドポイントのポートです。-Dquarkus.http.port=<number> と同等です。このオプションを設定すると、HTTP が常に有効になります
--method=<GET|POST>Jolokia リクエストに使用する優先 HTTP メソッド(GET または POST)です。-Djolokia.mcp.preferred-http-method=<method> と同等です
-D*=*システムプロパティ

MCP サーバーに関連するシステムプロパティは次のとおりです。

システムプロパティデフォルト説明
quarkus.http.port8080(HTTP)HTTP エンドポイントのポートです
jolokia.mcp.urlhttp://localhost:8778/jolokia位置パラメーターと同等です
jolokia.mcp.preferred-http-method未設定Jolokia リクエストに使用する優先 HTTP メソッド(GET または POST)です

ビルド

mvn clean install

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。