mcpField
L
Lightweight Java MCP SDK: AJ-MCP

Lightweight Java MCP SDK: AJ-MCP

ローカル
mcp.ajaxjs.com開発ツール354 週間前に更新

Lightweight Java MCP SDK: AJ-MCP について

AJ-MCP は MCP クライアントとサーバーを構築するための軽量な Java 向け SDK です。Java 8 や Spring Boot 2.x に留まる既存システムを対象とし、Jackson と OkHttp を基盤とした小さな API を提供します。

主な機能

  1. 01Java 8 以降への対応
  2. 02STDIO、HTTP/SSE、Streamable HTTP のトランスポート
  3. 03複数の MCP プロトコルリビジョンとバージョン交渉
  4. 04アノテーションによるツールと機能の宣言

活用シーン

  1. 01既存の Java サービスを MCP ツールやプロンプトとして公開する
  2. 02Spring Boot 2.x や Servlet アプリケーションに MCP を組み込む
  3. 03Java のデスクトップやサーバーアプリからローカルの STDIO MCP プロセスに接続する

MCP 対応

本プロジェクトは MCP SDK であり、MCP クライアントに機能を公開するサーバーの開発と、MCP サーバーに接続するクライアントの開発の両方に使用できます。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

AJ-MCP

軽量な Java MCP SDK

License: GPL v3 GitHub code size in bytes GitHub repo size Ask DeepWiki Email 中文


AJ-MCP は、Java 用の軽量な Model Context Protocol(MCP)SDK です。Java 8 または Spring Boot 2.x を使い続ける必要がある既存システム向けに、MCP クライアントとサーバーを構築するための、簡潔で直接的な API を提供します。

  • Java 8 以降と Spring Boot 2.x に対応しています。
  • 軽量かつコンパクトで、主なランタイム依存関係には Jackson JSON と OkHttp を使用しています。
  • 使いやすく拡張しやすい設計で、サンプルとバイリンガルのドキュメントを用意しています。
  • STDIO、従来の HTTP/SSE トランスポート、Streamable HTTP に対応しています。
  • MCP プロトコルのリビジョン 2024-11-05、2025-03-26、2025-06-18 を、バージョンネゴシエーションとともに実装しています。
  • ツール、リソース、リソーステンプレート、プロンプト、補完、ページネーション、サブスクリプション、キャンセル、ロギング、ルート、サンプリング、引き出しに対応しています。

MCP SDK コンポーネントに関する以下の 3 つのプロジェクトをご覧ください。

独立した AJ MCP Next プロジェクトは、AJ Util を使用し、Java 8 上で 2026-07-28 を対象としています。 このレガシー SDK とは別に、STDIO とセッションレス HTTP アダプターを備えたコア/クライアント/サーバーモジュールがあります。

  • AJ MCP Common:AJ-MCP の共通ライブラリです。Model Context Protocol の実装と、その他の共通クラスが含まれています。
  • AJ MCP Client:MCP クライアント SDK です。
  • AJ MCP Server:MCP サーバー SDK です。
  • クライアントとサーバー両方のサンプルです。
  • Spring Streamable HTTP のサンプルです。samples/client には専用の StreamableHttpClientExample(Java 8)があります。

詳しくは、ユーザーマニュアルのウェブサイトをご覧ください。

AJ-MCP の使用場面

AJ-MCP は、アプリケーションスタック全体をアップグレードせずに、既存のビジネス機能を AI クライアントに公開したり、MCP サーバーを利用したりする必要がある Java アプリケーションを対象としています。一般的な用途は次のとおりです。

  • 既存の Java サービスを MCP のツール、リソース、またはプロンプトとしてラップする。
  • Java デスクトップアプリケーションまたはサーバーアプリケーションを、ローカルの STDIO MCP プロセスに接続する。
  • MCP を Spring Boot 2.x または Servlet ベースのアプリケーションに統合する。
  • 異なる MCP プロトコルリビジョンをネゴシエーションするクライアントに対応する。

JSON-RPC のバッチメッセージには意図的に対応していません。

モジュール

モジュール目的現在のバージョン
aj-mcp-common共有の JSON-RPC メッセージ、MCP プロトコルモデル、コンテンツタイプ、バージョンメタデータ、JSON ユーティリティ1.9
aj-mcp-client同期クライアント API と STDIO、HTTP/SSE、Streamable HTTP トランスポート1.7
aj-mcp-serverアノテーションベースの機能検出、リクエストのディスパッチ、エラー、セッション、サーバートランスポート1.6
samplesSTDIO、Spring Boot/SSE、組み込み Tomcat のサンプル—

クライアントとサーバーのアーティファクトはすでに aj-mcp-common に依存しています。通常、アプリケーションでは使用するアーティファクトのみを追加します。

クイックスタート

Java 8 サーバーからツールを公開する

サーバーの依存関係を追加します。


<dependency>
    <groupId>com.ajaxjs</groupId>
    <artifactId>aj-mcp-server</artifactId>
    <version>1.6</version>
</dependency>

サービスを宣言し、STDIO で起動します。


@McpService
public class GreetingTools {
    @Tool(description = "Greets a user")
    public String greet(@ToolArg("name") String name) {
        return "Hello, " + name;
    }
}

public static void main(String[] args) {
    FeatureMgr features = new FeatureMgr();
    features.init("com.example.mcp");

    McpServer server = new McpServer();
    server.setFeatureMgr(features);
    server.setServerConfig(new ServerConfig());
    server.setTransport(new ServerStdio(server));
    server.start();
}

STDIO を使用する場合、標準出力は JSON-RPC メッセージ用に確保し、アプリケーションログは標準エラー出力またはログファイルに出力してください。ツール、リソース、プロンプト、HTTP トランスポートについては、サーバーの README を参照してください。

Java クライアントから接続する

<dependency>
    <groupId>com.ajaxjs</groupId>
    <artifactId>aj-mcp-client</artifactId>
    <version>1.6</version>
</dependency>
try(McpClient client = McpClient.createStdioMcpClient("java", "-jar", "/path/to/mcp-server.jar")) {
  client.listTools().forEach(tool ->System.out.println(tool.getName()));
  String result = client.callTool("greet", "{\"name\":\"AJ-MCP\"}");
  System.out.println(result);
}

ストリーム、HTTP 接続、保留中のリクエスト、ワーカースレッド、オプションの子プロセスを解放するため、クライアントは必ずクローズしてください。HTTP トランスポートとその他の API については、クライアントの README を参照してください。

ソースからビルドする

JDK 8 または JDK 17 で Maven を使用します。

mvn test

1 つのモジュールとその依存関係のみをビルドするには、次のようにします。

mvn -pl aj-mcp-client -am test
mvn -pl aj-mcp-server -am test

なぜ MCP なのか?

Model Context Protocol により、お気に入りのプログラミング言語やフレームワークを使って、アプリケーションのデータを活用するインテリジェントなアプリケーションを構築する、魅力的な可能性が広がります。AJ MCP Servers は、AI と、想像しうるあらゆるデータソースやシステムを橋渡しする独自の Java ベースのサーバーを作成するための、強力な基盤となります。

お気に入りのデータベースへの接続、社内システムとの統合、あるいはまったく新しいものの構築など、可能性は本当に無限大です。AJ を使えば MCP サーバーを簡単に実装できるため、複雑な仕組みではなく、創造的な部分に集中できます。

さあ、何を待っているのでしょうか?コードを入手し、IDE を起動して、今日から独自の MCP サーバーを構築しましょう。AI を活用したアプリケーションの未来はすでに始まっており、その形づくりに参加できます!

お楽しみください!

リンク

ユーザーマニュアル | Github | Gitcode

MCP に役立つリンク

優れた MCP サーバー集 | TypeScript SDK | MCP ドキュメント

コメント

MCP は初めてですか?

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

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