模型上下文协议服务器

MCP服务器是一个连接AI工具和Spring Boot后端的中介层,提供多种工具和服务以实现高效的数据处理和通信。

  • by constant94-dev
  • Java
  • 本地部署
  • 更新于
在 GitHub 查看 constant94-dev/mcp-public-data

使用说明

公共数据MCP服务器

模型上下文协议(MCP)服务器,用于连接AI工具和Spring Boot后端的中间层。

🚀 快速入门

执行方法

# 기본 실행 (프로덕션 모드)
./run-mcp-server.sh

# 테스트 모드 실행
./run-mcp-server.sh test

可用工具

  • hello_world:返回用户问候信息
  • spring_boot_health_check:Spring Boot服务器健康检查
  • get_user_info:查看用户信息
  • get_session_info:查询会话信息
  • get_public_data_info:查询公共数据信息
  • create_log:创建日志记录

📁 项目结构

public-data-mcp-server/
├── src/main/java/com/datapublic/mcp/
│   ├── PublicDataMCPServer.java     # 메인 서버 클래스
│   ├── client/
│   │   └── SpringBootApiClient.java # Spring Boot API 클라이언트
│   ├── controller/
│   │   └── MCPServerController.java # MCP 컨트롤러
│   └── service/
│       ├── HelloService.java        # Hello World 서비스
│       └── SpringBootIntegrationService.java # Spring Boot 연동 서비스
├── logs/                           # 로그 파일
├── run-mcp-server.sh               # 통합 실행 스크립트
├── build.gradle                    # 빌드 설정
└── README.md                       # 이 파일

🔧 首选参数

环境变量

工作空间根目录的 .env/.secrets.env 可以在文件中设置环境变量:

# Spring Boot 백엔드 URL
SPRING_BOOT_URL=http://localhost:8080

# 타임아웃 설정 (초)
SPRING_BOOT_TIMEOUT=10

日志管理

  • 日志文件 logs/ 存储在文件夹中
  • 文件名格式: mcp-server-YYYYMMDD_HHMMSS.log
  • 不创建PID文件

🛠️ 开发

构建

./gradlew clean build

测试

./gradlew test

运行

# 개발 모드
./gradlew run

# 프로덕션 모드
./run-mcp-server.sh

🔗 相关项目

📝 更新历史记录

2025-08-24

  • ✅ 脚本集成:将三个脚本合并为一个脚本
  • ✅ 删除PID文件:删除PID文件创建逻辑
  • ✅ 改进日志管理:将日志文件保存到logs文件夹
  • ✅ 统一项目名称:根据项目名称修改JAR文件名

2025-08-17

  • ✅ 基于MCP Java SDK的服务器实现:PublicDataMCPServer.java
  • ✅ Hello World工具实现:返回用户问候信息
  • ✅ STDIO传输协议:实现标准I/O通信
  • ✅ JSON-RPC 2.0协议:支持MCP标准协议
  • ✅ Docker容器支持:基于容器的执行环境
  • ✅ Spring Boot API客户端实现:基于WebClient的REST API客户端
  • ✅ 实现Spring Boot集成MCP工具:完成6个工具
  • ✅ 扩展环境变量设置:工作空间根目录 .env 利用目录
  • ✅ 错误处理和记录:详细的错误处理和记录系统

上次更新: 2025-08-24
作者:伊森
状态:完成脚本集成和日志管理改进