π§ MCP Server Helm Chart
About
This Helm chart dynamically deploys an MCP server accessible remotely via Server-Sent Events (SSE). It allows you to integrate existing REST APIs from your application and publish them as tools within the MCP server, enabling easy discovery and interaction by intelligent agents o
Details
- Author
- lgiuppone
- Downloads
- 321
- Categories
- Other
Jump to
- Deploy an MCP server in a Kubernetes cluster
- Enable remote interaction via SSE
- Dynamically register and expose API endpoints as tools
- Lightweight configuration via values.yaml
- Compatible with FastAPI, Express, Flask, and any REST service
Install the chart using helm install mcp-server ./mcp-server --values values.yaml after defining your API endpoints in the config.tools section of values.yaml. Clients connect to the deployed server via the /sse endpoint, as shown in the provided JSON configuration example.
π§ MCP Server Helm Chart
This Helm chart dynamically deploys an MCP (Model Context Protocol) server, accessible remotely via Server-Sent Events (SSE). It allows you to easily expose any existing REST API from your application as tools within the MCP environment, enabling intelligent agents or external clients to query and use them.
---
π Features
- Deploy an MCP server in a Kubernetes cluster
- Enable remote interaction via SSE
- Dynamically register and expose API endpoints as tools
- Lightweight configuration via values.yaml
- Compatible with FastAPI, Express, Flask, and any REST service
---
π¦ Chart Structure
mcp-server/
βββ Chart.yaml
βββ values.yaml
βββ templates/
βββ deployment.yaml
βββ service.yaml
βββ ingressroute.yaml
βββ configmap.yaml
---
βοΈ Dynamic Configuration
You can define which APIs to expose directly in your values.yaml file using the config.tools section. Here's an example configuration:
config:
tools: |
tools:
get_api_status:
endpoint: https://api-users.dev.example.com/
description: Get root message to verify the API is running.
fetch_user_by_id:
endpoint: https://api-users.dev.example.com/users/1
description: Fetch a specific user by ID from the API.
get_random_user:
endpoint: https://api-users.dev.example.com/users/random
description: Retrieve a randomly selected user (for testing/demo).
> π Make sure to replace *.dev.example.com with your actual domains.
---
π§ͺ Install the Chart
helm install mcp-server ./mcp-server \
--values values.yaml
---
π MCP Client Configuration
Once deployed, clients can connect to your MCP server using the following configuration:
{
"mcp": {
"servers": {
"users-api": {
"url": "https://mcp-server.dev.example.com/sse"
}
}
}
}
> π The MCP server uses SSE (/sse) to stream messages in real-time.
---
π§Ή Uninstall
helm uninstall mcp-server
---
π§ About MCP
MCP (Model Context Protocol) is a lightweight interaction layer that enables intelligent agents or applications to access domain-specific tools using natural language interfaces or direct API querying.
---
π¬ Questions / Contributions
Feel free to open an issue or submit a pull request. Contributions are welcome!
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



