基于MySQL的MCP服务器
基于Java Spring的模型上下文协议(MCP)服务器,通过MCP工具提供无缝的数据库访问和查询功能。此服务器使AI助手和其他MCP客户端能够使用结构化参数和查询与您的数据库进行交互。
概述
该项目使用Java Spring Boot实现了一个MCP服务器,该服务器充当MCP客户端(如Claude Desktop)和数据库之间的桥梁。服务器将数据库操作作为MCP工具公开,允许客户端:
- 通过灵活的参数过滤从数据库表中获取数据
- 使用多个输入参数执行结构化查询
- 通过标准化的MCP接口访问数据库功能
- 使用可配置参数维护安全的数据库连接
MCP(模型上下文协议)使AI助手能够以标准化的方式访问外部工具和资源。该服务器专门专注于数据库操作,使AI助手能够根据动态参数从数据库表中查询和检索数据。
先决条件
- Java 17或更高版本
- Maven 3.6或更高版本
- 支持的数据库系统(MySQL、PostgreSQL等)
- Claude Desktop或其他MCP客户端(用于测试和使用)
安装
1.克隆存储库
git clone https://github.com/mrunal-Shah7/AdaniDb-mcp.git
cd AdaniDB-mcp2.数据库设置
配置数据库连接
在中编辑数据库连接参数 application.properties 文件位于:
src/main/resources/application.properties使用数据库详细信息更新以下属性:
# Database Configuration
spring.datasource.url=jdbc:mysql://localhost:3306/your_database_name
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# JPA Configuration
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect创建数据库表(给定的sql文件仅适用于MySQL innoDB引擎)
使用根文件夹中的SQL文件创建必要的表:
mysql -u your_username -p your_database_name < database_schema.sql3.建设项目
使用Maven构建JAR文件:
mvn clean package编译后的JAR文件将位于 target/ 目录。
4.配置MCP客户端
如果您使用Claude Desktop作为MCP客户端,请编辑您的 claude_desktop_config.json 文件:
配置文件的位置:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
配置:
{
"mcpServers": {
"adaniDB-mcp": {
"command": "java",
"args": [
"-jar",
"/path/to/your/project/target/your-jar-file-name.jar"
],
"env": {}
}
}
}替换 /path/to/your/project/target/your-jar-file-name.jar 使用构建的JAR文件的实际路径。
用法
启动服务器
当Claude Desktop启动并检测到配置时,MCP服务器将自动启动。
可用的MCP工具
配置后,服务器将数据库操作作为MCP工具公开。可用的具体工具取决于您的实现,但通常包括:
- 查询工具:对数据库表执行参数化查询
- 数据检索工具:使用过滤和排序功能获取数据
- 架构工具:访问表结构和元数据信息
- 专为与Claude Desktop和其他MCP客户端集成而设计
