Spring文档与迁移服务

一个专注于Spring文档查询和Spring Boot迁移的MCP服务器,提供文档搜索、迁移指南生成、OpenRewrite配置等功能。

  • by fredostar
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 fredostar/springdocs-mcp-server

使用说明

springdocs mcp服务器

MCP(模型上下文协议)服务器,专门用于Spring文档和Spring引导迁移。

允许MCP客户(Claude,其他人工智能工具)访问以下工具和资源:

  • 搜索Spring官方文档。
  • 请参阅Spring Boot迁移指南(2.x→3.x、Java 11→21等)。
  • 获取关键的突破性变化。
  • 为迁移生成OpenRewrite配置。

📋 功能

🔍 春季研究与文档

  • 搜索Spring模块(框架、启动、数据、安全、AI)。
  • 检索文档页面的完整内容。
  • 列出所有可用模块的详细说明。

🚀 Spring Boot和Java迁移指南

  • 生成完整的分步指南。
  • 支持的类型: spring-boot-2-3, java-11-21, hibernate-spring-data-jdbc, jakarta-javax.
  • 恢复按标签筛选的关键中断更改。
  • 每次迁移的官方文件来源。

🔄 迁移春季批处理

  • Spring Batch 4.x→5.x的完整指南。
  • 支持的类型: spring-batch-4-5, spring-batch-5-52, spring-batch-java21.
  • Breaking Changes Spring批处理之前/之后的代码示例。
  • 支持Java 21的虚拟线程。
  • 标签disponibles: batch-5, job-builder, chunk, job-repository, observability, java21.

🔧 OpenRewrite

  • 为迁移生成现成的Maven配置。
  • 类型: spring-boot-3, spring-boot-35, java-21, jakarta.

💡 提示专家

  • 提示迁移 :分析代码,计划迁移,将JPA迁移到JDBC。
  • 提示春天 :迁移Spring Boot,架构六边形,抑制Hibernate。
  • 提示批次 :迁移作业批处理4→5,迁移分析,虚拟线程优化。
  • 所有提示都包括详细说明和代码示例。

🚀 安装

先决条件

  • Python 3.13或更高版本
  • uv (超快Python软件包管理器)- 安装

安装步骤

  1. 克隆存储库或导航到项目目录

    cd $PROJECT_DIR/springdocs/spring-mcp-server
    
  2. 使用UV安装依赖项

    uv sync
    

    这将根据需要自动安装Python 3.13,并解决所有依赖关系。

🎯 在本地启动服务器

通过紫外线(推荐)

cd $PROJECT_DIR/springdocs/spring-mcp-server
uv run spring-mcp-server

服务器启动并等待通过stdio的MCP连接。

直接通过Python

cd $PROJECT_DIR/springdocs/spring-mcp-server
python -m spring_mcp_server.server

🧪 使用MCP检查器进行测试

MCP检查员 是MCP服务器的官方调试工具。

Lancer MCP检查员所在地

  1. 安装人员MCP检查员 (如果尚未安装)

    npm install -g @modelcontextprotocol/inspector
    
  2. 使用后台服务器启动MCP Inspector

    # Terminal 1 : Démarrer le serveur MCP
    cd $PROJECT_DIR/springdocs/spring-mcp-server
    uv run spring-mcp-server
    
    # Terminal 2 : Lancer MCP Inspector
    mcp-inspector
    
    ou 
    npx @modelcontextprotocol/inspector uv run spring-mcp-server
    
  3. 在MCP Inspector中配置连接

    • web界面将自动打开(通常在 http://localhost:5173).
    • 选择“添加服务器”或配置连接:
      • 命令 : uv run spring-mcp-server
      • 工作目录 : $PROJECT_DIR/springdocs/spring-mcp-server
  4. 测试可用工具

    在MCP Inspector界面中,您将看到所有可用的工具。以下是一些测试示例:

    春季文档

    • rechercher_documentation :在spring boot中搜索“spring security”。
    • lire_page_documentation :检索官方页面的内容。
    • lister_modules_spring :查看所有可用模块。

    迁移Spring Boot和Java

    • breaking_changes_migration :获取迁移到Spring Boot 3的中断更改(标签: spring-boot-3,jakarta).
    • guide_migration :生成完整的指南 spring-boot-2-3.
    • config_openrewrite :为Maven生成OpenRewrite配置。
    • lister_sources_migration :查看所有文档源。

    迁移春季批处理

    • breaking_changes_batch :获取第5批中断更改(标签: batch-5,job-builder).
    • guide_migration_batch :生成指南 spring-batch-4-5.
    • lister_sources_batch :请参阅可用的批处理文档源。

    提示(用于Claude或其他AI)

    • prompt_migration_spring_boot :帮助Spring Boot迁移。
    • prompt_plan_migration :计划完全迁移。
    • prompt_migrer_job_batch :将作业批处理4迁移到5。

📂 项目结构

spring-mcp-server/
├── main.py                          # Point d'entrée principal
├── pyproject.toml                   # Configuration du projet Python
├── README.md                        # Fichier README
├── uv.lock                          # Verrou des dépendances uv
└── src/spring_mcp_server/
    ├── __init__.py
    ├── server.py                    # Serveur MCP FastMCP (cœur)
    ├── tools/                       # Outils MCP exposés
    │   ├── fetch_page.py           # Récupération de contenu
    │   ├── search.py               # Recherche dans la documentation
    │   ├── migration_guide.py       # Guides de migration Spring Boot/Java
    │   ├── batch_migration_guide.py # Guides de migration Spring Batch
    │   └── openrewrite.py          # Configuration OpenRewrite
    ├── resources/                   # Données statiques
    │   ├── spring_registry.py       # Registre des modules Spring
    │   ├── migration_registry.py    # Sources de migration Spring Boot/Java
    │   ├── batch_registry.py        # Sources de migration Spring Batch
    │   ├── breaking_changes.py      # Breaking changes Spring Boot/Java
    │   └── batch_breaking_changes.py# Breaking changes Spring Batch
    └── prompts/                     # Prompts pré-configurés
        ├── spring_prompts.py        # Prompts documentation Spring
        ├── migration_prompts.py     # Prompts migration Spring Boot/Java
        └── batch_prompts.py         # Prompts migration Spring Batch

🔧 依赖性

  • fastmcp :MCP现代可组合框架。
  • httpx :用于检索页面的异步HTTP客户端。
  • 美容组4 :解析HTML以提取内容。

📝 发展说明

  • 所有答案都是法语。
  • 服务器使用stdio与MCP客户端通信。
  • 具有清晰分隔的可组合架构:工具、资源、提示。
  • 资源在启动时加载以优化性能。