I believed that the MCP server should indeed be a TCP server. The MCP server needs to be unique, and I assumed that multiple Unity client projects could be connected to a single MCP server. If the tools provided by the MCP server are specific to a single project and guarantee better productivity and high-quality results that can be used in production, would it be correct for the MCP server to function as a TCP server? Another option, while the MCP server currently only supports local environments, we could consider a scenario where, after being published remotely, multiple editors could connect to a single server even for large game projects. I believe this is an important reason why MCP should be implemented as a TCP server.
Another issue arises with some MCPClients (particularly Claude Desktop in its current state), where multiple initializations occur if there is a problem in the initialization phase. This makes it difficult to assume that the MCP server is always unique. Specifically, Cursor and Claude Desktop each set up their own MCP servers, which can create challenges when a specific port needs to be used, making it difficult to treat the MCP server as a TCP server.
What are your thoughts on this? Which direction do you think would be better?
I believed that the MCP server should indeed be a TCP server. The MCP server needs to be unique, and I assumed that multiple Unity client projects could be connected to a single MCP server. If the tools provided by the MCP server are specific to a single project and guarantee better productivity and high-quality results that can be used in production, would it be correct for the MCP server to function as a TCP server? Another option, while the MCP server currently only supports local environments, we could consider a scenario where, after being published remotely, multiple editors could connect to a single server even for large game projects. I believe this is an important reason why MCP should be implemented as a TCP server.
Another issue arises with some MCPClients (particularly Claude Desktop in its current state), where multiple initializations occur if there is a problem in the initialization phase. This makes it difficult to assume that the MCP server is always unique. Specifically, Cursor and Claude Desktop each set up their own MCP servers, which can create challenges when a specific port needs to be used, making it difficult to treat the MCP server as a TCP server.
What are your thoughts on this? Which direction do you think would be better?