modelcontextprotocol/java-sdk
The official Java SDK for Model Context Protocol servers and clients. Maintained in collaboration with Spring AI
해결하는 문제
Java 애플리케이션이 Model Context Protocol (MCP)와 통합되는 표준화된 방법을 제공하여, 일관된 인터페이스를 통해 AI 모델 및 도구와 상호작용할 수 있게 합니다. 이로 인해 개발자는 연결하고자 하는 각각의 AI 도구나 모델에 대해 맞춤형 통합 로직을 매번 구현할 필요가 없어집니다.
작동 방식
SDK는 모듈식 아키텍처를 사용하여 MCP 사양을 구현하며, 동기 및 비동기 통신을 모두 지원합니다. 프로토콜의 양방향 비차단 특성을 처리하기 위해 Reactive Streams(Project Reactor를 통해)를 사용하면서도, 간단한 사용 사례를 위해 동기식 래퍼를 제공합니다. 데이터 처리에는 Jackson을 사용하여 JSON 직렬화를 수행하고, 기본 클라이언트 전송에는 JDK HttpClient를 사용하며, 서버 측 전송에는 Jakarta Servlet을 활용합니다.
대상 사용자
AI 기능을 갖춘 애플리케이션을 개발하는 Java 개발자로서, AI 서비스를 소비하기 위한 MCP 클라이언트 또는 자신의 도구와 데이터를 AI 모델에 노출하기 위한 MCP 서버를 구현해야 하는 사용자들입니다.
주요 특징
- 유연한 프로그래밍 모델: 고성능 비동기 요구 사항에는 반응형 스트리밍을, 단순한 사용 사례에는 동기 API를 지원합니다.
- 모듈식 설계: 핵심 로직과 JSON 바인딩, 전송 구현을 분리하여 개발자가 필요한 구성 요소만 포함할 수 있습니다.
- Spring AI 통합: Spring Boot 스타터, 어노테이션 기반 메서드 처리, OAuth 2.0/API 키 보안 기능을 포함한 SDK 확장 기능 제공.
- 전송 방식 독립: STDIO, JDK HttpClient, Servlet에 기본 지원을 제공하지만, Netty나 Vert.x와 같은 다른 구현에도 개방되어 있습니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트