transform-ia/typescript-chart
If you are the rightful owner of typescript-chart and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Model Context Protocol (MCP) server is designed to facilitate communication between language servers and clients, providing advanced code navigation and analysis features.
TypeScript Development Chart
Helm chart for deploying a TypeScript development environment with typescript-language-server MCP (Model Context Protocol) server.
Overview
This chart deploys a containerized TypeScript development environment that includes:
- TypeScript development tools and runtime
- typescript-language-server language server exposed via MCP protocol
- Persistent workspace for code storage
- Network policies for secure MCP access
- RBAC for namespace-scoped permissions
Quick Start
Installation
# Add the repository (for OCI registry)
helm pull oci://ghcr.io/transform-ia/typescript-chart --version 0.0.1
# Install the chart
helm install my-typescript oci://ghcr.io/transform-ia/typescript-chart \
--namespace typescript-dev \
--create-namespace
# Or from source
helm install my-typescript . \
--namespace typescript-dev \
--create-namespace
Accessing the Environment
# Connect to the development pod
kubectl exec -it -n typescript-dev deploy/my-typescript-typescript-chart -- /bin/bash
# Check the MCP service
kubectl get svc -n typescript-dev
MCP Server Endpoint
The typescript-language-server MCP server is available at:
http://my-typescript-typescript-chart.typescript-dev.svc.cluster.local:81/mcp
Configuration
Key Values
| Parameter | Description | Default |
|---|---|---|
image.repository | TypeScript image repository | ghcr.io/transform-ia/typescript-image |
image.tag | Image tag | "" (uses appVersion) |
service.port | MCP server port | 81 |
storage.workspace.enabled | Enable persistent workspace | true |
storage.workspace.size | Workspace volume size | 10Gi |
networkPolicies.enabled | Enable network policies | true |
Example Custom Values
# custom-values.yaml
image:
tag: "0.0.2"
resources:
limits:
cpu: 2000m
memory: 4Gi
requests:
cpu: 500m
memory: 1Gi
storage:
workspace:
size: 20Gi
Install with custom values:
helm install my-typescript . -f custom-values.yaml
Development Workflow
1. Deploy the Chart
helm install typescript-dev oci://ghcr.io/transform-ia/typescript-chart \
--namespace typescript-dev \
--create-namespace
2. Access the Development Pod
POD=$(kubectl get pod -n typescript-dev -l app=typescript-dev -o jsonpath='{.items[0].metadata.name}')
kubectl exec -it -n typescript-dev $POD -- /bin/bash
3. Use MCP Server
The typescript-language-server MCP server provides semantic code navigation:
- Definitions
- References
- Type information
- Code diagnostics
- Auto-completion support
Connect your MCP client to: http://typescript-dev-typescript-chart.typescript-dev.svc.cluster.local:81/mcp
Architecture
Components
- Deployment: Single replica typescript development pod
- Service: ClusterIP service exposing MCP server (port 81)
- PVC: Persistent workspace storage
- ServiceAccount: RBAC for namespace-scoped operations
- NetworkPolicy: Ingress/egress rules for MCP access
Security
- Read-only root filesystem
- Non-root user (UID 1000)
- Dropped capabilities
- Seccomp profile (RuntimeDefault)
- Network policies for controlled access
Uninstallation
helm uninstall my-typescript -n typescript-dev
Note: This will delete the deployment but preserve the workspace PVC. To delete the PVC:
kubectl delete pvc -n typescript-dev my-typescript-typescript-chart-workspace
Development
Testing Locally
# Lint the chart
helm lint .
# Render templates
helm template test . --debug
# Dry run installation
helm install test . --dry-run --debug
Publishing
The chart is automatically published to GHCR when a tag is pushed:
git tag v0.0.1
git push origin v0.0.1
GitHub Actions will:
- Lint YAML and Markdown files
- Package the chart
- Push to
oci://ghcr.io/transform-ia/typescript-chart
License
MIT
Maintainers
- Transform IA (bruno.clermont@gmail.com)