Skip to main content

Introduction

MCPulse is an analytics and observability platform for Model Context Protocol (MCP) servers. Track tool calls, monitor performance, and debug errors with real-time insights.

Why MCPulse?

Get answers to critical questions about your MCP servers:

  • Performance - Track latency, throughput, and success rates
  • Errors - Comprehensive error tracking with full context
  • Usage - Understand which tools are most popular
  • Trends - Monitor performance and catch issues early

Key Features

  • Universal Compatibility: Works with MCP servers in any language - Python, Go, TypeScript, Rust, and more.
  • Real-time Analytics: Monitor tool calls, sessions, errors, and performance as they happen.
  • Time-Series Storage: Built on TimescaleDB for efficient storage with automatic compression and retention.
  • Privacy-First: Self-hosted with automatic parameter sanitization. Your data stays on your infrastructure.
  • High Performance: Built in Go - handles 10,000+ events/second with sub-second query latency.

Quick Start

  1. Install with Docker

    Pull the latest image:

    curl -O https://raw.githubusercontent.com/sirrobot01/mcpulse/main/docker-compose.yml
    curl -o config.yaml https://raw.githubusercontent.com/sirrobot01/mcpulse/main/config.yaml.example

    docker compose up -d
  2. Add Analytics to Your MCP Server

    Option A: Zero-Code Proxy (recommended for quick start)

    {
    "mcpServers": {
    "my-server": {
    "command": "mcpulse-proxy",
    "args": ["stdio", "--server-id", "my-server", "--command", "python server.py"],
    "env": {
    "MCPULSE_URL": "localhost:50051",
    "MCPULSE_API_KEY": "your-api-key"
    }
    }
    }
    }

    Option B: SDK Integration (for custom control)

    from mcpulse import AnalyticsTracker, Config

    config = Config(server_id="my-server", grpc_endpoint="localhost:9090")
    tracker = AnalyticsTracker(config)

    @tracker.track_tool_call("calculate")
    def calculate(a: float, b: float):
    return a + b
  3. View Dashboard Open http://localhost:8080

Next Steps

Support