Support setting parameters in the remote URL
Is your feature request related to a problem? Please describe.
Our product is deployed in different tenants (US cell1, US cell2 , EMEA etc...), each of those having their own streamable-http endpoint to make our remote MCP server accessible based on which tenant the customer is deployed on.
This is how people set the remote MCP server URL when calling it from Python
url = f"https://{os.environ.get('DBT_HOST')}/api/ai/v1/mcp/"
The current spec doesn't seem to support such deployment today.
Describe the solution you'd like
I'd like to be able to set variables in the streamable-http URL in order to mention to the client using the registry that it will require some user input.
Describe alternatives you've considered
Listing all the tenants won't be possible as there can be an unlimited number of them
Additional context
None, but happy to describe more our use case if required!
So, looking further at this test, it looks like templated URLs are possible for packages but not for remotes.
In our case, we'd need the remote config to accept the same templating mechanism
hey, @b-per, thanks for raising this 👍 There wasn't any specific reason why this was not available for remotes other than a lack of use case at that time so decided to keep it safer and disable these for now. I think you present a valid use case though so it should be easy to have this available for both, I can file a PR shortly 👍
Now that I started addressing this I saw some issues. In case of Packages we validate the templated URL variables against the available arguments in the Package and this is not available for Remotes. An option is to either introduce more parameters or not validate the URL at all, but I'll hold it off until I get feedback from @tadasant and @domdomegg (cc: @connor4312)
Fully support this, at Dynatrace we have a similar setup, where providing a "static URL" for the remote would not be feasible from an architectural point of view (multi-region hybrid-cloud setup).
Any update on this feature request?
WIP here: https://github.com/modelcontextprotocol/registry/pull/570 (would appreciate more eyes/reviews from the community so we can get it landed ASAP)