From c6a914224c27be8e7a8e831861e3dcd0db16c233 Mon Sep 17 00:00:00 2001 From: Daniil Ovchinnikov Date: Thu, 11 Sep 2025 13:16:20 +0200 Subject: [PATCH] TBX-16111 connect to loopback remote MCP servers through stdio proxy of "MCP Server" plugin GitOrigin-RevId: 01d1973452d3f30569211541f07bf48ecb85a8ee --- plugins/mcp-server/mcpserver.stdio/src/McpStdioRunner.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/mcp-server/mcpserver.stdio/src/McpStdioRunner.kt b/plugins/mcp-server/mcpserver.stdio/src/McpStdioRunner.kt index e8f802b1de98..3b64633e85bc 100644 --- a/plugins/mcp-server/mcpserver.stdio/src/McpStdioRunner.kt +++ b/plugins/mcp-server/mcpserver.stdio/src/McpStdioRunner.kt @@ -12,6 +12,7 @@ import kotlinx.io.asSource import kotlinx.io.buffered private const val IJ_MCP_PREFIX = "IJ_MCP_" +const val IJ_MCP_HEADER_PREFIX: String = "${IJ_MCP_PREFIX}HEADER_" val IJ_MCP_SERVER_PORT: String = ::IJ_MCP_SERVER_PORT.name val IJ_MCP_SERVER_PROJECT_PATH: String = ::IJ_MCP_SERVER_PROJECT_PATH.name @@ -33,7 +34,7 @@ suspend fun main() { val envsToPass = System.getenv().filter { (key, _) -> key.startsWith(IJ_MCP_PREFIX) } val sseClientTransport = SseClientTransport(httpClient, "http://localhost:$port/sse") { - envsToPass.forEach { (key, value) -> header(key, value)} + envsToPass.forEach { (key, value) -> header(key.removePrefix(IJ_MCP_HEADER_PREFIX), value)} } stdioServerTransport.onMessage {