{
  "properties": {
    "domain": {
      "description": "The domain that was checked.",
      "type": "string"
    },
    "checked_at": {
      "description": "When the DNS was looked up.",
      "format": "date-time",
      "type": "string"
    },
    "cached": {
      "description": "True when this answer comes from a check made a few minutes ago rather than a new lookup.",
      "type": "boolean"
    },
    "age_seconds": {
      "description": "How old the answer is, in seconds.",
      "minimum": 0,
      "type": "integer"
    },
    "health_score": {
      "description": "Overall score out of 100.",
      "minimum": 0,
      "maximum": 100,
      "type": [
        "integer",
        "null"
      ]
    },
    "issues_count": {
      "description": "Number of issues found.",
      "minimum": 0,
      "type": [
        "integer",
        "null"
      ]
    },
    "checks": {
      "description": "One result per record type.",
      "items": {
        "properties": {
          "type": {
            "enum": [
              "dmarc",
              "spf",
              "dkim",
              "mx",
              "mta_sts",
              "bimi",
              "blacklist"
            ],
            "type": "string"
          },
          "status": {
            "enum": [
              "pass",
              "warning",
              "fail",
              "error",
              "unknown"
            ],
            "type": "string"
          },
          "record": {
            "description": "The record as published, or null when none was found.",
            "type": [
              "string",
              "null"
            ]
          },
          "issues": {
            "items": {
              "properties": {
                "severity": {
                  "enum": [
                    "critical",
                    "warning",
                    "info"
                  ],
                  "type": "string"
                },
                "message": {
                  "type": "string"
                },
                "detail": {
                  "type": "string"
                },
                "guide_url": {
                  "description": "A guide to fixing this issue.",
                  "format": "uri",
                  "type": "string"
                }
              },
              "type": "object",
              "required": [
                "severity",
                "message"
              ]
            },
            "type": "array"
          }
        },
        "type": "object",
        "required": [
          "type",
          "status",
          "record",
          "issues"
        ]
      },
      "type": "array"
    },
    "report_url": {
      "description": "The full report on demisignal.com.",
      "format": "uri",
      "type": "string"
    },
    "monitor_url": {
      "description": "Sign up to monitor this domain.",
      "format": "uri",
      "type": "string"
    },
    "key_checks_remaining": {
      "description": "With an API key: new checks the key has left this month.",
      "minimum": 0,
      "type": "integer"
    }
  },
  "type": "object",
  "required": [
    "domain",
    "checked_at",
    "cached",
    "age_seconds",
    "health_score",
    "issues_count",
    "checks",
    "report_url",
    "monitor_url"
  ],
  "title": "check_domain output",
  "$comment": "Verbatim outputSchema of MCP tool check_domain from tools/list at https://demisignal.com/mcp (fetched 2026-11-05)"
}