MCP CRUD Interview Question

MCP CRUD Interview Question

🚀 MCP-CRUD-Interview-Question 问题解答

本项目是基于 Spring Boot 的模型控制协议 (MCP) 服务器,可用于管理面试问题数据库。借助 Spring AI 的 MCP 功能,以工具形式实现对面试问题数据的便捷访问。

Spring Boot Java Spring AI

🚀 快速开始

该项目是一个基于 Spring Boot 和 Spring AI 的 MCP 服务器,用于管理面试问题。它通过工具形式提供对面试问题数据的访问,能方便地实现对数据库中面试问题的创建、读取、更新和删除操作。

✨ 主要特性

  • 面试题管理:支持创建、读取、更新和删除面试问题
  • 类别过滤:可以根据特定类别检索面试问题
  • 工具化 API:使用 Spring AI 的工具注解实现轻松集成
  • MySQL 数据库整合:用于持久化存储面试问题

📦 安装指南

克隆仓库

git clone https://github.com/MichaelJGKopp/MCP-CRUD-Interview-Question.git
cd MCP-CRUD-Interview-Question

数据库配置

  1. 创建所需的 MySQL 数据库:
CREATE DATABASE IF NOT EXISTS interview_questions;
  1. 使用以下命令访问数据库并创建新用户(如果尚未创建):
mysql -u root -p
MariaDB [(none)]> CREATE USER 'interview_user'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON interview_questions.* TO 'interview_user'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

项目构建与运行

使用 Maven 构建项目并运行:

mvn spring-boot:run

📚 详细文档

项目结构

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+ 或兼容的构建工具

工具列表

以下是可用工具的完整列表:

工具名称 功能描述
iqs_get_interview_questions 获取所有面试问题
iqs_get_interview_questions_by_category 按类别获取面试问题
iqs_save_interview_question 保存新的面试问题
iqs_update_interview_question 更新现有面试问题
iqs_delete_interview_question 删除指定的面试问题

模型说明

面试题模型

package io.michaeljgkopp.github.entity;

import jakarta.persistence.Entity;
import jakarta.persistence.GeneratedValue;
import jakarta.persistence.GenerationType;
import jakarta.persistence.Id;
import lombok.Getter;
import lombok.Setter;

@Entity
@Getter
@Setter
public class InterviewQuestion {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;

private String question;
private String category;
private String difficulty;
private String answer;
}

持久层接口

package io.michaeljgkopp.github.dao;

import io.michaeljgkopp.github.entity.InterviewQuestion;
import org.springframework.data.jpa.repository.JpaRepository;

public interface InterviewQuestionRepository extends JpaRepository {
InterviewQuestion findByCategory(String category);
}

开发说明

添加新类别

系统支持任意字符串类型的类别。要添加新的类别,只需在创建问题时使用该类别名称即可。

扩展模型

要扩展 InterviewQuestion 模型以包含更多字段:

  1. 更新 InterviewQuestion.java 实体类
  2. 添加相应的 getter 和 setter 方法
  3. 重启应用程序(由于配置为 spring.jpa.hibernate.ddl-auto=update,数据库表结构会自动更新)

📄 许可证

该项目是开源的。有关详细许可信息,请联系仓库所有者。

👨‍💻 联系方式

如有问题或需要支持,请联系 Michael J.G. Kopp

  • 0 关注
  • 0 收藏,36 浏览
  • system 提出于 2025-10-02 01:27

相似服务问题

相关AI产品