{
  "name": "prometheus",
  "display_name": "Prometheus",
  "description": "Query and analyze Prometheus - open-source monitoring system.",
  "repository": {
    "type": "git",
    "url": "https://github.com/pab1it0/prometheus-mcp-server"
  },
  "homepage": "https://github.com/pab1it0/prometheus-mcp-server",
  "author": {
    "name": "pab1it0"
  },
  "license": "MIT",
  "categories": [
    "Analytics"
  ],
  "tags": [
    "Prometheus",
    "Metrics",
    "AI"
  ],
  "installations": {
    "uvx": {
      "type": "uvx",
      "command": "uvx",
      "args": [
        "--from",
        "git+https://github.com/pab1it0/prometheus-mcp-server",
        "prometheus-mcp-server"
      ],
      "env": {
        "PROMETHEUS_URL": "${PROMETHEUS_URL}",
        "PROMETHEUS_USERNAME": "${PROMETHEUS_USERNAME}",
        "PROMETHEUS_PASSWORD": "${PROMETHEUS_PASSWORD}"
      }
    }
  },
  "examples": [
    {
      "title": "Execute Query",
      "description": "Execute a PromQL instant query against Prometheus",
      "prompt": "execute_query({ query: \"up\" })"
    },
    {
      "title": "List Metrics",
      "description": "Get a list of metrics from Prometheus",
      "prompt": "list_metrics()"
    }
  ],
  "arguments": {
    "PROMETHEUS_URL": {
      "description": "The URL of the Prometheus server you want to connect to.",
      "required": true,
      "example": "http://your-prometheus-server:9090"
    },
    "PROMETHEUS_USERNAME": {
      "description": "The username for basic authentication when accessing the Prometheus server.",
      "required": false,
      "example": "your_username"
    },
    "PROMETHEUS_PASSWORD": {
      "description": "The password for basic authentication when accessing the Prometheus server.",
      "required": false,
      "example": "your_password"
    }
  },
  "tools": [
    {
      "name": "execute_query",
      "description": "Execute a PromQL instant query against Prometheus",
      "inputSchema": {
        "properties": {
          "query": {
            "title": "Query",
            "type": "string"
          },
          "time": {
            "anyOf": [
              {
                "type": "string"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "title": "Time"
          }
        },
        "required": [
          "query"
        ],
        "title": "execute_queryArguments",
        "type": "object"
      }
    },
    {
      "name": "execute_range_query",
      "description": "Execute a PromQL range query with start time, end time, and step interval",
      "inputSchema": {
        "properties": {
          "query": {
            "title": "Query",
            "type": "string"
          },
          "start": {
            "title": "Start",
            "type": "string"
          },
          "end": {
            "title": "End",
            "type": "string"
          },
          "step": {
            "title": "Step",
            "type": "string"
          }
        },
        "required": [
          "query",
          "start",
          "end",
          "step"
        ],
        "title": "execute_range_queryArguments",
        "type": "object"
      }
    },
    {
      "name": "list_metrics",
      "description": "List all available metrics in Prometheus",
      "inputSchema": {
        "properties": {},
        "title": "list_metricsArguments",
        "type": "object"
      }
    },
    {
      "name": "get_metric_metadata",
      "description": "Get metadata for a specific metric",
      "inputSchema": {
        "properties": {
          "metric": {
            "title": "Metric",
            "type": "string"
          }
        },
        "required": [
          "metric"
        ],
        "title": "get_metric_metadataArguments",
        "type": "object"
      }
    },
    {
      "name": "get_targets",
      "description": "Get information about all scrape targets",
      "inputSchema": {
        "properties": {},
        "title": "get_targetsArguments",
        "type": "object"
      }
    }
  ]
}