Hi, Thank you all for the great feedback and valuable insights on this proposal.
I see that we are inclined to store the MCP code in the Apache/Hive Repository itself, and I stand by it too, as it ensures the MCP remains in sync with new Hive changes and advancements, and it also aligns with release packaging. However, we have mixed valuable insights regarding whether to proceed with a single unified MCP or separate HS2 / HMS MCPs. I acknowledge the fact that HMS is used standalone with other engines and having an MCP server just for HMS can indeed serve a larger audience. To support this use case, I initially envisioned the unified MCP as a config-controlled plug-as-per-use design, allowing it to run only to serve Metadata (from the Iceberg REST Catalog and/or HMS Thrift APIs) if needed. In my opinion, having separate MCPs adds to the fixed infrastructure costs and deployment/maintenance overhead at the user end. However, I also acknowledge that Separate MCPs can be more Fault Tolerant. Considering all these pointers in the thread, we still need to lock in which approach to take. I am not completely biased towards a unified MCP, and given the strong valuable points raised in favor of decoupling, I would appreciate further discussion to help us settle on the best design, as our aim is to develop and deliver a product that provides the most value and usability to the end-user :) Thanks! Best, Tanishq Chugh
