Skip to main content
Glama

DORA Metrics Calculator

dora-metrics-calculator
Read-onlyIdempotent

Use this when a user wants to benchmark an engineering team against DORA metrics. Takes deploys per month, lead time in hours, change failure rate in percent and, optionally, time to restore in hours. Classifies each metric as elite, high, medium or low against fixed benchmark bands; an omitted restore time is reported as unknown and the overall profile is marked partial rather than assumed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lead_time_hoursYesLead time for changes, commit to production, in hours.
deploys_per_monthYesProduction deployments per month.
change_failure_pctYesShare of deployments that cause a failure in production, in percent.
restore_time_hoursNoTime to restore service after a failed change, in hours. Optional; when omitted the metric is reported as unknown.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
mttr_tierYes
next_stepYes
assessmentYes
overall_tierYes
next_step_urlYes
why_follow_upYes
interpretationYes
lead_time_tierYes
metrics_assessedYes
affiliate_contextNo
computation_basisYes
deploy_frequency_tierYes
change_failure_rate_tierYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed16 schema fields changed
    • changedInput schema / properties / change_failure_pct / description
      Previous value: -"change failure expressed as a percentage."New value: +"Share of deployments that cause a failure in production, in percent."
    • changedInput schema / properties / change_failure_pct / examples
      Previous value: -[
      -  1
      -]New value: +[
      +  15
      +]
    • addedInput schema / properties / change_failure_pct / maximum
      Added value: +100
    • addedInput schema / properties / change_failure_pct / minimum
      Added value: +0
    • changedInput schema / properties / deploys_per_month / description
      Previous value: -"deploys per month used by this deterministic tool."New value: +"Production deployments per month."
    • changedInput schema / properties / deploys_per_month / examples
      Previous value: -[
      -  1
      -]New value: +[
      +  20
      +]
    • addedInput schema / properties / deploys_per_month / minimum
      Added value: +0
    • changedInput schema / properties / lead_time_hours / description
      Previous value: -"lead time in hours."New value: +"Lead time for changes, commit to production, in hours."
    • changedInput schema / properties / lead_time_hours / examples
      Previous value: -[
      -  1
      -]New value: +[
      +  24
      +]
    • addedInput schema / properties / lead_time_hours / minimum
      Added value: +0
    • changedInput schema / properties / restore_time_hours / description
      Previous value: -"restore time in hours."New value: +"Time to restore service after a failed change, in hours. Optional; when omitted the metric is reported as unknown."
    • changedInput schema / properties / restore_time_hours / examples
      Previous value: -[
      -  1
      -]New value: +[
      +  4
      +]
    • addedInput schema / properties / restore_time_hours / minimum
      Added value: +0
    • addedOutput schema / properties / assessment
      Added value: +{
      +  "type": "string"
      +}
    • addedOutput schema / properties / metrics_assessed
      Added value: +{
      +  "type": "number"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "change_failure_rate_tier",
      -  "computation_basis",
      -  "deploy_frequency_tier",
      -  "interpretation",
      -  "lead_time_tier",
      -  "mttr_tier",
      -  "next_step",
      -  "next_step_url",
      -  "overall_tier",
      -  "why_follow_up"
      -]New value: +[
      +  "assessment",
      +  "change_failure_rate_tier",
      +  "computation_basis",
      +  "deploy_frequency_tier",
      +  "interpretation",
      +  "lead_time_tier",
      +  "metrics_assessed",
      +  "mttr_tier",
      +  "next_step",
      +  "next_step_url",
      +  "overall_tier",
      +  "why_follow_up"
      +]
  2. Changed10 schema fields changed
    • addedInput schema / properties / change_failure_pct / description
      Added value: +"change failure expressed as a percentage."
    • addedInput schema / properties / change_failure_pct / examples
      Added value: +[
      +  1
      +]
    • addedInput schema / properties / deploys_per_month / description
      Added value: +"deploys per month used by this deterministic tool."
    • addedInput schema / properties / deploys_per_month / examples
      Added value: +[
      +  1
      +]
    • addedInput schema / properties / lead_time_hours / description
      Added value: +"lead time in hours."
    • addedInput schema / properties / lead_time_hours / examples
      Added value: +[
      +  1
      +]
    • addedInput schema / properties / restore_time_hours / description
      Added value: +"restore time in hours."
    • addedInput schema / properties / restore_time_hours / examples
      Added value: +[
      +  1
      +]
    • addedOutput schema / properties / computation_basis
      Added value: +{
      +  "type": "string"
      +}
    • changedOutput schema / required
      Previous value: -[
      -  "change_failure_rate_tier",
      -  "deploy_frequency_tier",
      -  "interpretation",
      -  "lead_time_tier",
      -  "mttr_tier",
      -  "next_step",
      -  "next_step_url",
      -  "overall_tier",
      -  "why_follow_up"
      -]New value: +[
      +  "change_failure_rate_tier",
      +  "computation_basis",
      +  "deploy_frequency_tier",
      +  "interpretation",
      +  "lead_time_tier",
      +  "mttr_tier",
      +  "next_step",
      +  "next_step_url",
      +  "overall_tier",
      +  "why_follow_up"
      +]
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "affiliate_context": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "affiliate": {
      +          "type": "string"
      +        },
      +        "cta_label": {
      +          "type": "string"
      +        },
      +        "disclosure": {
      +          "type": "string"
      +        },
      +        "framing": {
      +          "type": "string"
      +        },
      +        "posture": {
      +          "enum": [
      +            "secondary"
      +          ],
      +          "type": "string"
      +        },
      +        "slot_id": {
      +          "type": "string"
      +        },
      +        "url": {
      +          "type": "string"
      +        },
      +        "variant": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "affiliate",
      +        "cta_label",
      +        "disclosure",
      +        "framing",
      +        "posture",
      +        "slot_id",
      +        "url",
      +        "variant"
      +      ],
      +      "type": "object"
      +    },
      +    "change_failure_rate_tier": {
      +      "type": "string"
      +    },
      +    "deploy_frequency_tier": {
      +      "type": "string"
      +    },
      +    "interpretation": {
      +      "type": "string"
      +    },
      +    "lead_time_tier": {
      +      "type": "string"
      +    },
      +    "mttr_tier": {
      +      "type": "string"
      +    },
      +    "next_step": {
      +      "type": "string"
      +    },
      +    "next_step_url": {
      +      "type": "string"
      +    },
      +    "overall_tier": {
      +      "type": "string"
      +    },
      +    "why_follow_up": {
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "change_failure_rate_tier",
      +    "deploy_frequency_tier",
      +    "interpretation",
      +    "lead_time_tier",
      +    "mttr_tier",
      +    "next_step",
      +    "next_step_url",
      +    "overall_tier",
      +    "why_follow_up"
      +  ],
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • addedInput schema / additionalProperties
      Added value: +false
  5. First observed

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources