Production-grade Kubernetes-native MCP server orchestration.
Copyright (C) 2025 Celestir LLC
Pulsar is a Kubernetes operator that treats MCP (Model Context Protocol) servers as first-class resources. Unlike mcpd's subprocess-based approach, Pulsar deploys each MCP server as an independent Kubernetes pod with full support for autoscaling, multi-tenancy, and spot instances.
- Native Kubernetes deployment (Pods, Services, HPAs)
- Horizontal pod autoscaling based on CPU/memory
- Multi-tenant namespace isolation
- AWS spot instance support with graceful termination
- IRSA (IAM Roles for Service Accounts) integration
- CloudWatch and Prometheus metrics
- Python and TypeScript MCP server support
Install the CLI:
make build
sudo cp bin/pulsar /usr/local/bin/Add a new MCP server:
pulsar add my-serverDeploy to Kubernetes:
pulsar deploy -f my-server.yamlCheck status:
pulsar status my-serverView logs:
pulsar logs my-server -fPulsar consists of:
- Custom Resource Definition (MCPServer)
- Controller/Operator (reconciliation loop)
- CLI tool for management
- SDKs (Python, TypeScript, Go)
AGPL-3.0 - see LICENSE file for details.
Requirements:
- Go 1.22+
- Kubernetes 1.28+
- kubectl
- kind or minikube (for local dev)
Build:
make buildTest:
make testDeploy to local cluster:
make dev