erikdarlingdata/PerformanceMonitor

Free, open-source SQL Server performance monitoring — 32 collectors, real-time alerts, graphical plan viewer, MCP server for AI analysis. Supports SQL 2016-2025, Azure SQL, AWS RDS.

465 ★85 forksC#Updated 22h ago

What you need to know

Free, open-source SQL Server performance monitoring tool (by Erik Darling / Darling Data) with specialized collectors, real-time alerts, a graphical plan viewer, and a built-in MCP server exposing monitoring data to LLM clients. Sold as a no-cost replacement for expensive commercial monitoring tools.

Install

Download PerformanceMonitorLite-win-Setup.exe from GitHub Releases (requires .NET 10 Desktop Runtime)
Darling edition: download PerformanceMonitorDarling-<version>.zip, copy darling.sample.json to darling.json, run the service

Usage

  • Lite: launch app, click + Add Server, enter connection details, test, save, double-click to connect
  • Enable the MCP server in Settings (checkbox + port, default 5151), then register with Claude Code: `claude mcp add --transport http --scope user sql-monitor http://localhost:5151/`
  • Ask Claude Code/Cursor questions like "What are the top wait types on my server?" or "Are there any blocking or deadlock issues?"
  • Grant the login VIEW SERVER STATE (plus optional VIEW ANY DEFINITION for AGs and SQLAgentReaderRole for agent job monitoring)

Key features

  • 38 specialized collectors (wait stats, deadlocks, blocking chains, memory grants, file I/O, tempdb, perfmon, FinOps/capacity, etc.) on configurable schedules
  • Real-time alerts via system tray, styled HTML email with XML attachments, and webhooks; alert muting rules and resolved notifications
  • Graphical ShowPlan viewer with 30-rule PlanAnalyzer and standalone .sqlplan mode; Recommendations engine (advise-and-act)
  • Built-in MCP server with 74 read-only tools (Lite) covering waits, queries, blocking, deadlocks, CPU, memory, I/O, jobs, plan analysis, config, and diagnostics
  • Local DuckDB + Parquet storage (~50-200 MB per server per week), no telemetry/no cloud dependency, community tools (sp_WhoIsActive, etc.) installed automatically

Best for

DBAs who want free, self-hosted, always-local SQL Server (2016-2025, Azure SQL DB/MI, AWS RDS) monitoring with AI-assisted analysis via MCP.

Caveats

  • Full "Dashboard" edition is deprecated; as of v3.3.0 it is no longer included in release assets
  • Lite and Darling run on Windows (Lite is a WPF desktop app; Darling is a Windows service with bundled PostgreSQL); no Linux/macOS edition mentioned
  • MCP server binds to localhost only and does not accept remote connections; MCP port must be 1024-65535
  • Requires VIEW SERVER STATE on monitored servers; Azure SQL DB needs a contained database user with VIEW DATABASE STATE
  • sp_configure is unavailable on AWS RDS (use Parameter Groups); blocked-process threshold is fixed at 20s on Azure SQL DB
  • Free software with optional commercial support tiers ($500/year Supported, $2,500/year Priority); unlimited instances
Platforms: WindowsClients: Claude Code · Cursor
Documentation ↗

Reviewed 2026-08-07

Topics

aws-rdsazure-sqlblockingdatabase-monitoringdba-toolsdeadlockdeadlocksdotnetduckdbmcpmcp-servermodel-context-protocolperformance-monitoringpostgresqlquery-performancesql-serversql-server-monitoringtimescaledbwait-statswpf
View on GitHub ↗
Stars
465★
Forks
85
Language
C#
License
MIT
Created
2026-02-11
Last push
2026-08-06