Maven 종속성 MCP 서버
Maven 종속성 버전 확인 도구를 제공하는 MCP(Model Context Protocol) 서버입니다. 이 서버를 통해 LLM은 Maven 종속성을 확인하고 Maven 중앙 저장소에서 최신 버전을 가져올 수 있습니다.
설치
npm을 사용하여 이 MCP 서버를 전역적으로 설치할 수 있습니다.
지엑스피1
또는 npx를 사용하여 직접 실행하세요.
Smithery를 통해 설치
Smithery를 통해 Claude Desktop용 Maven Dependencies Server를 자동으로 설치하려면:
npx -y @smithery/cli install maven-deps-server --client claude
Related MCP server: cve-search_mcp
특징
Maven 종속성의 최신 버전을 쿼리합니다.
Maven 종속성이 있는지 확인하세요
종속성의 특정 버전이 있는지 확인하세요
패키징 및 분류기를 포함한 전체 Maven 좌표 지원
Maven Central Repository 데이터에 대한 실시간 액세스
다양한 빌드 도구 형식(Maven, Gradle, SBT, Mill)과 호환 가능
개발을 위해:
이 저장소를 복제하세요
종속성 설치: npm install
서버 빌드: npm run build
구성
MCP 설정 구성 파일에 서버를 추가합니다.
{
"mcpServers": {
"maven-deps-server": {
"command": "npx",
"args": ["mcp-maven-deps"]
}
}
}
글로벌하게 설치한 경우 다음을 사용할 수도 있습니다.
{
"mcpServers": {
"maven-deps-server": {
"command": "mcp-maven-deps"
}
}
}
운송 옵션
서버는 두 가지 전송 모드를 지원합니다.
stdio (기본값) - 표준 입출력 통신
SSE (Server-Sent Events) - 원격 액세스가 가능한 HTTP 기반 통신
SSE 전송을 사용하려면 호스트와 포트를 모두 지정할 수 있습니다.
# Local access only (default host: localhost)
npx mcp-maven-deps --port=3000
# Remote access
npx mcp-maven-deps --host=0.0.0.0 --port=3000
MCP 설정에서 SSE 전송을 사용하는 경우:
{
"mcpServers": {
"maven-deps-server": {
"command": "npx",
"args": ["mcp-maven-deps", "--port=3000"]
}
}
}
원격으로 액세스하려면 클라이언트 구성에서 서버의 IP 또는 호스트 이름을 사용하세요.
{
"mcpServers": {
"maven-deps-server": {
"command": "npx",
"args": ["mcp-maven-deps", "--host=your-server-ip", "--port=3000"]
}
}
}
사용 가능한 도구
메이븐 최신 버전 가져오기
Maven 종속성의 최신 버전을 검색합니다.
입력 스키마:
{
"type": "object",
"properties": {
"dependency": {
"type": "string",
"description": "Maven coordinate in format \"groupId:artifactId[:version][:packaging][:classifier]\" (e.g. \"org.springframework:spring-core\" or \"org.springframework:spring-core:5.3.20:jar\")"
}
},
"required": ["dependency"]
}
사용 예:
const result = await mcpClient.callTool("maven-deps-server", "get_maven_latest_version", {
dependency: "org.springframework:spring-core"
});
// Returns: "6.2.2"
check_maven_version_exists
Maven 종속성의 특정 버전이 존재하는지 확인합니다. 버전은 종속성 문자열이나 별도의 매개변수로 제공될 수 있습니다.
입력 스키마:
{
"type": "object",
"properties": {
"dependency": {
"type": "string",
"description": "Maven coordinate in format \"groupId:artifactId[:version][:packaging][:classifier]\" (e.g. \"org.springframework:spring-core\" or \"org.springframework:spring-core:5.3.20:jar\")"
},
"version": {
"type": "string",
"description": "Version to check if not included in dependency string"
}
},
"required": ["dependency"]
}
사용 예:
// Using version in dependency string
const result1 = await mcpClient.callTool("maven-deps-server", "check_maven_version_exists", {
dependency: "org.springframework:spring-core:5.3.20"
});
// Using separate version parameter
const result2 = await mcpClient.callTool("maven-deps-server", "check_maven_version_exists", {
dependency: "org.springframework:spring-core",
version: "5.3.20"
});
구현 세부 사항
Maven Central의 REST API를 사용하여 종속성 정보를 가져옵니다.
전체 Maven 좌표(groupId:artifactId:version:packaging:classifier)를 지원합니다.
최신 버전이 반환되도록 타임스탬프별로 결과를 정렬합니다.
잘못된 종속성 및 API 문제에 대한 오류 처리가 포함됩니다.
유효한 종속성에 대한 깨끗하고 구문 분석 가능한 버전 문자열을 반환합니다.
버전 존재 여부 확인에 대한 부울 응답을 제공합니다.
오류 처리
서버는 다양한 오류 사례를 처리합니다.
잘못된 종속성 형식
잘못된 버전 형식입니다
존재하지 않는 종속성
API 연결 문제
잘못된 응답
버전 정보가 없습니다
개발
서버를 수정하거나 확장하려면:
src/index.ts 를 변경하세요
npm run build 사용하여 다시 빌드합니다.
변경 사항을 적용하려면 MCP 서버를 다시 시작하세요.
특허
MIT