TrueFixR + AtlasCast

Address-level storm event data and forecasted property risk API for AI agents

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
93%
Naming quality
97%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'get_property_storm_history_report' name length outside 3-30 rangein get_property_storm_history_report

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,482Tokens (tool definitions)
~3.3 KBTypical response size
Moderate attention impact (1.94% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "atlascast-truefixr": {
      "url": "https://mcp.atlasunited.io/mcp"
    }
  }
}

Remote endpoints

https://mcp.atlasunited.io/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_weather_data(dataset, state, county, counties, lat, ...)

General-purpose query -- supports every real dataset (see the enum below). Prefer the dedicated convenience tools when they fit: get_storm_history (one county's past storms), get_risk_forecast (one county's forecast), get_address_report (one property's 365-day snapshot), get_property_storm_history_report (one property's full 2003-present multi-peril archive), get_current_weather (live point weather). Use THIS tool directly for 'coverage' (county coverage check), 'facilities', 'wildfire', 'at_risk', 'daily', or a 'counties' multi-county rollup (comma-separated, max 15), or any parameter combination the dedicated tools don't expose (radius_mi, date_of_loss, window, months, category, limit, kind, details). Call with no arguments to get the full API menu. addresses=false (default) is a FREE preview -- shape varies by dataset (counts/severities for storms, line count + price for history, full field response for weather). addresses=true (or details=true for weather) returns the real paid data and requires the user's own Atlas United Data API account key, or an x402 crypto payment. HARD RULE when called with no arguments: this returns the full menu. Output that entire raw response back to the user verbatim -- every dataset, every field, every example. Do not summarize or paraphrase. A shortened version is wrong even if it looks complete.

Input Schema

{
  "type": "object",
  "properties": {
    "dataset": {
      "type": "string",
      "enum": [
        "storms",
        "risk",
        "address",
        "coverage",
        "facilities",
        "wildfire",
        "at_risk",
        "daily",
        "history",
        "weather",
        "hazard_score"
      ],
      "description": "Target dataset. Default storms."
    },
    "state": {
      "type": "string",
      "description": "2-letter US state code, e.g. TX."
    },
    "county": {
      "type": "string",
      "description": "County name without the word 'County', e.g. Dallas."
    },
    "counties": {
      "type": "string",
      "description": "Comma-separated county names (max 15) plus state, for a multi-county rollup. Free preview only."
    },
    "lat": {
      "type": "number",
      "description": "Latitude in decimal degrees."
    },
    "lon": {
      "type": "number",
      "description": "Longitude in decimal degrees."
    },
    "address": {
      "type": "string",
      "description": "Street address, for dataset=address."
    },
    "peril": {
      "type": "string",
      "description": "Storm/risk type filter. Used by dataset=storms and dataset=risk (narrows to one storm type -- use the exact names returned under storm_types in a free preview) and by dataset=at_risk (narrows to one peril bucket, a different real meaning -- check that dataset's own preview for its real values). Common storms/risk values: HAIL, THUNDERSTORM_WIND, FLASH_FLOOD, HEAVY_RAIN, FLOOD, TORNADO."
    },
    "min_severity": {
      "type": "number",
      "description": "Minimum measured severity (e.g. 1.5 = 1.5 inch hail). Check severity_by_type in a preview for the real unit."
    },
    "max_severity": {
      "type": "number",
      "description": "Maximum measured severity."
    },
    "days": {
      "type": "integer",
      "description": "Look-back window in days where supported."
    },
    "addresses": {
      "type": "boolean",
      "default": false,
      "description": "false = free preview. true = address-level records -- requires EITHER the user's own Atlas United Data API account key (Authorization header) OR an x402 payment (see x_payment param below); no account needed for the x402 path."
    },
    "x_payment": {
      "type": "string",
      "description": "Optional. A signed x402 protocol payment payload (base64), used instead of an API key to pay for ONE address-level pull in USDC on Base network. If addresses=true and neither an API key nor x_payment is provided, the response is an HTTP 402 with full payment instructions (pay_to address, amount, network) an agent can act on to construct this payload and retry."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "csv"
      ],
      "default": "json",
      "description": "Response format. json (default) or csv."
    },
    "window": {
      "type": "string",
      "enum": [
        "24h",
        "48h",
        "3d",
        "5d",
        "7d",
        "10d"
      ],
      "description": "dataset=risk only. Forecast window. Default 24h."
    },
    "months": {
      "type": "integer",
      "description": "dataset=storms only. Returns month-bucketed history totals instead of individual leads, for the last N months."
    },
    "category": {
      "type": "string",
      "description": "dataset=facilities only. Facility category filter."
    },
    "limit": {
      "type": "integer",
      "description": "Max records on the real paid pull (default 2000, real per-dataset caps still apply -- e.g. storms caps at 5000)."
    },
    "kind": {
      "type": "string",
      "description": "dataset=at_risk only. Narrows to 'schools' or 'businesses'."
    },
    "radius_mi": {
      "type": "number",
      "description": "dataset=history or dataset=weather only. Search radius in miles. Default 5, max 25."
    },
    "date_of_loss": {
      "type": "string",
      "description": "dataset=history only. YYYY-MM-DD. Anchors the report around this date -- returns a real yes/no on whether weather data supports a loss that day, plus real events immediately before and after it."
    },
    "details": {
      "type": "boolean",
      "default": false,
      "description": "dataset=weather only. true = full 164-field pull, billed $0.0002/call. false (default) = free 10-field lean response, no account needed. Equivalent to addresses=true for this dataset."
    }
  }
}
🟢get_storm_history(state, county, peril, min_severity, days)

FREE preview of reported and radar-detected past storm events (hail, wind, tornado, flooding) for a county: event counts, storm types, measured severities and repeat-hit properties.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "description": "2-letter US state code, e.g. TX."
    },
    "county": {
      "type": "string",
      "description": "County name without the word 'County', e.g. Dallas."
    },
    "peril": {
      "type": "string",
      "description": "Storm/risk type filter. Used by dataset=storms and dataset=risk (narrows to one storm type -- use the exact names returned under storm_types in a free preview) and by dataset=at_risk (narrows to one peril bucket, a different real meaning -- check that dataset's own preview for its real values). Common storms/risk values: HAIL, THUNDERSTORM_WIND, FLASH_FLOOD, HEAVY_RAIN, FLOOD, TORNADO."
    },
    "min_severity": {
      "type": "number",
      "description": "Minimum severity, e.g. 1.75 for golf-ball hail."
    },
    "days": {
      "type": "integer",
      "description": "Look-back window in days (up to 365)."
    }
  },
  "required": [
    "state",
    "county"
  ]
}
🟢get_risk_forecast(state, county, window, peril)

FREE AtlasCast forecast for a county: severe weather risk 0 to 16 days ahead with county risk grades and property exposure. Forecast risk, not storms that already happened. Refreshed several times a day from NOAA models.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "description": "2-letter US state code, e.g. TX."
    },
    "county": {
      "type": "string",
      "description": "County name without the word 'County', e.g. Dallas."
    },
    "window": {
      "type": "string",
      "enum": [
        "24h",
        "48h",
        "3d",
        "5d",
        "7d",
        "10d"
      ],
      "description": "Forecast window. Default 24h."
    },
    "peril": {
      "type": "string",
      "description": "Narrows the forecast to one storm type -- check a free preview's storm_types for real values available in this window."
    }
  },
  "required": [
    "state",
    "county"
  ]
}
🟢get_property_storm_history_report(address, lat, lon, radius_mi, date_of_loss, ...)

The FULL real archive for one property: hail, wind, flood/heavy rain, lightning, and tornado, 2003 to present, in one report -- not the 365-day snapshot (use get_address_report for that). Free preview shows the real report-line count and exact price before anything is paid. Paid report is billed per real report line: $0.05/line, $10.00 minimum per report. Optional date_of_loss anchors the report around one specific date with a real yes/no on whether weather data supports a loss that day, plus the real events immediately before and after it.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Street address. Real server-side geocoding -- no separate geocoding step needed."
    },
    "lat": {
      "type": "number",
      "description": "Latitude, alternative to address."
    },
    "lon": {
      "type": "number",
      "description": "Longitude, alternative to address."
    },
    "radius_mi": {
      "type": "number",
      "description": "Search radius in miles. Default 5, max 25."
    },
    "date_of_loss": {
      "type": "string",
      "description": "Optional, YYYY-MM-DD. Anchors the report around this date."
    },
    "addresses": {
      "type": "boolean",
      "default": false,
      "description": "false = free preview (line count + price). true = the real full report -- requires the user's own Atlas United Data API account key, or an x402 payment."
    },
    "x_payment": {
      "type": "string",
      "description": "Optional signed x402 payment payload, used instead of an API key."
    }
  }
}
🟢get_current_weather(address, lat, lon, details, x_payment)

Real live point-in-time weather for ANY US coordinate -- 164 real HRRR-based fields, hourly refresh, plus MRMS precip nowcast and NWS severe alerts. FREE by default: the lean 10-field response needs no account. details=true returns the full 164-field pull, billed $0.0002/call (not per-address).

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Street address. Real server-side geocoding -- no separate geocoding step needed."
    },
    "lat": {
      "type": "number",
      "description": "Latitude, alternative to address."
    },
    "lon": {
      "type": "number",
      "description": "Longitude, alternative to address."
    },
    "details": {
      "type": "boolean",
      "default": false,
      "description": "true = full 164-field pull, $0.0002/call, requires an API key or x402 payment. false (default) = free 10-field lean response."
    },
    "x_payment": {
      "type": "string",
      "description": "Optional signed x402 payment payload, used instead of an API key when details=true."
    }
  }
}
🟢get_address_report(address, state, county, lat, lon)

ONE property, 365-day snapshot: past storm history (up to 365 days back, not the full archive) plus current forecast risk. Give an address with county+state, or lat/lon. For the FULL 2003-present multi-peril archive use get_property_storm_history_report instead -- this tool's real history window is capped at 365 days.

Input Schema

{
  "type": "object",
  "properties": {
    "address": {
      "type": "string",
      "description": "Street address."
    },
    "state": {
      "type": "string",
      "description": "2-letter US state code, e.g. TX."
    },
    "county": {
      "type": "string",
      "description": "County name without the word 'County', e.g. Dallas."
    },
    "lat": {
      "type": "number",
      "description": "Latitude."
    },
    "lon": {
      "type": "number",
      "description": "Longitude."
    }
  }
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools