Skip to content

Celestir-com/pulsar

Repository files navigation

Pulsar

Production-grade Kubernetes-native MCP server orchestration.

Copyright (C) 2025 Celestir LLC

Overview

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.

Features

  • 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

Quick Start

Install the CLI:

make build
sudo cp bin/pulsar /usr/local/bin/

Add a new MCP server:

pulsar add my-server

Deploy to Kubernetes:

pulsar deploy -f my-server.yaml

Check status:

pulsar status my-server

View logs:

pulsar logs my-server -f

Architecture

Pulsar consists of:

  • Custom Resource Definition (MCPServer)
  • Controller/Operator (reconciliation loop)
  • CLI tool for management
  • SDKs (Python, TypeScript, Go)

License

AGPL-3.0 - see LICENSE file for details.

Development

Requirements:

  • Go 1.22+
  • Kubernetes 1.28+
  • kubectl
  • kind or minikube (for local dev)

Build:

make build

Test:

make test

Deploy to local cluster:

make dev