# database-mcp-server **Repository Path**: qiqi_chen/database-mcp-server ## Basic Information - **Project Name**: database-mcp-server - **Description**: 访问数据库的mcp - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-09 - **Last Updated**: 2026-03-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Base MCP Server 基于 Spring Boot 的 MCP (Model Context Protocol) 服务器基础框架,用于快速构建面向 AI 的 Java 工具服务。 ## 项目简介 本项目提供了一个标准化的 MCP Server 开发框架,通过 Spring AI 自动将 Java 服务方法暴露为 AI 可调用的工具,实现 Java 应用与 AI 系统的无缝集成。 ## 核心特性 - **自动工具注册** - 实现 `McpService` 接口的服务自动注册为 AI 工具 - **注解驱动** - 使用 `@Tool` 注解即可暴露方法为 AI 工具 - **模块化架构** - 清晰的分层设计,易于扩展新的服务模块 - **开箱即用** - 内置数据库、日志、配置等企业级功能 - **多环境支持** - 支持 dev、prod 等多环境配置 ## 技术栈 | 技术 | 版本 | 说明 | |------|------|------| | Spring Boot | 3.4.3 | 应用框架 | | Spring AI | - | MCP 集成 | | MyBatis | - | ORM 框架 | | MySQL | 8.0+ | 数据库 | | Druid | - | 连接池 | | Hutool | - | 工具类库 | | FastJSON2 | - | JSON 处理 | ## 快速开始 ### 环境要求 - JDK 17+ - Maven 3.6+ ### 运行项目 ```bash mvn spring-boot:run ``` ### 开发工具服务 创建一个新的服务类,实现 `McpService` 接口: ```java package cn.packagejson.mcp.core.example; import cn.packagejson.mcp.core.base.McpService; import org.springframework.ai.tool.annotation.Tool; import org.springframework.stereotype.Service; @Service public class WeatherService implements McpService { @Tool(description = "通过城市名字获取温度[伪]") public String getWeather(String cityName) { return cityName + "今天的温度是" + cityName.length() * 6; } } ``` 服务将自动注册到 MCP Server,AI 可以直接调用。 ## 项目结构 ``` database-mcp-server/ ├── src/main/java/cn/packagejson/mcp/ │ ├── McpApplication.java # 启动类 │ ├── config/ │ │ └── ToolCallbackProviderRegister.java # 工具自动注册 │ └── core/ │ ├── base/ │ │ └── McpService.java # 服务基类接口 │ └── weather/ │ └── WeatherService.java # 示例服务 └── src/main/resources/ ├── application.properties ├── application-dev.yml └── application-prod.yml ``` ## 扩展指南 ### 添加新的工具服务 1. 在 `core` 包下创建新的模块包 2. 创建服务类并实现 `McpService` 接口 3. 使用 `@Service` 和 `@Description` 注解 4. 在方法上使用 `@Tool` 注解定义工具 ### 添加数据库访问 1. 在 `resources/mapper` 下创建 MyBatis XML 映射文件 2. 创建 Mapper 接口 3. 在 Service 中注入使用 ## 许可证 [Apache License 2.0](LICENSE)