{
  "$schema": "https://verifymcp.io/schemas/changelog.json",
  "server": "io-usefulapi-particlehealth",
  "component": "particlehealth",
  "generated_at": "2026-10-04T09:51:25.473Z",
  "tracking_since": "2026-09-29",
  "counts": {
    "critical": 0,
    "security": 11,
    "functional": 0,
    "cosmetic": 0
  },
  "events": [
    {
      "id": "chg_01a105a5-4ff1-707d-a5ad-db58d0431fb8",
      "kind": "check.reason",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.unreachable",
      "to_code": "toolsafety.auth_gated",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-04",
      "occurred_at": "2026-10-04 06:41:22.350661+00",
      "observed_since": "2026-10-03",
      "source": "scan",
      "summary": "Tool safety (Tool safety blocked by authentication: the endpoint requires auth we don't have to read its tools.)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a105a5-4ff1-707d-a5ad-db58d0431fb8"
    },
    {
      "id": "chg_01a105a5-4ff3-71b9-b7a7-beb4d149b96a",
      "kind": "capture.status_changed",
      "family": "",
      "subject_kind": "server",
      "subject": "capture",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": "not_mcp",
      "to_value": "auth_gated",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "to": "auth_gated",
        "from": "not_mcp"
      },
      "occurred_on": "2026-10-04",
      "occurred_at": "2026-10-04 06:41:22.350661+00",
      "observed_since": "2026-10-03",
      "source": "scan",
      "summary": "Endpoint reachability (not serving MCP → behind authorisation)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a105a5-4ff3-71b9-b7a7-beb4d149b96a"
    },
    {
      "id": "chg_01a10074-8523-7ca0-aef5-4ab900877efe",
      "kind": "check.unverifiable",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.injection_clean",
      "to_code": "toolsafety.unreachable",
      "from_value": "pass",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-03",
      "occurred_at": "2026-10-03 06:29:58.437565+00",
      "observed_since": "2026-10-02",
      "source": "scan",
      "summary": "Tool safety (pass → unverified)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a10074-8523-7ca0-aef5-4ab900877efe"
    },
    {
      "id": "chg_01a10074-8524-7ed1-a107-803aeb288eac",
      "kind": "check.reason",
      "family": "auth-oauth",
      "subject_kind": "check",
      "subject": "auth-oauth",
      "subject_child": "",
      "from_code": "auth.none_destructive_unverified",
      "to_code": "auth.none_unlisted",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-03",
      "occurred_at": "2026-10-03 06:29:58.437565+00",
      "observed_since": "2026-10-02",
      "source": "scan",
      "summary": "Authorization (Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the whole tool list to see what that exposes.)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a10074-8524-7ed1-a107-803aeb288eac"
    },
    {
      "id": "chg_01a10074-8526-7aea-8a8d-8574c3ba1f78",
      "kind": "capture.status_changed",
      "family": "",
      "subject_kind": "server",
      "subject": "capture",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": "verified",
      "to_value": "not_mcp",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "to": "not_mcp",
        "from": "verified"
      },
      "occurred_on": "2026-10-03",
      "occurred_at": "2026-10-03 06:29:58.437565+00",
      "observed_since": "2026-10-02",
      "source": "scan",
      "summary": "Endpoint reachability (reachable → not serving MCP)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a10074-8526-7aea-8a8d-8574c3ba1f78"
    },
    {
      "id": "chg_01a0fb60-760a-7da5-b16c-5fa78cbfe1c2",
      "kind": "check.reverified",
      "family": "tool-safety-injection",
      "subject_kind": "check",
      "subject": "tool-safety-injection",
      "subject_child": "",
      "from_code": "toolsafety.unreachable",
      "to_code": "toolsafety.injection_clean",
      "from_value": "unverified",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-02",
      "occurred_at": "2026-10-02 06:49:57.599999+00",
      "observed_since": "2026-10-01",
      "source": "scan",
      "summary": "Injection markers (unverified → pass)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a0fb60-760a-7da5-b16c-5fa78cbfe1c2"
    },
    {
      "id": "chg_01a0fb60-760b-7d92-b324-7a6ddfc3bf46",
      "kind": "check.appeared",
      "family": "tool-safety-manipulation",
      "subject_kind": "check",
      "subject": "tool-safety-manipulation",
      "subject_child": "",
      "from_code": null,
      "to_code": "toolsafety.manipulation_clean",
      "from_value": null,
      "to_value": "pass",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "units": "11",
        "judged": "11"
      },
      "occurred_on": "2026-10-02",
      "occurred_at": "2026-10-02 06:49:57.599999+00",
      "observed_since": "2026-10-01",
      "source": "scan",
      "summary": "First check of Judged manipulation (pass)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a0fb60-760b-7d92-b324-7a6ddfc3bf46"
    },
    {
      "id": "chg_01a0fb60-760e-745a-bb11-b87ce1a352eb",
      "kind": "check.reason",
      "family": "auth-oauth",
      "subject_kind": "check",
      "subject": "auth-oauth",
      "subject_child": "",
      "from_code": "auth.none_unlisted",
      "to_code": "auth.none_destructive_unverified",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "particle_submit_patient"
      },
      "occurred_on": "2026-10-02",
      "occurred_at": "2026-10-02 06:49:57.599999+00",
      "observed_since": "2026-10-01",
      "source": "scan",
      "summary": "Authorization (Authorisation not fully verified: this server exposes a tool marked destructive (particle_submit_patient) and its handshake is open, but we could not confirm whether a tool call is gated, so we do not assert it is callable unauthenticated.)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a0fb60-760e-745a-bb11-b87ce1a352eb"
    },
    {
      "id": "chg_01a0f627-afc9-7d16-8390-3d0467ed6fc1",
      "kind": "check.reverified",
      "family": "https",
      "subject_kind": "check",
      "subject": "https",
      "subject_child": "",
      "from_code": "https.inconclusive",
      "to_code": "https.enforced",
      "from_value": "unverified",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-10-01",
      "occurred_at": "2026-10-01 06:29:51.058699+00",
      "observed_since": "2026-09-30",
      "source": "scan",
      "summary": "HTTPS (unverified → pass)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a0f627-afc9-7d16-8390-3d0467ed6fc1"
    },
    {
      "id": "chg_01a0f111-783a-7b25-aca3-380607299b19",
      "kind": "check.verdict",
      "family": "transport",
      "subject_kind": "check",
      "subject": "transport",
      "subject_child": "",
      "from_code": "transport.http_error",
      "to_code": "transport.verified",
      "from_value": "fail",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {
        "transport": "streamable-http"
      },
      "occurred_on": "2026-09-30",
      "occurred_at": "2026-09-30 06:47:28.829727+00",
      "observed_since": "2026-09-29",
      "source": "scan",
      "summary": "Transport (fail → pass)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a0f111-783a-7b25-aca3-380607299b19"
    },
    {
      "id": "chg_01a0f111-7842-739d-aa47-b35bc3b5daa0",
      "kind": "check.reason",
      "family": "auth-oauth",
      "subject_kind": "check",
      "subject": "auth-oauth",
      "subject_child": "",
      "from_code": "auth.unreachable",
      "to_code": "auth.none_unlisted",
      "from_value": "unverified",
      "to_value": "unverified",
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-09-30",
      "occurred_at": "2026-09-30 06:47:28.829727+00",
      "observed_since": "2026-09-29",
      "source": "scan",
      "summary": "Authorization (Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the whole tool list to see what that exposes.)",
      "link": "https://verifymcp.io/servers/io-usefulapi-particlehealth/particlehealth#chg-chg_01a0f111-7842-739d-aa47-b35bc3b5daa0"
    }
  ],
  "days": [
    {
      "date": "2026-10-04",
      "total": 33,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 5
    },
    {
      "date": "2026-10-03",
      "total": 33,
      "delta": -30,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 5
    },
    {
      "date": "2026-10-02",
      "total": 63,
      "delta": 30,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 10
    },
    {
      "date": "2026-10-01",
      "total": 33,
      "delta": 5,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    },
    {
      "date": "2026-09-30",
      "total": 28,
      "delta": 10,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 2
    },
    {
      "date": "2026-09-29",
      "total": 18,
      "delta": null,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 0
    }
  ]
}