mcpField
M
MCP-CRUD-Interview-Question

MCP-CRUD-Interview-Question

ローカル
github.com/MichaelJGKoppビジネス・マーケティング080 週間前に更新

MCP-CRUD-Interview-Question について

MCP-CRUD-Interview-Question は、Spring Boot と Spring AI を使って MySQL 内の面接問題を管理するサーバーです。MCP ツールを通じて、カテゴリ別検索や CRUD 操作をエージェントや AI モデルに提供します。

主な機能

  1. 01面接問題の作成・取得・更新・削除
  2. 02カテゴリによる問題の絞り込み
  3. 03MySQL へのデータ永続化
  4. 04Spring AI ツールによる操作の公開

活用シーン

  1. 01指定カテゴリの面接問題の検索
  2. 02面接問題データベースの管理
  3. 03エージェントから問題レコードへの接続

MCP 対応

MCP サーバーは、全件またはカテゴリ別の問題取得、問題の保存・更新、削除を行うツールを公開します。プロジェクトの概要によると、STDIO で通信します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MCP-CRUD-Interview-Question

面接質問のデータベースを管理するために設計された、Spring Boot ベースの Model Control Protocol(MCP)サーバーです。このプロジェクトでは、Spring AI の MCP 機能を活用して、ツールを介した面接質問データへのアクセスを提供します。

Spring Boot Java Spring AI

概要

このプロジェクトは、Spring Boot と Spring AI で構築された MCP(Model Control Protocol)サーバーです。ツールを介した操作で面接質問を管理するサービスを提供し、データベース内の面接質問の取得、作成、更新、削除を簡単に行えます。

機能

  • 面接質問の管理:面接質問の作成、読み取り、更新、削除
  • カテゴリによる絞り込み:指定したカテゴリの質問を取得
  • ツールベースの API:簡単に連携できる Spring AI のツールアノテーション
  • MySQL データベースとの連携:面接質問を永続化

プロジェクト構成

src/
├── main/
│   ├── java/
│   │   └── io/
│   │       └── michaeljgkopp/
│   │           └── github/
│   │               ├── dao/
│   │               │   └── InterviewQuestionRepository.java
│   │               ├── entity/
│   │               │   └── InterviewQuestion.java
│   │               ├── service/
│   │               │   └── InterviewQuestionService.java
│   │               └── SpringMcpServerApplication.java
│   └── resources/
│       ├── application.properties
│       └── create_db.sql

要件

  • Java 24
  • MySQL データベース
  • Maven 3.6 以降、または互換性のあるビルドツール

インストール

リポジトリをクローンする
git clone https://github.com/MichaelJGKopp/MCP-CRUD-Interview-Question.git
cd MCP-CRUD-Interview-Question
データベースのセットアップ
  1. 必要な MySQL データベースを作成します。
CREATE DATABASE IF NOT EXISTS mcp_interview_questions_db;
  1. 適切な権限を持つ MySQL ユーザーを設定します(または、適切なアクセス権を持つ既存の認証情報を使用します)。
設定

アプリケーションは application.properties で設定します。これらの設定はカスタマイズでき、環境変数を使用して上書きすることもできます。

spring.application.name=interview-questions-mcp-server
spring.main.web-application-type=none
spring.ai.mcp.server.name=interview-questions-mcp-server
spring.ai.mcp.server.version=0.0.1

server.port=${SERVER_PORT:3001}

spring.jpa.hibernate.ddl-auto=update

spring.datasource.url=${DB_URL:jdbc:mysql://localhost:3306/mcp_interview_questions_db}
spring.datasource.username=${DB_USERNAME:springstudent}
spring.datasource.password=${DB_PASSWORD:springstudent}
プロジェクトをビルドする
mvn clean package
サーバーを起動する
java -jar target/spring-mcp-server-0.0.1-SNAPSHOT.jar

または、カスタム環境変数を指定して起動します。

SERVER_PORT=3002 DB_USERNAME=custom_user DB_PASSWORD=secure_password java -jar target/spring-mcp-server-0.0.1-SNAPSHOT.jar

利用可能なツール

MCP サーバーは、操作用に次のツールを公開します。

ツール名説明
iqs_get_interview_questions_by_category指定したカテゴリで絞り込んだ面接質問を取得します
iqs_get_interview_questions_allデータベース内のすべての面接質問を取得します
iqs_save_interview_question面接質問を新規作成するか、既存の質問を更新します
iqs_delete_interview_question_by_idID を指定して面接質問を削除します
iqs_delete_all_interview_questionsすべての面接質問を削除します(慎重に使用してください)

面接質問のモデル

各面接質問は、次のフィールドで構成されます。

フィールド説明
id一意の識別子(自動生成)
difficulty質問の難易度(最大 10 文字)
category質問のカテゴリ(例:「Java」、「SQL」、「Spring」)
title質問の簡潔なタイトル
question面接質問の本文(最大 1000 文字)
answer回答または解決策(最大 10000 文字)

AI モデルとの連携

この MCP サーバーは Spring AI と連携するよう設計されており、提供されるツールを使用して AI モデルが面接質問のデータベースを操作できます。設定で spring.main.web-application-type=none が指定されているとおり、このサーバーは従来型のウェブインターフェースを公開しません。

開発

新しいカテゴリの追加

このシステムは、文字列で指定する任意のカテゴリに対応しています。新しいカテゴリの質問を追加するには、質問の作成時にそのカテゴリ名を指定するだけです。

モデルの拡張

InterviewQuestion モデルにフィールドを追加するには、次の手順を実行します。

  1. InterviewQuestion.java エンティティクラスを更新します
  2. 適切なゲッターとセッターを追加します
  3. アプリケーションを再起動します(spring.jpa.hibernate.ddl-auto=update により、データベーススキーマは自動的に更新されます)

ライセンス

このプロジェクトはオープンソースです。ライセンスの詳細については、リポジトリの所有者にお問い合わせください。

お問い合わせ

質問やサポートについては、Michael J.G. Kopp までお問い合わせください。

コメント

MCP は初めてですか?

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

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