<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>io.github.a-simeshin</groupId>
        <artifactId>spring-ai-mcp-inspector-parent</artifactId>
        <version>2.0.0</version>
        <relativePath>../pom.xml</relativePath>
    </parent>

    <artifactId>spring-ai-mcp-inspector-starter-webmvc</artifactId>
    <packaging>jar</packaging>
    <name>spring-ai-mcp-inspector-starter-webmvc</name>
    <description>Servlet-stack Spring Boot starter that exposes the Spring AI MCP Inspector
        UI and REST API. Pulls in core + ui modules and Spring MVC.</description>

    <dependencies>
        <dependency>
            <groupId>io.github.a-simeshin</groupId>
            <artifactId>spring-ai-mcp-inspector-core</artifactId>
            <version>${project.version}</version>
        </dependency>
        <dependency>
            <groupId>io.github.a-simeshin</groupId>
            <artifactId>spring-ai-mcp-inspector-ui</artifactId>
            <version>${project.version}</version>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-autoconfigure</artifactId>
        </dependency>

        <dependency>
            <groupId>io.modelcontextprotocol.sdk</groupId>
            <artifactId>mcp-core</artifactId>
        </dependency>
        <dependency>
            <groupId>io.modelcontextprotocol.sdk</groupId>
            <artifactId>mcp-json-jackson3</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-configuration-processor</artifactId>
            <optional>true</optional>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- Boot 4 moved TestRestTemplate out of spring-boot-test into the dedicated
             spring-boot-resttestclient module (new package
             org.springframework.boot.resttestclient). Needed by the WebMvc*IT
             integration tests that drive the inspector over HTTP. -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-resttestclient</artifactId>
            <scope>test</scope>
        </dependency>
        <!-- TestRestTemplate's auto-configuration builds on RestTemplateBuilder, which
             Boot 4 split into the spring-boot-restclient module. -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-restclient</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.ai</groupId>
            <artifactId>spring-ai-starter-mcp-server-webmvc</artifactId>
            <scope>test</scope>
        </dependency>

        <!-- Allure JUnit 5 listener (version from allure-bom) + aspectjweaver
             for Allure @Step weaving (version managed by the parent property). -->
        <dependency>
            <groupId>io.qameta.allure</groupId>
            <artifactId>allure-junit5</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>${aspectj.version}</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
</project>
