VMware Tanzu Greenplum MCP server is an Enterprise AI Gateway and Model Context Protocol (MCP) server that connects Enterprise AI Clients and large language models (LLMs) directly to your Greenplum database cluster. Greenplum MCP server enables AI gateways and applications to query, analyze, and diagnose your Greenplum environment securely using natural language, acting as a governed middleware layer between AI and your data.
VMware Tanzu Greenplum MCP server support windows, linux, mac (intel / silicon). It also support install through docker / kubernetes (minikube).
Greenplum MCP server 1.0.1
Before the actual installation of Greenplum MCP server, it requires the kubernetes or minikube installed and started. The installation of k8s and docker can be found from it's official document. This article focus on the gp mcp server related setup.
1.Download the gp-mcp-server binary based on each host platform. Here it's using the linux version. (gp-mcp-server-1.0.1-linux-x64). First copy it to a new file called gp-mcp-server.
cp gp-mcp-server-1.0.1-linux-x64 gp-mcp-server2. Build the container image inside minikube. From the same directory of the gp-mcp-server file, generate a Dockfile. Add below content :
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y ca-certificates && rm -rf /var/lib/apt/lists/*
COPY gp-mcp-server /usr/local/bin/
RUN useradd -r -s /bin/false gp-mcp
USER gp-mcp
EXPOSE 8080
ENTRYPOINT ["/usr/local/bin/gp-mcp-server", "streamable-http"]For those has the GFW issue, you may pull the ubuntu image from a mirror site first.
# 1. Pull the Ubuntu base image using a working domestic proxy registry (e.g., Daocloud or 1ms)
docker pull docker.m.daocloud.io/library/ubuntu:22.04
# 2. Retag it so Docker recognizes it locally as standard "ubuntu:22.04"
docker tag docker.m.daocloud.io/library/ubuntu:22.04 ubuntu:22.043. Build the tanzu-gp-mcp image. (you can choose different name).
docker build -t tanzu-gp-mcp:1.0 .4. Run the MCP container
docker run -d \
--name gp-mcp-service \
-p 8080:8080 \
-e GPDB_HOST="$GPDB_HOST_IP" \
-e GPDB_PORT="your_database_port" \
-e GPDB_DATABASE="<your-database-name>" \
-e GPDB_USERNAME="gpadmin" \
-e GPDB_PASSWORD="<your-gpdb-password>" \
tanzu-gp-mcp:1.05. Verify the container status :
docker ps | grep gpIf no result returned, checked the logs:
docker logs gp-mcp-service
docker inspect gp-mcp-serviceIf it works, the logs may look as below:
docker logs gp-mcp-service
time="2026-06-09T02:56:50Z" level=info msg="Created default config file: /home/gp-mcp/.gp_mcp/config.yaml"
time="2026-06-09T02:56:50Z" level=info msg="Created default policy file: /home/gp-mcp/.gp_mcp/policy.yaml"
time="2026-06-09T02:56:50Z" level=info msg="Initialized connection pool with max connections: 10"
time="2026-06-09T02:56:50Z" level=info msg="Verifying database connection for user: gpadmin (host: 1.2.3.4 port: 5435, dbname: postgres)"
time="2026-06-09T02:56:50Z" level=info msg="Connected to Greenplum 6 (gp_server_version_num=60000)"
time="2026-06-09T02:56:50Z" level=info msg="Loaded 37 built-in GPDB tools"
time="2026-06-09T02:56:50Z" level=info msg="Loaded 3 default prompts from markdown files"
time="2026-06-09T02:56:50Z" level=info msg="Loaded 3 built-in prompts"
time="2026-06-09T02:56:50Z" level=info msg="Loaded 2 built-in GPDB resources"