---
schema: "interfacedelta-service-md/1"
target_key: "sha256:d64452056acf9c1d7d35395a44cd47fe6ea54d6f0eda07986c39e8ef7f2fe846"
origin: "https://mcp.787daily.com"
protocols: ["mcp"]
observed_at: "2026-11-13T22:05:01.296Z"
generated_at: "2026-11-14T10:21:14.278Z"
record_url: "https://interfacedelta.com/atlas/sha256:d64452056acf9c1d7d35395a44cd47fe6ea54d6f0eda07986c39e8ef7f2fe846"
record_api: "https://interfacedelta.com/api/v1/record/services/sha256:d64452056acf9c1d7d35395a44cd47fe6ea54d6f0eda07986c39e8ef7f2fe846"
source: "InterfaceDelta atlas"
license_note: "Use of this record is governed by https://interfacedelta.com/terms."
---

# Service record: https://mcp.787daily.com

## Identity
- Origin: https://mcp.787daily.com
- Endpoints: https://mcp.787daily.com/mcp
- Protocols: mcp
- Registry names: com.787daily/mcp
- First retained observation: 2026-11-13T22:05:01.296Z
- Latest observation: 2026-11-13T22:05:01.296Z

## Tools
MCP tools, OpenAPI operations, WebMCP tools and A2A skills; excludes prompts and resources.
Total capabilities: 44; non-tool capabilities: 0.
- Tool 1: boating\_rule (mcp); inputs: group, limit, topic; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 2: find\_anchorages (mcp); inputs: area, hurricaneHarbor, limit, windFrom; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 3: find\_dive\_sites (mcp); inputs: entry, feature, level, limit, maxDepthFt, region, reserve; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 4: find\_marinas (mcp); inputs: area, fuel, haulOut, limit, minDraftFt; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 5: find\_paddle\_places (mcp); inputs: craft, level, limit, town, type; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 6: find\_surf\_breaks (mcp); inputs: level, limit, region, swellFrom, type; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 7: find\_wind\_spots (mcp); inputs: level, limit, region, sport, water, windFrom; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 8: flood\_zone\_link (mcp); inputs: town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 9: get\_airport\_status (mcp); inputs: none shown; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 10: get\_beach\_water\_quality (mcp); inputs: beach; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 11: get\_by\_entity (mcp); inputs: limit, name, since; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 12: get\_by\_municipality (mcp); inputs: limit, name, since; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 13: get\_conditions (mcp); inputs: spot; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 14: get\_cost\_of\_living (mcp); inputs: town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 15: get\_daily\_briefing (mcp); inputs: limit; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 16: get\_events (mcp); inputs: category, from, limit, to, town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 17: get\_ferry\_status (mcp); inputs: route; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 18: get\_fuel\_prices (mcp); inputs: days; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 19: get\_glossary (mcp); inputs: group, term; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 20: get\_government\_contracts (mcp); inputs: agency, contractor; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 21: get\_grid\_reliability (mcp); inputs: none shown; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 22: get\_latest\_analysis (mcp); inputs: series; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 23: get\_legislature (mcp); inputs: limit, query; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 24: get\_power\_status (mcp); inputs: days, region; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 25: get\_pr\_holidays (mcp); inputs: date, year; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 26: get\_recent\_earthquakes (mcp); inputs: hours, minMagnitude; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 27: get\_recovery\_money (mcp); inputs: agency, town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 28: get\_reservoir\_levels (mcp); inputs: days, reservoir; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 29: get\_road\_closures (mcp); inputs: road, town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 30: get\_safety\_stats (mcp); inputs: town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 31: get\_town\_living (mcp); inputs: town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 32: get\_town\_weather (mcp); inputs: town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 33: get\_trail\_conditions (mcp); inputs: area, trail; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 34: get\_tropical\_status (mcp); inputs: none shown; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 35: get\_water\_status (mcp); inputs: reservoir; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 36: keyword\_search\_news (mcp); inputs: limit, query, section; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 37: list\_condition\_spots (mcp); inputs: none shown; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 38: list\_sections (mcp); inputs: none shown; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 39: passage\_distance (mcp); inputs: from, speedKt, to; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 40: search\_news (mcp); inputs: query, topK; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 41: search\_pr\_news (mcp); inputs: limit, query, section; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 42: trip\_plan\_link (mcp); inputs: days, interest, start, town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 43: water\_conditions\_now (mcp); inputs: region; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
- Tool 44: wind\_odds (mcp); inputs: town; inputs omitted: 0; annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}
Tools omitted: 0.

## Effect readings (AI)
- Tool 1 (boating\_rule): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 2 (find\_anchorages): ◇ AI reading; state: counted; reads (confidence 0.86); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 3 (find\_dive\_sites): ◇ AI reading; state: counted; reads (confidence 0.85); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 4 (find\_marinas): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 5 (find\_paddle\_places): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 6 (find\_surf\_breaks): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 7 (find\_wind\_spots): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 8 (flood\_zone\_link): ◇ AI reading; state: counted; reads (confidence 0.8); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 9 (get\_airport\_status): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 10 (get\_beach\_water\_quality): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 11 (get\_by\_entity): ◇ AI reading; state: counted; reads (confidence 0.905); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 12 (get\_by\_municipality): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 13 (get\_conditions): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 14 (get\_cost\_of\_living): ◇ AI reading; state: counted; reads (confidence 0.84); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 15 (get\_daily\_briefing): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 16 (get\_events): ◇ AI reading; state: counted; reads (confidence 0.93); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 17 (get\_ferry\_status): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 18 (get\_fuel\_prices): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 19 (get\_glossary): ◇ AI reading; state: counted; reads (confidence 0.8); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 20 (get\_government\_contracts): ◇ AI reading; state: counted; reads (confidence 0.885); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 21 (get\_grid\_reliability): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 22 (get\_latest\_analysis): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 23 (get\_legislature): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 24 (get\_power\_status): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 25 (get\_pr\_holidays): ◇ AI reading; state: counted; reads (confidence 0.87); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 26 (get\_recent\_earthquakes): ◇ AI reading; state: counted; reads (confidence 0.85); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 27 (get\_recovery\_money): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 28 (get\_reservoir\_levels): ◇ AI reading; state: counted; reads (confidence 0.92); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 29 (get\_road\_closures): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 30 (get\_safety\_stats): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 31 (get\_town\_living): ◇ AI reading; state: counted; reads (confidence 0.91); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 32 (get\_town\_weather): ◇ AI reading; state: counted; reads (confidence 0.85); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 33 (get\_trail\_conditions): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 34 (get\_tropical\_status): ◇ AI reading; state: counted; reads (confidence 0.9); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 35 (get\_water\_status): ◇ AI reading; state: counted; reads (confidence 0.86); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 36 (keyword\_search\_news): ◇ AI reading; state: counted; reads (confidence 0.92); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 37 (list\_condition\_spots): ◇ AI reading; state: counted; reads (confidence 0.881); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 38 (list\_sections): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 40 (search\_news): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 41 (search\_pr\_news): ◇ AI reading; state: counted; reads (confidence 0.86); lens: side-effects@1; model: claude-haiku-5.5.
- Tool 43 (water\_conditions\_now): ◇ AI reading; state: counted; reads (confidence 0.88); lens: side-effects@1; model: claude-haiku-5.5.

## Change history
No changes recorded in the retained history.

## Payment rails
- Protocols observed: none.
- HTTP 402 seen in retained observations: false.

## Not covered
- We don't call tools.
- We don't rate or certify.
- We don't publish prices.
- We cover only what was observed.

## Evidence
- Identity: observed / declared; observation time: 2026-11-13T22:05:01.296Z.
- Tools: declared; observation time: 2026-11-13T22:05:01.296Z.
- Effect readings (AI): AI reading; observation time: 2026-11-13T22:05:01.296Z.
- Change history: observed; observation time: 2026-11-13T22:05:01.296Z; change observation times: none.
- Payment rails: observed; observation time: 2026-11-13T22:05:01.296Z.

```json
{
  "schema": "interfacedelta-service-md/1",
  "target_key": "sha256:d64452056acf9c1d7d35395a44cd47fe6ea54d6f0eda07986c39e8ef7f2fe846",
  "origin": "https://mcp.787daily.com",
  "protocols": [
    "mcp"
  ],
  "observed_at": "2026-11-13T22:05:01.296Z",
  "generated_at": "2026-11-14T10:21:14.278Z",
  "record_url": "https://interfacedelta.com/atlas/sha256:d64452056acf9c1d7d35395a44cd47fe6ea54d6f0eda07986c39e8ef7f2fe846",
  "record_api": "https://interfacedelta.com/api/v1/record/services/sha256:d64452056acf9c1d7d35395a44cd47fe6ea54d6f0eda07986c39e8ef7f2fe846",
  "source": "InterfaceDelta atlas",
  "license_note": "Use of this record is governed by https://interfacedelta.com/terms.",
  "identity": {
    "origin": "https://mcp.787daily.com",
    "endpoints": [
      "https://mcp.787daily.com/mcp"
    ],
    "protocols": [
      "mcp"
    ],
    "registry_names": [
      "com.787daily/mcp"
    ],
    "first_retained_observation": "2026-11-13T22:05:01.296Z",
    "latest_observation": "2026-11-13T22:05:01.296Z"
  },
  "tools": [
    {
      "name": "boating_rule",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "group",
        "limit",
        "topic"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "find_anchorages",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "area",
        "hurricaneHarbor",
        "limit",
        "windFrom"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.86
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "find_dive_sites",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "entry",
        "feature",
        "level",
        "limit",
        "maxDepthFt",
        "region",
        "reserve"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.85
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "find_marinas",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "area",
        "fuel",
        "haulOut",
        "limit",
        "minDraftFt"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "find_paddle_places",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "craft",
        "level",
        "limit",
        "town",
        "type"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "find_surf_breaks",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "level",
        "limit",
        "region",
        "swellFrom",
        "type"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "find_wind_spots",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "level",
        "limit",
        "region",
        "sport",
        "water",
        "windFrom"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "flood_zone_link",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.8
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_airport_status",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_beach_water_quality",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "beach"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_by_entity",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "limit",
        "name",
        "since"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.905
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_by_municipality",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "limit",
        "name",
        "since"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_conditions",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "spot"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_cost_of_living",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.84
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_daily_briefing",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "limit"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_events",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "category",
        "from",
        "limit",
        "to",
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.93
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_ferry_status",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "route"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_fuel_prices",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "days"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_glossary",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "group",
        "term"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.8
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_government_contracts",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "agency",
        "contractor"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.885
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_grid_reliability",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_latest_analysis",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "series"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_legislature",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "limit",
        "query"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_power_status",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "days",
        "region"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_pr_holidays",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "date",
        "year"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.87
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_recent_earthquakes",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "hours",
        "minMagnitude"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.85
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_recovery_money",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "agency",
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_reservoir_levels",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "days",
        "reservoir"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.92
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_road_closures",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "road",
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_safety_stats",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_town_living",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.91
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_town_weather",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.85
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_trail_conditions",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "area",
        "trail"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_tropical_status",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.9
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "get_water_status",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "reservoir"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.86
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "keyword_search_news",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "limit",
        "query",
        "section"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.92
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "list_condition_spots",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.881
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "list_sections",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "passage_distance",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "from",
        "speedKt",
        "to"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": null
    },
    {
      "name": "search_news",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "query",
        "topK"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "search_pr_news",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "limit",
        "query",
        "section"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.86
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "trip_plan_link",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "days",
        "interest",
        "start",
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": null
    },
    {
      "name": "water_conditions_now",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "region"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": {
        "marker": "◇ AI reading",
        "state": "counted",
        "classes": [
          {
            "class": "reads",
            "confidence": 0.88
          }
        ],
        "lens": "side-effects@1",
        "model": "claude-haiku-5.5"
      }
    },
    {
      "name": "wind_odds",
      "kind": "mcp.tool",
      "protocol": "mcp",
      "inputs": [
        "town"
      ],
      "inputs_omitted": 0,
      "annotations": {
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": true
      },
      "effects": null
    }
  ],
  "capability_count": 44,
  "non_tool_capability_count": 0,
  "tool_count_scope": "MCP tools, OpenAPI operations, WebMCP tools and A2A skills; excludes prompts and resources.",
  "tools_omitted": 0,
  "tools_state": "recorded",
  "changes": [],
  "payment_rails": {
    "protocols": [],
    "http_402_seen": false
  },
  "not_covered": [
    "We don't call tools.",
    "We don't rate or certify.",
    "We don't publish prices.",
    "We cover only what was observed."
  ],
  "evidence": [
    {
      "section": "Identity",
      "classes": [
        "observed",
        "declared"
      ],
      "observed_at": "2026-11-13T22:05:01.296Z"
    },
    {
      "section": "Tools",
      "classes": [
        "declared"
      ],
      "observed_at": "2026-11-13T22:05:01.296Z"
    },
    {
      "section": "Effect readings (AI)",
      "classes": [
        "AI reading"
      ],
      "observed_at": "2026-11-13T22:05:01.296Z"
    },
    {
      "section": "Change history",
      "classes": [
        "observed"
      ],
      "observed_at": "2026-11-13T22:05:01.296Z",
      "observation_times": []
    },
    {
      "section": "Payment rails",
      "classes": [
        "observed"
      ],
      "observed_at": "2026-11-13T22:05:01.296Z"
    }
  ]
}
```
