// Generic MCP (Model Context Protocol) bridge — переиспользуемый модуль, // который превращает любой MCP-сервер (stdio subprocess или HTTP endpoint) // в набор [LiteTool]-адаптеров. // // Вынесен из :standalone — MCP не специфичен для standalone'а, это generic // мост между MCP-SDK и litert-kmp. Может переиспользоваться в :agentik-cli // или :agentik-tui когда те снова включатся. // // Зависимости: // - litert.api для LiteTool контракта (в v9 у LiteTool появилось поле name, // NamedTool-обёртка из :agent-toolsets больше не нужна) // - MCP SDK (JVM-only) // - Ktor client (для StreamableHttpClientTransport) // - kotlinx-serialization для парсинга конфига plugins { alias(libs.plugins.kotlin.jvm) alias(libs.plugins.kotlin.serialization) } kotlin { jvmToolchain(21) } dependencies { // :agent-api — отсюда Component / ToolProvider; McpBridgeComponent // реализует Component и подсовывает MCP-тулы через ToolProvider. api(project(":agent-api")) api(libs.litert.api) implementation(libs.mcp.sdk.client) implementation(libs.ktor.client.core) implementation(libs.ktor.client.cio) implementation(libs.ktor.client.content.negotiation) implementation(libs.ktor.serialization.kotlinx.json) implementation(libs.kotlinx.coroutines.core) implementation(libs.kotlinx.serialization.json) implementation(libs.kotlin.logging) }