-
Notifications
You must be signed in to change notification settings - Fork 97
Open
Labels
bugSomething isn't workingSomething isn't workingkubernetesItems related to KubernetesItems related to Kubernetesmcpproxy
Description
I have deployed an MCP server in my Kubernetes cluster using ToolHive operator. If I do a port-forward
from the headless service to my local host, the MCP server responds correctly. If I do a port-forward
from the proxy service, the request times out.
The issue seems to be restricted only for tool calling. Listing tools works just fine.
MCP server details
- Developed in Python
- Uses streameable http as transport
apiVersion: toolhive.stacklok.dev/v1alpha1
kind: MCPServer
metadata:
name: plotting-mcp
namespace: toolhive-system
spec:
image: ghcr.io/stackloklabs/plotting-mcp:latest
transport: streamable-http
port: 9090
targetPort: 9090
permissionProfile:
type: builtin
name: network
resources:
limits:
cpu: "100m"
memory: "128Mi"
requests:
cpu: "50m"
memory: "64Mi"
podTemplateSpec:
spec:
volumes:
- name: mcp-tmp
persistentVolumeClaim:
claimName: mcp-plot-tmp
containers:
- name: mcp
volumeMounts:
- mountPath: /tmp
name: mcp-tmp
readOnly: false
Proxy Logs
When connecting to the server
From proxy service
3:59PM INF Transparent proxy: DELETE /mcp -> http://mcp-plotting-mcp-headless:9090
3:59PM INF Detected Mcp-Session-Id header: 9a0ac73fe2964a7596af156dc77fc7c5
3:59PM INF Transparent proxy: POST /mcp -> http://mcp-plotting-mcp-headless:9090
3:59PM INF Detected initialize method call for plotting-mcp
3:59PM INF Detected Mcp-Session-Id header: dee3b7b1dde34bf0bdfea9eed7f3154a
3:59PM INF Transparent proxy: POST /mcp -> http://mcp-plotting-mcp-headless:9090
3:59PM INF Transparent proxy: GET /mcp -> http://mcp-plotting-mcp-headless:9090
3:59PM INF Detected Mcp-Session-Id header: dee3b7b1dde34bf0bdfea9eed7f3154a
From headless service (MCP server)
2025-08-21 15:59:52 [info ] Terminating session: 9a0ac73fe2964a7596af156dc77fc7c5 [mcp.server.streamable_http]
2025-08-21 15:59:52 [info ] 10.0.3.83:45720 - "DELETE /mcp HTTP/1.1" 200 [uvicorn.access]
2025-08-21 15:59:52 [info ] Created new transport with session ID: dee3b7b1dde34bf0bdfea9eed7f3154a [mcp.server.streamable_http_manager]
When listing tools
From proxy service
4:00PM INF Transparent proxy: POST /mcp -> http://mcp-plotting-mcp-headless:9090
4:00PM INF Detected Mcp-Session-Id header: dee3b7b1dde34bf0bdfea9eed7f3154a
From headless service (MCP server)
2025-08-21 16:00:26 [info ] 10.0.3.83:41870 - "POST /mcp HTTP/1.1" 200 [uvicorn.access]
2025-08-21 16:00:26 [info ] Processing request of type ListToolsRequest [mcp.server.lowlevel.server]
When trying to run a tool
From proxy service
4:02PM INF Transparent proxy: POST /mcp -> http://mcp-plotting-mcp-headless:9090
4:02PM INF Detected Mcp-Session-Id header: dee3b7b1dde34bf0bdfea9eed7f3154a
From headless service (MCP server)
2025-08-21 16:02:53 [info ] 10.0.3.83:57756 - "GET / HTTP/1.1" 200 [uvicorn.access]
2025-08-21 16:02:55 [info ] 10.0.3.83:57770 - "POST /mcp HTTP/1.1" 200 [uvicorn.access]
2025-08-21 16:02:55 [info ] Processing request of type CallToolRequest [mcp.server.lowlevel.server]
2025-08-21 16:02:55 [info ] Plot generated successfully [plotting_mcp.server] kwargs={} plot_type=line size=30.9KiB
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workingkubernetesItems related to KubernetesItems related to Kubernetesmcpproxy