Free tools Windows power users keep installed
One-click scans. No signup required.
On VMware Tanzu Platform 10.3, the documented service-publisher pattern runs an MCP server as an application, publishes it as a Cloud Foundry Marketplace service, and keeps it on the internal apps.internal domain. A Spring Cloud Gateway provides the consumer-facing route and API key; service access approval and bindings control which applications can use it. The gateway does not implement the MCP server: you deploy that separately, with a transport compatible with its client.
Understand the Tanzu service-publisher pattern
VMware Tanzu’s January 23, 2026 guide describes this as a Tanzu Platform 10.3 capability. Rather than expose each MCP server directly, an operator publishes the server application as a marketplace service. The server remains on internal routing, while a Tanzu Gateway provisions a route and API key for a bound consumer application. The documented network policy allows the gateway to reach the server, so external requests flow through the gateway.
As an Amazon Associate I earn from qualifying purchases.
This is a specific Tanzu Platform architecture, not an inherent feature of every MCP gateway. The guide’s authors say, “With the 10.3 release of VMware Tanzu Platform, you can begin delivering this capability.” See Building an Enterprise MCP Server Marketplace with Tanzu Platform.
Check platform version and access prerequisites
Confirm that the installation is Tanzu Platform 10.3 or another release whose current documentation explicitly supports service publishing. Also verify your entitlements, administrator permissions, and the installed platform’s CLI syntax before running commands. The available guide does not establish a complete prerequisite checklist or patch-level support matrix, so consult the official documentation for the release actually deployed.
#1 Best Overall
Deploy and publish the MCP server
Deploy the server application
Implement the MCP server and deploy it to Tanzu Platform as an application. Publishing it does not create the MCP implementation for you. For a Spring-based server, choose a server starter and transport suited to both the client and deployment topology; transport options are covered below.
Publish the application as a service
The vendor example uses a service definition with a name, description, and plans, including a standard plan. It publishes that definition with:
cf publish-service customer-data-tools -f service.yaml
This is the example command from the Tanzu article, not a guarantee of identical syntax across installations. Validate the service definition and CLI command against the documentation matching your platform version. The pattern does not require custom service-broker code.
Keep the server internal and authorize consumers
Route through the gateway
The published MCP server is mapped to the internal apps.internal domain. In the described design, a network policy permits the Spring Cloud Gateway to communicate with the server. This keeps the server behind internal routing while allowing consumers to use the gateway-provisioned route.
Grant organization access deliberately
Services are disabled by default in the documented workflow. A platform administrator reviews the published service and enables it for intended organizations, for example:
Rank #2
cf enable-service-access customer-data-tools -o product-team
This is an administrative approval step. Organization and space permissions also govern which users can create service instances and bind them to applications; service enablement alone is not a substitute for those controls.
Create a service instance and bind the application
A consuming team creates an instance from an enabled plan and binds it to its application:
cf create-service customer-data-tools standard my-customer-tools
cf bind-service my-agent-app my-customer-tools
Tanzu Gateway provisions a route and API key. Restart the bound application so the binding values become available; the gateway URL and credentials are delivered in the app’s VCAP_SERVICES environment variable. Read the values from the binding at runtime rather than putting credentials in source code.
The gateway API key identifies or authenticates a caller at the gateway, but the documented workflow does not establish that it provides end-user authorization. Keep network routing, platform access approval, org/space permissions, and bound-service credentials as distinct controls. Natural-language tool discovery is not an access-control boundary.
Choose a compatible MCP server transport
Spring AI’s MCP reference (version 2.0.1) lists server starters for STDIO and HTTP-based transports, including SSE, Streamable-HTTP, and stateless Streamable-HTTP options. Choose according to the client’s supported transport and the application’s network topology: STDIO is a different connection model from HTTP, while the available HTTP variants need to match the client and server configuration. See Spring AI MCP Server Boot Starters.
Rank #3
Spring AI 2.0 moved its Spring-specific WebFlux and WebMVC MCP transports into the Spring AI project, changing Maven group IDs and Java packages. Older examples may therefore need dependency and import updates. For a Spring AI 2.0 application using the BOM or current starters, the reference says explicit versions are not needed for the listed artifacts; verify dependencies against the version selected for your application. A separate Broadcom Community example demonstrates a Spring AI server with Tanzu Application Catalog chart-listing, metadata, and README tools, but it is an implementation example rather than a gateway prerequisite: Tanzu Application Catalog MCP Server.
Recommended Free Tools
Consider tool discovery separately from security
When an agent has many tools, dynamic discovery can reduce how many tool definitions are sent at once. Spring reported preliminary token reductions of 34%–64% in a 28-tool demo setup, comparing search-assisted selection with sending all tool definitions across Gemini, OpenAI, and Anthropic tests. Spring author Christian Tzolov described the results as “preliminary”: runs were manual, few, not averaged across multiple iterations, and illustrative rather than representative. Treat the figures as an experiment, not a performance guarantee or security control. See Spring AI Tool Search Tool.
Disable access and retire a published service
For the lifecycle described in the Tanzu article, disable service access to stop new bindings, then unpublish the service for full removal:
cf disable-service-access customer-data-tools
cf unpublish-service customer-data-tools
The article says existing consumers may continue after access is disabled. Confirm the impact on existing instances, bindings, and routes with documentation for the installed platform release before making a production change.
Operational checks before rollout
- Confirm the deployed Tanzu Platform release supports the service-publisher workflow and that the operator has the required administrative permissions.
- Verify the MCP server is deployed on
apps.internaland that the network policy allows the gateway—not unintended callers—to reach it. - Grant service access only to intended organizations, and check org and space permissions for instance creation and binding.
- Verify the consumer reads the gateway URL and credential from
VCAP_SERVICESafter restart; do not commit the key to source code. - Check that the server transport, Spring AI artifact coordinates, and Java packages match the chosen Spring AI version and client.
- Before revoking access or unpublishing, account for existing consumers and verify behavior for the target platform release.
A September 2, 2020 VMware Tanzu Team article discusses gateway configuration topics such as client-certificate authorization, CORS allowed origins, header limits, timeouts, Application Security Groups, and isolation segments. It predates the Tanzu Platform 10.3 MCP service-publisher workflow and does not establish current support or identical configuration syntax; use it only as older background, not as a current setup recipe: Spring Cloud Gateway for VMware Tanzu configuration.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




