MCP Server Factory について
MCP Server Factoryは、MCPの概念を学び、ほかのサーバーを構築する開発者向けのJava製MCPサーバーです。概念解説、タスク計画ツール、ドキュメントのリソース、実装ガイドのプロンプトを提供します。
主な機能
- 01MCPの主要概念の解説
- 02コード整理と機能開発の計画
- 03ローカルMCPのデプロイ計画
- 04MCPドキュメントのリソース提供
- 05ツール実装ガイドのプロンプト
活用シーン
- 01ツール、リソース、プロンプトなどの概念学習
- 02コード整理や機能開発の計画
- 03ローカルMCPサーバーのデプロイ手順作成
- 04複数言語でのツール実装ガイドの参照
MCP 対応
このプロジェクト自体がMCPサーバーで、解説・計画ツール、MCPドキュメントのリソース、ツール実装ガイドのプロンプトをクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Server Factory
他の MCP サーバーの理解と構築を支援するために設計された、Java ベースの Model Context Protocol(MCP)サーバーです。
プロジェクトの概要
このプロジェクトは、MCP サーバーを構築するための学習ツールおよびガイドとして機能します。以下の提供に重点を置いています。
-
MCP コンポーネントの理解:
- ツール(アクションを実行する実行可能な関数)
- リソース(情報を提供するデータソース)
- プロンプト(応答を生成する構造化テンプレート)
-
MCP サーバー構築のためのテンプレートとベストプラクティス
機能
-
ツールセクション:
explain_concept- MCP の概念(ツール、リソース、プロンプト、サーバー、クライアント)を詳しく説明します- タスクプランナーツール:
code_cleanup_planner- コードのクリーンアップを目的としたタスク計画を生成しますfeature_implementation_planner- 機能の実装を目的としたタスク計画を生成しますgeneral_task_planner- 一般的な目的のタスク計画を生成しますlocal_mcp_deployment_planner- デプロイに失敗した場合にデプロイを中止する、重要なクリーンアップとテストの手順を含むローカル MCP サーバーのデプロイ計画を生成します
-
リソースセクション:
mcp://factory/documentation/{topic}- MCP のトピック(getting-started、best-practices、troubleshooting)に関するドキュメント
-
プロンプトセクション:
tool_implementation_guide- さまざまな言語で MCP ツールを実装するためのステップごとのガイド
アーキテクチャ
MCP Server Factory は以下を使用して構築されています。
- Spring Framework を使用した Java(Spring Boot ではありません)
- ログ実装に log4j2
- ビルド管理に Maven
以下の設計原則に従っています。
- KISS(シンプルに保つ)
- DRY(同じことを繰り返さない)
- YAGNI(必要になるまで作らない)
- SOLID(単一責任、オープン・クローズド、リスコフの置換、インターフェース分離、依存性逆転)
プロジェクト構成
-
src/main/java/user/jakecarr/- メインのソースコード.../config/- Spring の設定.../main/- main メソッドを持つクラス.../model/- ドメインモデルとインターフェース.../model/impl/- MCP コンポーネントの実装.../service/- ビジネスロジックとサービス
-
docs/api/- API ドキュメントprompts.md- サポートされているプロンプトのドキュメントresources.md- サポートされているリソースのドキュメントtools.md- サポートされているツールのドキュメント
コード品質
このコードベースは高い品質基準に従っています。
- 明確な関心事の分離による、適切に構成されたコード
- 包括的なドキュメント:すべてのクラスとメソッドに Javadoc コメントを記載
- モジュール設計:抽象基底クラスとインターフェースを使用
- 一貫したエラー処理:適切なロギングを実施
- 保守しやすいアーキテクチャ:メソッドとヘルパー関数を抽出
- クリーンコードの実践:以下を含みます
- 説明的な命名規則
- 単一責任の原則
- DRY(同じことを繰り返さない)の原則
- 適切なカプセル化
ビルドと実行
前提条件
- Java 21 以上
- Maven 3.6 以上
- MCP Java SDK 0.8.1(
C:/Users/jayes/vscode/java-sdk-0.8.1/java-sdk-0.8.1.jarに配置)
プロジェクトのビルド
# Clone the repository
git clone https://github.com/yourusername/mcp-server-factory.git
cd mcp-server-factory
# Build the project
mvn clean package
サーバーの実行
# Run the server
java -jar target/mcp-server-factory-1.0-SNAPSHOT-jar-with-dependencies.jar
テストの実行
# Run the tests
mvn test
開発ガイドライン
- コアとなるビジネスロジックは Spring に依存してはなりません
- Spring アノテーションは config パッケージ内でのみ使用してください
- src/main/java 内ではモックを使用しないでください
- 再帰を使用しないでください
- テストにはタイムアウトを設定してください
貢献
- リポジトリをフォークします
- 機能ブランチを作成します
- 変更を加えます
- テストを実行します
- プルリクエストを送信します
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細については LICENSE ファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。