{
  "properties": {
    "services": {
      "description": "Email services that send for the domain; each adds its documented include.",
      "maxItems": 13,
      "items": {
        "enum": [
          "google",
          "microsoft",
          "amazonses",
          "sendgrid",
          "mailgun",
          "postmark",
          "mandrill",
          "brevo",
          "salesforce",
          "zendesk",
          "freshdesk",
          "proton",
          "fastmail"
        ],
        "type": "string"
      },
      "type": "array"
    },
    "includes": {
      "description": "Other include: domains, like _spf.example.com.",
      "maxItems": 10,
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "ip4": {
      "description": "IPv4 addresses or ranges that send, like 192.0.2.10 or 192.0.2.0/24.",
      "maxItems": 20,
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "ip6": {
      "description": "IPv6 addresses or ranges that send, like 2001:db8::/32.",
      "maxItems": 20,
      "items": {
        "type": "string"
      },
      "type": "array"
    },
    "a": {
      "description": "The domain's own A record sends email.",
      "type": "boolean"
    },
    "mx": {
      "description": "The domain's MX servers send email.",
      "type": "boolean"
    },
    "hard_fail": {
      "description": "End with -all instead of the usual ~all.",
      "type": "boolean"
    }
  },
  "type": "object",
  "title": "generate_spf_record input",
  "$comment": "Verbatim inputSchema of MCP tool generate_spf_record from tools/list at https://demisignal.com/mcp (fetched 2026-11-05)"
}