jmcpx について
jmcpx は、MCP サーバーとの対話や管理を行うコマンドラインクライアントです。ターミナルで MCP と LLM の設定を扱うユーザー向けに、セッション開始、ツールとリソースの一覧表示、複数の LLM 設定を提供します。
主な機能
- 01対話セッションの開始と管理
- 02サーバーのツールとリソースを一覧表示
- 03複数の LLM を設定
- 04レスポンスを Markdown で表示
- 05JSON と TOML による設定
活用シーン
- 01コマンドラインから MCP セッションを開始
- 02サーバーが公開するツールとリソースを確認
- 03Bedrock、Anthropic、OpenAI のモデルを設定
- 04設定ファイルで MCP 接続を管理
MCP 対応
jmcpx は MCP クライアントとして MCP サーバーに接続してセッションを管理し、公開されているツールとリソースを一覧表示できます。JSON 設定で stdio または HTTP の接続を指定できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
jmcpx
jmcpx は、MCP(Model Context Protocol)サーバーとの対話を目的に設計されたコマンドラインインターフェース(CLI)クライアントです。MCP サーバーを管理して操作するための堅牢なツールセットを提供し、さまざまな大規模言語モデル(LLM)の設定とシームレスに統合できます。
特徴
- セッション管理:MCP サーバーとの対話型セッションを開始し、管理します。
- ツールとリソースの一覧表示:MCP サーバーが提供する利用可能なツールとリソースを取得して表示します。
- LLM 統合:OpenAI、Anthropic、Bedrock を含む複数の LLM 設定に対応しています。
- Markdown レンダリング:読みやすさを向上させるため、応答を Markdown 形式で出力します。
- カスタマイズ可能な設定:JSON ファイルと TOML ファイルを使用して、MCP と LLM の設定を簡単に行えます。
要件
- Java:バージョン 21 以上
- Maven:依存関係の管理とプロジェクトのビルドに使用します
インストール
-
リポジトリをクローンします。
git clone ... cd jmcpx -
Build the project using Maven:
mvn clean package -
アプリケーションを実行します。
java -jar target/jmcpx-1.0-SNAPSHOT.jar
使用方法
このアプリケーションには、MCP サーバーや LLM の設定を操作するためのコマンドがいくつか用意されています。利用可能なコマンドは次のとおりです。
セッションを開始する
MCP サーバーとの対話型セッションを開始します。
java -jar target/jmcpx-1.0-SNAPSHOT.jar session
オプション:
-cまたは--mcp:mcp.jsonファイルの場所を指定します(デフォルト:<user.home>/.config/jmcpx/mcp.json)。-lまたは--llm:llm.tomlファイルの場所を指定します(デフォルト:<user.home>/.config/jmcpx/llm.toml)。
MCP サーバーの詳細を一覧表示する
MCP サーバーで利用可能なツールとリソースを一覧表示します。
java -jar target/jmcpx-1.0-SNAPSHOT.jar list
オプション:
-cまたは--mcp:mcp.jsonファイルの場所を指定します(デフォルト:<user.home>/.config/jmcpx/mcp.json)。-lまたは--llm:llm.tomlファイルの場所を指定します(デフォルト:<user.home>/.config/jmcpx/llm.toml)。
設定
デフォルトでは、mcp.json と llm.toml の両方の設定ファイルを、ユーザーのホームフォルダー内の <user.home>/.config/jmcpx フォルダーに配置できます。
Windows の場合、デフォルトのホームフォルダーのパスは C:\Users\<username> です(例:C:\Users\ervin)。
OSX/Linux の場合は、/home/<username> のようなパスになります。
mcp.json ファイルのパスは -c フラグで、llm.toml 設定ファイルのパスは -l で上書きできます。
MCP の設定
mcp.json ファイルで、MCP サーバーとその設定を定義します。例:
{
"mcpServers": {
"server1": {
"transport": "stdio",
"command": "path/to/server1",
"args": ["--arg1", "--arg2"],
"env": {
"ENV_VAR1": "value1"
}
},
"server2": {
"transport": "http",
"url": "https://myserver.com/mcp",
"headers": {
"Authorization": "Bearer ..."
}
}
}
}
LLM の設定
llm.toml ファイルで、LLM の設定を定義します。例:
[[bedrock]]
modelId = "amazon.nova-pro-v1:0"
region = "us-east-1"
[[anthropic]]
modelName = "claude-sonnet-4-20250514"
apiKey = "..."
default = true
[[anthropic]]
modelName = "claude-3-7-sonnet-20250219"
apiKey = "..."
[[openai]]
modelName = "gpt-4o-2024-08-06"
apiKey = "..."
[[openai]]
modelName = "gpt-4.1-2025-04-14"
apiKey = "..."
[[google]]
modelName = "gemini-2.5-pro-preview-05-06"
apiKey = "..."
ログ記録
DEV logback 設定を使用する
java -Dlogback.configurationFile=logback-dev.xml -jar target/jmcpx-1.0-SNAPSHOT.jar
ライセンス
このプロジェクトは MIT ライセンスの下でライセンスされています。詳細については LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。