{
  "artifact": {
    "artifact_id": "github-com-modelcontextprotocol-registry-0ab174b3cf",
    "artifact_name": "modelcontextprotocol/registry",
    "canonical_url": "https://github.com/modelcontextprotocol/registry",
    "artifact_url": "https://www.rightshold.com/resource-scans/github-com-modelcontextprotocol-registry-0ab174b3cf",
    "receipt_count": 1,
    "versions": 1,
    "current_sha256": "b3c9172e5aca1118ab371af0cd48eccfe7f621019561e90d5e11466c57490701",
    "version_note": "Every receipt for this artifact so far names the same SHA-256: the bytes have not changed between scans.",
    "latest_receipt": {
      "id": "rsc_e4826967c5709b4bae9f7c70",
      "artifact_id": "github-com-modelcontextprotocol-registry-0ab174b3cf",
      "artifact_name": "modelcontextprotocol/registry",
      "canonical_url": "https://github.com/modelcontextprotocol/registry",
      "fetched_from": "https://raw.githubusercontent.com/modelcontextprotocol/registry/HEAD/README.md",
      "sha256": "b3c9172e5aca1118ab371af0cd48eccfe7f621019561e90d5e11466c57490701",
      "byte_size": 8490,
      "scanner_version": "resource-scan-v1",
      "scanned_at": "2026-10-27T12:18:30.097Z",
      "checks": [
        {
          "id": "network",
          "label": "Outbound network references",
          "status": "flag",
          "findings": [
            "The scanned bytes reference outbound network activity to these domains: blog.modelcontextprotocol.io, discord.com, github.com, ko.build, modelcontextprotocol.io, registry.modelcontextprotocol.io. Any resource that reaches the network can send data out as well as bring data in; the findings name what the bytes reference, and the reader decides whether that fits the resource's stated purpose."
          ],
          "evidence": [
            "domain: blog.modelcontextprotocol.io",
            "domain: discord.com",
            "domain: github.com",
            "domain: ko.build",
            "domain: modelcontextprotocol.io",
            "domain: registry.modelcontextprotocol.io"
          ]
        },
        {
          "id": "credentials",
          "label": "Credential and environment access",
          "status": "flag",
          "findings": [
            "The scanned bytes contain credential or environment access patterns: credential file paths (.env, .ssh, credential stores). The receipt names the pattern kinds only; no credential value is reproduced here."
          ],
          "evidence": [
            "credential file paths (.env, .ssh, credential stores)"
          ]
        },
        {
          "id": "install_hooks",
          "label": "Install and postinstall hooks",
          "status": "pass",
          "findings": [
            "No install or postinstall hooks were found in the scanned bytes."
          ],
          "evidence": []
        },
        {
          "id": "obfuscation",
          "label": "Obfuscation and encoded payloads",
          "status": "pass",
          "findings": [
            "No obfuscation or encoded-payload signs were found in the scanned bytes."
          ],
          "evidence": []
        },
        {
          "id": "shell_and_download",
          "label": "Shell-outs and download-and-execute",
          "status": "pass",
          "findings": [
            "No shell-out or download-and-execute patterns were found in the scanned bytes."
          ],
          "evidence": []
        },
        {
          "id": "permission_vs_behavior",
          "label": "Permission declarations vs behavior",
          "status": "flag",
          "findings": [
            "The bytes show network, credentials behavior, and no permissions declaration was found in the scanned bytes to compare it against."
          ],
          "evidence": [
            "behavior: network",
            "behavior: credentials"
          ]
        },
        {
          "id": "known_bad",
          "label": "Known-bad indicators",
          "status": "pass",
          "findings": [
            "None of the scanner's published known-bad indicator patterns matched the scanned bytes."
          ],
          "evidence": []
        },
        {
          "id": "provenance",
          "label": "Provenance facts (weak signals)",
          "status": "pass",
          "findings": [
            "Provenance facts, labeled weak signals — they say where the bytes sit, not what the bytes do: source host: github.com; repository: modelcontextprotocol/registry; bytes scanned: 8490; fetched from: https://raw.githubusercontent.com/modelcontextprotocol/registry/HEAD/README.md."
          ],
          "evidence": [
            "source host: github.com",
            "repository: modelcontextprotocol/registry",
            "bytes scanned: 8490",
            "fetched from: https://raw.githubusercontent.com/modelcontextprotocol/registry/HEAD/README.md"
          ]
        }
      ],
      "checks_total": 8,
      "checks_flagged": 3,
      "summary": "3 of 8 checks flagged",
      "ledger_seq": 1495,
      "receipt_url": "https://www.rightshold.com/resource-scans/github-com-modelcontextprotocol-registry-0ab174b3cf"
    },
    "history": [
      {
        "id": "rsc_e4826967c5709b4bae9f7c70",
        "artifact_id": "github-com-modelcontextprotocol-registry-0ab174b3cf",
        "artifact_name": "modelcontextprotocol/registry",
        "canonical_url": "https://github.com/modelcontextprotocol/registry",
        "fetched_from": "https://raw.githubusercontent.com/modelcontextprotocol/registry/HEAD/README.md",
        "sha256": "b3c9172e5aca1118ab371af0cd48eccfe7f621019561e90d5e11466c57490701",
        "byte_size": 8490,
        "scanner_version": "resource-scan-v1",
        "scanned_at": "2026-10-27T12:18:30.097Z",
        "checks": [
          {
            "id": "network",
            "label": "Outbound network references",
            "status": "flag",
            "findings": [
              "The scanned bytes reference outbound network activity to these domains: blog.modelcontextprotocol.io, discord.com, github.com, ko.build, modelcontextprotocol.io, registry.modelcontextprotocol.io. Any resource that reaches the network can send data out as well as bring data in; the findings name what the bytes reference, and the reader decides whether that fits the resource's stated purpose."
            ],
            "evidence": [
              "domain: blog.modelcontextprotocol.io",
              "domain: discord.com",
              "domain: github.com",
              "domain: ko.build",
              "domain: modelcontextprotocol.io",
              "domain: registry.modelcontextprotocol.io"
            ]
          },
          {
            "id": "credentials",
            "label": "Credential and environment access",
            "status": "flag",
            "findings": [
              "The scanned bytes contain credential or environment access patterns: credential file paths (.env, .ssh, credential stores). The receipt names the pattern kinds only; no credential value is reproduced here."
            ],
            "evidence": [
              "credential file paths (.env, .ssh, credential stores)"
            ]
          },
          {
            "id": "install_hooks",
            "label": "Install and postinstall hooks",
            "status": "pass",
            "findings": [
              "No install or postinstall hooks were found in the scanned bytes."
            ],
            "evidence": []
          },
          {
            "id": "obfuscation",
            "label": "Obfuscation and encoded payloads",
            "status": "pass",
            "findings": [
              "No obfuscation or encoded-payload signs were found in the scanned bytes."
            ],
            "evidence": []
          },
          {
            "id": "shell_and_download",
            "label": "Shell-outs and download-and-execute",
            "status": "pass",
            "findings": [
              "No shell-out or download-and-execute patterns were found in the scanned bytes."
            ],
            "evidence": []
          },
          {
            "id": "permission_vs_behavior",
            "label": "Permission declarations vs behavior",
            "status": "flag",
            "findings": [
              "The bytes show network, credentials behavior, and no permissions declaration was found in the scanned bytes to compare it against."
            ],
            "evidence": [
              "behavior: network",
              "behavior: credentials"
            ]
          },
          {
            "id": "known_bad",
            "label": "Known-bad indicators",
            "status": "pass",
            "findings": [
              "None of the scanner's published known-bad indicator patterns matched the scanned bytes."
            ],
            "evidence": []
          },
          {
            "id": "provenance",
            "label": "Provenance facts (weak signals)",
            "status": "pass",
            "findings": [
              "Provenance facts, labeled weak signals — they say where the bytes sit, not what the bytes do: source host: github.com; repository: modelcontextprotocol/registry; bytes scanned: 8490; fetched from: https://raw.githubusercontent.com/modelcontextprotocol/registry/HEAD/README.md."
            ],
            "evidence": [
              "source host: github.com",
              "repository: modelcontextprotocol/registry",
              "bytes scanned: 8490",
              "fetched from: https://raw.githubusercontent.com/modelcontextprotocol/registry/HEAD/README.md"
            ]
          }
        ],
        "checks_total": 8,
        "checks_flagged": 3,
        "summary": "3 of 8 checks flagged",
        "ledger_seq": 1495,
        "receipt_url": "https://www.rightshold.com/resource-scans/github-com-modelcontextprotocol-registry-0ab174b3cf"
      }
    ]
  }
}