feat: support customized TLS configuration to mcpserver#1215
feat: support customized TLS configuration to mcpserver#1215DahuK wants to merge 1 commit intokagent-dev:mainfrom
Conversation
EItanya
left a comment
There was a problem hiding this comment.
Some initial changes necessary, can review more after these changes are made.
There was a problem hiding this comment.
This PR does not change the certs which the actual agents use to connect to the MCP server. You will need to update this translator to do that as well. You can see how it's done for the ModelConfig.
There was a problem hiding this comment.
Yes, I've already added some client certificate configuration logic for the interaction between ADK and MCP, and built an app image to complete preliminary validation of the MCP server configured with HTTPS in my test cluster.
| if mcpServer.Spec.TransportType == v1alpha1.TransportTypeHTTP && | ||
| mcpServer.Spec.HTTPTransport != nil && | ||
| mcpServer.Spec.HTTPTransport.TLS != nil { | ||
| httpTLS := mcpServer.Spec.HTTPTransport.TLS |
There was a problem hiding this comment.
Where is this field coming from? Did you change kmcp?
There was a problem hiding this comment.
Yes, the changes were previously submitted in #114, please help review them, Thanks a lot!
69a8510 to
ab9e1e3
Compare
Signed-off-by: dahu.kdh <dahu.kdh@alibaba-inc.com>
ab9e1e3 to
ca7b2aa
Compare
|
Ok, I released |
I tried to deploy an MCPServer. During deployment, the kagent controller attempts to list tools from the MCP backend over HTTPS, but it fails with the following error:
At the moment, MCPServer seems to only support calling the backend server over plain HTTP.
Therefore, I think we should allow users to configure a Secret reference in the MCPServer CRD for the certificates used to connect to the MCP server (I have already opened PR #114 in the kmcp project). The controller reconciler could then use the client certificate specified in the CRD when list tools. An example is shown below:
These initial changes using a local go.mod replace of the kmcp package from #114. The final implementation will depend on the finalized definition in kmcp’s mcpserver_types.