{
  "server": "obelisk-trust-tools",
  "protocolVersion": "2025-06-18",
  "transport": "https://obeliskgate.com/mcp",
  "tools": [
    {
      "name": "scan_trust",
      "description": "Run Obelisk's public trust scan on an https URL — TLS and security-header posture, scored as an Obelisk Rating. Read-only, SSRF-guarded.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The https URL to scan, e.g. https://example.com"
          }
        },
        "required": [
          "url"
        ]
      }
    },
    {
      "name": "verify_token",
      "description": "Verify that a JSON Web Token was minted by this Obelisk Gate (ES256, correct issuer) and report its type, subject, assurance, and principal. Never returns secrets.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "token": {
            "type": "string",
            "description": "A compact-serialized JWT issued by Obelisk (id_token or access token)."
          }
        },
        "required": [
          "token"
        ]
      }
    },
    {
      "name": "get_org_rating",
      "description": "Read the public Obelisk Rating (0-100 score, trust band, and trend) for a registered organization by its slug.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "org": {
            "type": "string",
            "description": "The organization slug, e.g. acme."
          }
        },
        "required": [
          "org"
        ]
      }
    },
    {
      "name": "transparency_head",
      "description": "Read the current signed transparency head of Obelisk's tamper-evident receipt ledger — pin it and compare later to prove history only extends. Same data as /.well-known/obelisk-transparency.json.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    },
    {
      "name": "gate_status",
      "description": "Read the Gate's public liveness facts: issuer, served code revision, OIDC availability, and supported protocols. No posture internals.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    },
    {
      "name": "explain_rating",
      "description": "Deterministically explain what an Obelisk Rating number means: its trust band, how the public scan scores, and what typically moves a score. Pure function of the number — no data is read.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "rating": {
            "type": "number",
            "description": "A 0-100 Obelisk Rating, e.g. from scan_trust or get_org_rating."
          }
        },
        "required": [
          "rating"
        ]
      }
    }
  ]
}