<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>

	<groupId>com.top-logic</groupId>
	<artifactId>tl-mcp-server</artifactId>
	<version>0.1.0</version>
	<packaging>maven-plugin</packaging>

	<name>TopLogic MCP Server</name>
	<description>Maven plugin that serves MCP tools exposing TopLogic class/type indexes of a workspace module's compile classpath.</description>

	<properties>
		<maven.compiler.source>17</maven.compiler.source>
		<maven.compiler.target>17</maven.compiler.target>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

		<maven.version>3.9.6</maven.version>
		<maven.plugin.tools.version>3.15.1</maven.plugin.tools.version>
		<mcp.sdk.version>1.1.1</mcp.sdk.version>
		<jetty.version>12.0.14</jetty.version>
		<asm.version>9.9.1</asm.version>
	</properties>

	<prerequisites>
		<maven>3.6.0</maven>
	</prerequisites>

	<scm>
		<connection>scm:git:http://tl.bos.local:3000/TopLogic/tl-mcp-server.git</connection>
		<developerConnection>scm:git:http://tl.bos.local:3000/TopLogic/tl-mcp-server.git</developerConnection>
		<url>http://tl.bos.local:3000/TopLogic/tl-mcp-server</url>
		<tag>v0.1.0</tag>
	</scm>

	<dependencies>
		<dependency>
			<groupId>org.apache.maven</groupId>
			<artifactId>maven-plugin-api</artifactId>
			<version>${maven.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.maven</groupId>
			<artifactId>maven-core</artifactId>
			<version>${maven.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.maven.plugin-tools</groupId>
			<artifactId>maven-plugin-annotations</artifactId>
			<version>${maven.plugin.tools.version}</version>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>org.ow2.asm</groupId>
			<artifactId>asm</artifactId>
			<version>${asm.version}</version>
		</dependency>

		<dependency>
			<groupId>io.modelcontextprotocol.sdk</groupId>
			<artifactId>mcp</artifactId>
			<version>${mcp.sdk.version}</version>
		</dependency>

		<dependency>
			<groupId>org.eclipse.jetty</groupId>
			<artifactId>jetty-server</artifactId>
			<version>${jetty.version}</version>
		</dependency>
		<dependency>
			<groupId>org.eclipse.jetty.ee10</groupId>
			<artifactId>jetty-ee10-servlet</artifactId>
			<version>${jetty.version}</version>
		</dependency>

		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter</artifactId>
			<version>5.11.3</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<distributionManagement>
		<repository>
			<id>tl-releases</id>
			<url>https://dev.top-logic.com/nexus/repository/toplogic/</url>
			<releases>
				<enabled>true</enabled>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
		<snapshotRepository>
			<id>tl-snapshots</id>
			<url>https://dev.top-logic.com/nexus/repository/toplogic-snapshots/</url>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
			</snapshots>
		</snapshotRepository>
	</distributionManagement>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>3.5.2</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-release-plugin</artifactId>
				<version>3.3.1</version>
				<configuration>
					<tagNameFormat>v@{project.version}</tagNameFormat>
					<preparationGoals>clean install</preparationGoals>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-plugin-plugin</artifactId>
				<version>${maven.plugin.tools.version}</version>
				<configuration>
					<goalPrefix>tl-mcp</goalPrefix>
					<!--
						Disable the javadoc-based extractor (qdox) because it chokes on
						modern Java syntax (pattern-matching instanceof, text blocks).
						The annotation-based extractor alone is sufficient for @Mojo.
					-->
					<extractors>
						<extractor>java-annotations</extractor>
					</extractors>
				</configuration>
			</plugin>
		</plugins>
	</build>

</project>
