mcp-prometheus mcp

v1.0.1 · MCP Tool · monitoring · registry.pascalai.org

Prometheus HTTP API v1 — PromQL queries, targets, alerts, rules and metadata.

prometheusmetricsmonitoringobservabilitydevopspromql

Input Parameters

ParameterTypeDescription
operationrequired string Operation to perform. One of: query, query_range, labels, label_values, series, targets, alerts, rules, metadata, tsdb_status.
baseUrlrequired string Prometheus base URL (default: http://localhost:9090). Default: http://localhost:9090.
usernameoptional string Basic auth username.
passwordoptional string Basic auth password.
bearerTokenoptional string Bearer token for auth (takes priority over username/password).
queryoptional string PromQL query expression e.g. up, rate(http_requests_total[5m]).
startoptional string Start timestamp (RFC3339 or Unix timestamp) for query_range.
end_optional string End timestamp (RFC3339 or Unix timestamp) for query_range.
stepoptional string Query resolution step for query_range e.g. 15s, 1m, 5m. Default: 15s.
timeoptional string Evaluation timestamp for instant query (RFC3339 or Unix, default: now).
labelNameoptional string Label name for label_values operation.
matchoptional string Series selector for series/label_values e.g. {job="prometheus"}.
timeoutoptional string Evaluation timeout e.g. 30s (passed to Prometheus).

Output Fields

FieldTypeDescription
status string
data object
error string
errorType string

Examples

Query CPU usage

// Input
{
  "operation": "query",
  "baseUrl": "http://prometheus:9090",
  "query": "100 - (avg(rate(node_cpu_seconds_total{mode='idle'}[5m])) * 100)"
}

// Output
{
  "status": "success",
  "data": {}
}

List active alerts

// Input
{
  "operation": "alerts",
  "baseUrl": "http://prometheus:9090"
}

// Output
{
  "status": "success",
  "data": {}
}

Install & Discovery

Install

ppm install mcp-prometheus

Get JSON Schema

GET /v1/packages/mcp-prometheus/1.0.1/schema

Discover by keyword

GET /v1/mcp/discover?q=prometheus
Discovery hint: Install with ppm install mcp-prometheus or invoke remotely via POST /v1/invoke/mcp-prometheus on the MCP Service.

PascalAI Usage

uses toolslib;
var Tool := LoadTool('mcp-prometheus');
var R := Tool.Call(JsonObj(['operation','query','baseUrl','http://localhost:9090','query','up']));
Writeln(R.ToJSON);