Model Context Protocol от Spring AI в Java SDK – новый стандарт для интеграции ИИ в экосистеме Java. Java.. Java. Kotlin.. Java. Kotlin. llm.. Java. Kotlin. llm. mcp.. Java. Kotlin. llm. mcp. protocol.. Java. Kotlin. llm. mcp. protocol. sdk.. Java. Kotlin. llm. mcp. protocol. sdk. springai.. Java. Kotlin. llm. mcp. protocol. sdk. springai. Блог компании Spring АйО.. Java. Kotlin. llm. mcp. protocol. sdk. springai. Блог компании Spring АйО. Программирование.

Новый перевод от команды Spring АйО расскажет вам, что такое Model Context Protocol (MCP) и как его внедрение в экосистему Java упрощает жизнь разработчикам систем, в работе которых используется искусственный интеллект и LLM, а также передача большого количества данных между различными компонентами.


Что такое MCP

Model Context Protocol (MCP), открытый протокол, разработанный Anthropic, меняет представления о том, как приложения на ИИ подключаются друг к другу и делятся контекстом. Он заслужил активную поддержку в среде написания ИИ-приложений, работая как стандартный интерфейс для больших языковых моделей (Large Language Models, LLM), при помощи которого они взаимодействуют с источниками данных, инструментами и ИИ агентами. Занимаетесь ли вы построением автономных систем, которым нужен доступ к базам данных, оркестрацией сложных ИИ сценариев или созданием систем, внутри которых взаимодействуют многочисленные агенты, MCP предложит вам базовый слой, который сделает эти интеграции идеально гладкими.

MCP выгодно отличается от других решений своим фокусом на сочетаемости (composability) и стыкуемости (interoperability). MCP не просто подключается к источникам данных, он позволяет разработчикам создавать интерактивные системы на ИИ с богатым функционалом, в которых агенты могут делиться контекстом, получать доступ к инструментам и работать вместе через стабильный интерфейс. Другими словами, вы можете быстро подключиться к растущей экосистеме предварительно выстроенных интеграций, в то же время сохраняя гибкость, дающую возможность переключаться между разными LLM провайдерами. Поэтому он является идеальным фундаментом для построения ИИ-приложений со сложной, разнообразной функциональностью.

Представляем MCP Java SDK

То, что начиналось как экспериментальный проект в прошедшем ноябре, превратилось в многообещающую коллаборацию с командой Spring AI и Anthropic. Мы рады сообщить вам, что этот экспериментальный проект официально перемещен в MCP Java SDK.

Этот SDK является последней языковой привязкой протокола наряду с SDK для Python, TypeScript и Kotlin, на modelcontextprotocol.io. Java имеет долгую историю как Enterprise язык, и MCP Java SDK упрощает процесс разработки ИИ-приложений в соответствии с новейшими стандартами для организаций.

MCP Java SDK предлагает многофункциональный фундамент для интеграции ИИ моделей с внешними инструментами и источниками данных. Ключевые возможности SDK включают:

Реализации для клиента и сервера

  • Поддерживает как синхронную, так и асинхронную передачу данных по MCP.

  • Позволяет выбирать совместимую версию протокола для хорошей interoperability.

Управление инструментами и ресурсами

  • Находить, регистрировать и работать с инструментами динамически.

  • В реальном времени получать списочные нотификации об изменениях для инструментов и ресурсов 

  • Управлять ресурсами с использованием URI-шаблонов для структурированного доступа и подписок. 

Работу с промптами и поддержку AI Sampling

  • Извлекать и управлять промптами, чтобы кастомизировать поведение ИИ модели. 

  • Поддерживает стратегии sampling, чтобы совершенствовать взаимодействие с ИИ.

Многочисленные реализации передачи данных

  • Передача данных на базе STDIO для коммуникаций с прямой обработкой.

  • Передача данных по SSE протоколу на клиенте на базе Java HttpClient для HTTP стриминга.

  • Передача данных на сервере на базе сервлета для стриминга по HTTP в традиционном серверном окружении:

    • Передача данных по SSE протоколу на базе Spring WebFlux для реактивных приложений.

    • Передача данных по SSE протоколу на базе Spring WebMVC для приложений на сервлетах.

Чтобы получить больше информации о том, как начать работу с MCP, обращайтесь к документации, а также посетите репозиторий GitHub, где вы сможете открывать тикеты и участвовать в дискуссиях.

Spring AI и MCP

Проект Spring AI расширяет MCP Java SDK путем добавления возможностей для улучшения продуктивности разработчиков при интеграции со Spring Boot приложениями. Используя стартеры Spring Boot, разработчики смогут быстро сконфигурировать MCP клиент и сервер, используя инжекцию зависимостей Spring и управление конфигурациями, что облегчает интеграцию ИИ сценариев в приложения.

Стартеры для клиента

  • spring-ai-mcp-client-spring-boot-starter – встроенный стартер для клиента, поддерживающий передачу данных на базе STDIO и по SSE протоколу через HTTP.

  • spring-ai-mcp-client-webflux-spring-boot-starter – передача данных на основе SSE протокола, реализованная на основе WebFlux для реактивных приложений.

Стартеры для сервера

  • spring-ai-mcp-server-spring-boot-starter – встроенный стартер для сервера, поддерживающий передачу данных на базе STDIO.

  • spring-ai-mcp-server-webmvc-spring-boot-starter – передача данных на основе SSE протокола, реализованная на Spring MVC для приложений на сервлетах.

  • spring-ai-mcp-server-webflux-spring-boot-starter – передача данных на основе SSE протокола, реализованная на WebFlux для реактивных приложений.

Ниже приведен пример того, как декларативно сконфигурировать клиент-приложение, использующее передачу данных по STDIO. Задайте следующую конфигурацию в application.yml:

spring:
  ai:
    mcp:
      client:
        stdio:
          servers-configuration: classpath:mcp-servers.json

JSON файл, на который ссылается этот код, задает сервер, к которому надо будет подключиться в формате Claude Desktop.

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/Users/username/Desktop",
        "/Users/username/Downloads"
      ]
    }
  }
}

Когда клиентское приложение стартует, оно запускает MCP сервер, устанавливает каналы коммуникации по STDIO и управляет жизненным циклом сервера. 

Spring AI M6 также вводит аннотацию @Tool, которая упрощает создание MCP. Чтобы получить больше информации об этой аннотации, обратитесь к справочной документации от Spring AI по MCP.


Model Context Protocol от Spring AI в Java SDK – новый стандарт для интеграции ИИ в экосистеме Java - 1

Регистрируйтесь на главную конференцию про Spring на русском языке от сообщества Spring АйО! В мероприятии примут участие не только наши эксперты, но и приглашенные лидеры индустрии.

Автор: spring_aio

Источник

Rambler's Top100