{
  "$schema": "https://verifymcp.io/schemas/changelog.json",
  "server": "services-ottoai-otto",
  "component": "mcp",
  "generated_at": "2026-09-20T16:44:05.558Z",
  "tracking_since": "2026-08-30",
  "counts": {
    "critical": 1,
    "security": 21,
    "functional": 0,
    "cosmetic": 0
  },
  "events": [
    {
      "id": "chg_01a09d43-ba7b-7b42-a61d-04e17520719b",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_native_yield_userop",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_native_yield_userop"
      },
      "occurred_on": "2026-09-14",
      "occurred_at": "2026-09-14 00:14:16.66162+00",
      "observed_since": "2026-09-13",
      "source": "scan",
      "summary": "Tool “otto_native_yield_userop” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a09d43-ba7b-7b42-a61d-04e17520719b"
    },
    {
      "id": "chg_01a09d43-ba7d-79ea-a50b-e48dd8b73753",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_sponsored_account",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_sponsored_account"
      },
      "occurred_on": "2026-09-14",
      "occurred_at": "2026-09-14 00:14:16.66162+00",
      "observed_since": "2026-09-13",
      "source": "scan",
      "summary": "Tool “otto_sponsored_account” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a09d43-ba7d-79ea-a50b-e48dd8b73753"
    },
    {
      "id": "chg_01a09822-bf55-78ec-9a78-7383e561e66c",
      "kind": "tool.added",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_lp_collect_userop",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_lp_collect_userop",
        "destructive": "true"
      },
      "occurred_on": "2026-09-13",
      "occurred_at": "2026-09-13 00:20:09.142707+00",
      "observed_since": "2026-09-12",
      "source": "scan",
      "summary": "New tool “otto_lp_collect_userop”, which the server declares destructive",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a09822-bf55-78ec-9a78-7383e561e66c"
    },
    {
      "id": "chg_01a09822-bf56-778a-9162-8fbda23810d2",
      "kind": "tool.added",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_native_yield_userop",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_native_yield_userop",
        "destructive": "true"
      },
      "occurred_on": "2026-09-13",
      "occurred_at": "2026-09-13 00:20:09.142707+00",
      "observed_since": "2026-09-12",
      "source": "scan",
      "summary": "New tool “otto_native_yield_userop”, which the server declares destructive",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a09822-bf56-778a-9162-8fbda23810d2"
    },
    {
      "id": "chg_01a09822-bf56-7c65-9d4e-1caf27a646ad",
      "kind": "tool.added",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_sponsored_account",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_sponsored_account",
        "destructive": "true"
      },
      "occurred_on": "2026-09-13",
      "occurred_at": "2026-09-13 00:20:09.142707+00",
      "observed_since": "2026-09-12",
      "source": "scan",
      "summary": "New tool “otto_sponsored_account”, which the server declares destructive",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a09822-bf56-7c65-9d4e-1caf27a646ad"
    },
    {
      "id": "chg_01a092ff-9e19-71ab-aa85-4cc4bd36e492",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_prepare_yield_deposit",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_prepare_yield_deposit"
      },
      "occurred_on": "2026-09-12",
      "occurred_at": "2026-09-12 00:23:40.794469+00",
      "observed_since": "2026-09-11",
      "source": "scan",
      "summary": "Tool “otto_prepare_yield_deposit” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a092ff-9e19-71ab-aa85-4cc4bd36e492"
    },
    {
      "id": "chg_01a092ff-9e1a-731a-80a4-6bd6221f2ff2",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_prepare_yield_withdraw",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_prepare_yield_withdraw"
      },
      "occurred_on": "2026-09-12",
      "occurred_at": "2026-09-12 00:23:40.794469+00",
      "observed_since": "2026-09-11",
      "source": "scan",
      "summary": "Tool “otto_prepare_yield_withdraw” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a092ff-9e1a-731a-80a4-6bd6221f2ff2"
    },
    {
      "id": "chg_01a07408-693e-78d7-af25-3e55e87a83bf",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_delegation_cap",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_delegation_cap"
      },
      "occurred_on": "2026-09-06",
      "occurred_at": "2026-09-06 00:05:03.353132+00",
      "observed_since": "2026-09-05",
      "source": "scan",
      "summary": "Tool “otto_delegation_cap” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a07408-693e-78d7-af25-3e55e87a83bf"
    },
    {
      "id": "chg_01a07408-6942-76b4-82a1-728de5588fd7",
      "kind": "tool.added",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_delegation_exit",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_delegation_exit",
        "destructive": "true"
      },
      "occurred_on": "2026-09-06",
      "occurred_at": "2026-09-06 00:05:03.353132+00",
      "observed_since": "2026-09-05",
      "source": "scan",
      "summary": "New tool “otto_delegation_exit”, which the server declares destructive",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a07408-6942-76b4-82a1-728de5588fd7"
    },
    {
      "id": "chg_01a069ba-1bad-795a-9b57-d1930fdf0fd9",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_delegation_fence_status",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_delegation_fence_status"
      },
      "occurred_on": "2026-09-04",
      "occurred_at": "2026-09-04 00:03:19.556431+00",
      "observed_since": "2026-09-03",
      "source": "scan",
      "summary": "Tool “otto_delegation_fence_status” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a069ba-1bad-795a-9b57-d1930fdf0fd9"
    },
    {
      "id": "chg_01a069ba-1bae-786a-80e4-0c41bb07d85a",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_delegation_status",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_delegation_status"
      },
      "occurred_on": "2026-09-04",
      "occurred_at": "2026-09-04 00:03:19.556431+00",
      "observed_since": "2026-09-03",
      "source": "scan",
      "summary": "Tool “otto_delegation_status” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a069ba-1bae-786a-80e4-0c41bb07d85a"
    },
    {
      "id": "chg_01a069ba-1baf-753e-8ac5-c838ccf9a744",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_submit_under_delegation",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_submit_under_delegation"
      },
      "occurred_on": "2026-09-04",
      "occurred_at": "2026-09-04 00:03:19.556431+00",
      "observed_since": "2026-09-03",
      "source": "scan",
      "summary": "Tool “otto_submit_under_delegation” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a069ba-1baf-753e-8ac5-c838ccf9a744"
    },
    {
      "id": "chg_01a06493-3fc0-74d2-b457-bc9e08919209",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_prepare_bridge",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_prepare_bridge"
      },
      "occurred_on": "2026-09-03",
      "occurred_at": "2026-09-03 00:02:46.782841+00",
      "observed_since": "2026-09-02",
      "source": "scan",
      "summary": "Tool “otto_prepare_bridge” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a06493-3fc0-74d2-b457-bc9e08919209"
    },
    {
      "id": "chg_01a06493-3fc2-7c4f-a3d2-4f627fd9640f",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_prepare_perp_order",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_prepare_perp_order"
      },
      "occurred_on": "2026-09-03",
      "occurred_at": "2026-09-03 00:02:46.782841+00",
      "observed_since": "2026-09-02",
      "source": "scan",
      "summary": "Tool “otto_prepare_perp_order” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a06493-3fc2-7c4f-a3d2-4f627fd9640f"
    },
    {
      "id": "chg_01a06493-3fc3-7632-8683-1c1c93cce0bf",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_prepare_polymarket_order",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_prepare_polymarket_order"
      },
      "occurred_on": "2026-09-03",
      "occurred_at": "2026-09-03 00:02:46.782841+00",
      "observed_since": "2026-09-02",
      "source": "scan",
      "summary": "Tool “otto_prepare_polymarket_order” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a06493-3fc3-7632-8683-1c1c93cce0bf"
    },
    {
      "id": "chg_01a06493-3fc3-7d1e-9e91-a65f9342220e",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_prepare_swap",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_prepare_swap"
      },
      "occurred_on": "2026-09-03",
      "occurred_at": "2026-09-03 00:02:46.782841+00",
      "observed_since": "2026-09-02",
      "source": "scan",
      "summary": "Tool “otto_prepare_swap” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a06493-3fc3-7d1e-9e91-a65f9342220e"
    },
    {
      "id": "chg_01a06493-3fc5-715e-8b78-725bf61e0fb6",
      "kind": "tool.description_changed",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_tokenized_equities",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_tokenized_equities"
      },
      "occurred_on": "2026-09-03",
      "occurred_at": "2026-09-03 00:02:46.782841+00",
      "observed_since": "2026-09-02",
      "source": "scan",
      "summary": "Tool “otto_tokenized_equities” rewrote its description, which is the text the model reads",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a06493-3fc5-715e-8b78-725bf61e0fb6"
    },
    {
      "id": "chg_01a05f6b-8647-72dc-8198-e334ca6247d5",
      "kind": "check.verdict",
      "family": "auth-oauth",
      "subject_kind": "check",
      "subject": "auth-oauth",
      "subject_child": "",
      "from_code": "auth.none_no_destructive",
      "to_code": "auth.none_destructive",
      "from_value": "partial",
      "to_value": "fail",
      "materiality": "critical",
      "direction": "regression",
      "score_delta": null,
      "detail": {
        "tool": "otto_submit_under_delegation"
      },
      "occurred_on": "2026-09-02",
      "occurred_at": "2026-09-02 00:01:17.303491+00",
      "observed_since": "2026-09-01",
      "source": "scan",
      "summary": "Authorization (partial → fail)",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a05f6b-8647-72dc-8198-e334ca6247d5"
    },
    {
      "id": "chg_01a05f6b-864a-749b-a711-356255bfe116",
      "kind": "check.verdict",
      "family": "dnssec",
      "subject_kind": "check",
      "subject": "dnssec",
      "subject_child": "",
      "from_code": "dnssec.bogus",
      "to_code": "dnssec.validated",
      "from_value": "fail",
      "to_value": "pass",
      "materiality": "security",
      "direction": "improvement",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-09-02",
      "occurred_at": "2026-09-02 00:01:17.303491+00",
      "observed_since": "2026-09-01",
      "source": "scan",
      "summary": "DNSSEC (fail → pass)",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a05f6b-864a-749b-a711-356255bfe116"
    },
    {
      "id": "chg_01a05f6b-864f-7f40-ab97-6e66fa34d45e",
      "kind": "tool.added",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_delegation_revoke",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_delegation_revoke",
        "destructive": "true"
      },
      "occurred_on": "2026-09-02",
      "occurred_at": "2026-09-02 00:01:17.303491+00",
      "observed_since": "2026-09-01",
      "source": "scan",
      "summary": "New tool “otto_delegation_revoke”, which the server declares destructive",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a05f6b-864f-7f40-ab97-6e66fa34d45e"
    },
    {
      "id": "chg_01a05f6b-8654-7aeb-bb1f-b40822e12467",
      "kind": "tool.added",
      "family": "",
      "subject_kind": "tool",
      "subject": "otto_submit_under_delegation",
      "subject_child": "",
      "from_code": null,
      "to_code": null,
      "from_value": null,
      "to_value": null,
      "materiality": "security",
      "direction": "neutral",
      "score_delta": null,
      "detail": {
        "tool": "otto_submit_under_delegation",
        "destructive": "true"
      },
      "occurred_on": "2026-09-02",
      "occurred_at": "2026-09-02 00:01:17.303491+00",
      "observed_since": "2026-09-01",
      "source": "scan",
      "summary": "New tool “otto_submit_under_delegation”, which the server declares destructive",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a05f6b-8654-7aeb-bb1f-b40822e12467"
    },
    {
      "id": "chg_01a05a44-b112-7282-b209-9d3f36246ef0",
      "kind": "check.verdict",
      "family": "dnssec",
      "subject_kind": "check",
      "subject": "dnssec",
      "subject_child": "",
      "from_code": "dnssec.validated",
      "to_code": "dnssec.bogus",
      "from_value": "pass",
      "to_value": "fail",
      "materiality": "security",
      "direction": "regression",
      "score_delta": null,
      "detail": {},
      "occurred_on": "2026-09-01",
      "occurred_at": "2026-09-01 00:00:46.269637+00",
      "observed_since": "2026-08-31",
      "source": "scan",
      "summary": "DNSSEC (pass → fail)",
      "link": "https://verifymcp.io/servers/services-ottoai-otto/mcp#chg-chg_01a05a44-b112-7282-b209-9d3f36246ef0"
    }
  ],
  "days": [
    {
      "date": "2026-09-19",
      "total": 71,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 63,
        "to": 67,
        "delta": 4,
        "others": [],
        "accrual": {
          "code": "stability.building_history",
          "from_days": 19,
          "to_days": 20
        },
        "partial": false,
        "compared_to": "2026-09-18",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 63 to 67. That category is still filling its 30-day observation window: 19 days of observed history at the previous scan, 20 at this one. The score rises as the window fills, whether or not the server changes."
      },
      "event_count": 0
    },
    {
      "date": "2026-09-17",
      "total": 70,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 57,
        "to": 60,
        "delta": 3,
        "others": [],
        "accrual": {
          "code": "stability.building_history",
          "from_days": 17,
          "to_days": 18
        },
        "partial": false,
        "compared_to": "2026-09-16",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 57 to 60. That category is still filling its 30-day observation window: 17 days of observed history at the previous scan, 18 at this one. The score rises as the window fills, whether or not the server changes."
      },
      "event_count": 0
    },
    {
      "date": "2026-09-15",
      "total": 69,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 50,
        "to": 53,
        "delta": 3,
        "others": [],
        "accrual": {
          "code": "stability.building_history",
          "from_days": 15,
          "to_days": 16
        },
        "partial": false,
        "compared_to": "2026-09-14",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 50 to 53. That category is still filling its 30-day observation window: 15 days of observed history at the previous scan, 16 at this one. The score rises as the window fills, whether or not the server changes."
      },
      "event_count": 0
    },
    {
      "date": "2026-09-14",
      "total": 68,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 4
    },
    {
      "date": "2026-09-13",
      "total": 68,
      "delta": 1,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 4
    },
    {
      "date": "2026-09-12",
      "total": 67,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 2
    },
    {
      "date": "2026-09-10",
      "total": 67,
      "delta": 1,
      "tracked": true,
      "explained": false,
      "beyond_event_horizon": false,
      "attribution": {
        "category": "Stability & Change Management",
        "from": 33,
        "to": 37,
        "delta": 4,
        "others": [],
        "accrual": {
          "code": "stability.building_history",
          "from_days": 10,
          "to_days": 11
        },
        "partial": false,
        "compared_to": "2026-09-09",
        "summary": "No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes."
      },
      "event_count": 0
    },
    {
      "date": "2026-09-09",
      "total": 66,
      "delta": 0,
      "tracked": true,
      "explained": true,
      "beyond_event_horizon": false,
      "attribution": null,
      "event_count": 1
    }
  ]
}