Skip to main content
Glama

Swath MCP Server

MCP server for Swath APIAmerica's first AI-native storm intelligence API. Radar-verified hail and damaging-wind swaths, and every property under them, inside Claude, ChatGPT, or any MCP client.

swath-mcp MCP server

Tools

Tool

What it does

find_storms

Radar-verified storms (hail ≥ threshold, wind) for an area/timeframe

get_swath_report

Every property under a swath — roof age, owner-occupancy, assessed value

get_report_quote

Exact credit cost of a report before you run it

email_report

Emails you the report summary

lookup_property

Storm history + parcel intel for one address

create_monitor / list_monitors

Watch a territory; webhook + email alerts on radar verification

get_usage

Credits used / remaining

show_swath_map

Gradient swath map image

Related MCP server: SHEARLINE

Quick start (Claude Desktop)

{
  "mcpServers": {
    "swath": {
      "command": "npx",
      "args": ["-y", "tsx", "/path/to/swath-mcp/src/index.ts"],
      "env": { "SWATH_API_KEY": "sk_..." }
    }
  }
}

No key yet? Every tool answers with a signup hint — get a free key (100 credits) at swathapi.com.

claude.ai / ChatGPT users: you don't need this repo — add the hosted connector instead: https://swathapi.com/mcp (OAuth, no key handling). See swathapi.com/integrations.

Env

  • SWATH_API_KEY — your API key (sk_...)

  • SWATH_API_URL — API base (default https://swathapi.com)

Data honesty

Hail is verified against NOAA MRMS radar; wind against measured NWS storm reports. No forecasts, no fabricated uptime — see swathapi.com/status.

Developed by vibecodebeast.ai.

Available Tools

8 tools
email_reportA

Email a swath report summary (max hail/wind, swath area, county, affected-property count, storm link) to your account email — the address your API key was signed up with; no other recipients possible. Summary bills 1 credit (like get_report_quote); pass limit to also include the top N properties by exposure, billed like get_swath_report (1 credit/property + fresh surcharges, 10-credit minimum).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoinclude the top N properties in the email (billed like get_swath_report); omit for a 1-credit summary
storm_idYesStorm id (sw_...) or swath id from find_storms
value_maxNo
value_minNo
roof_age_minNo
roof_materialNo
owner_occupiedNo
year_built_afterNo
year_built_beforeNo
min_exposure_scoreNo

TDQS

A3.8/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description explains billing impacts (1 credit for summary, 1 credit/property with limit), recipient restriction, and that limit includes top N properties. Annotations provide no behavioral details, so description adds significant value. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loading the core action and key constraints. It is concise, though could be slightly more structured to highlight parameter groupings.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 10 parameters and no output schema, the description leaves most filter parameters unexplained and does not mention success/error outcomes. It provides sufficient context for the core function but is incomplete for full usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 20% (storm_id and limit have descriptions). The description explains limit's effect but not the other 8 parameters (value_max, value_min, etc.), which likely filter properties. The description fails to compensate for missing schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it emails a swath report summary to your account email, listing what the summary includes (max hail/wind, swath area, etc.). It distinguishes from siblings like find_storms and show_swath_map by focusing on email delivery.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides detailed usage context: it emails only to the account email, explains billing for summary vs. including properties with limit, and references similar tools. However, it does not explicitly state when not to use this tool or suggest alternatives for viewing without emailing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

find_stormsA
Read-only

List radar-verified hail/wind storm events (hail measured by NOAA radar, wind from measured NWS gust and damage reports — never forecasts). Returns storm ids usable with get_swath_report and show_swath_map.

ParametersJSON Schema
NameRequiredDescriptionDefault
bboxNowest,south,east,north in lon/lat, e.g. -97.5,32.5,-96.4,33.3
typeNo
limitNo
sinceNoISO timestamp or date; e.g. 2026-07-18

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the read-only nature (consistent with annotations), data sources, and output format. It adds context beyond annotations by specifying the verification method and excluding forecasts.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences), front-loaded with the core purpose, and includes essential details without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the output (storm IDs) and how to use them with other tools, but lacks details on parameter usage. Given the moderate complexity (4 optional parameters, no output schema), it is partially complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description does not add meaning beyond the schema for the parameters. With only 50% schema coverage, the description should compensate but fails to describe the type, limit, bbox, or since parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists radar-verified hail/wind storm events, specifying the data source and that it returns storm IDs for use with other tools. It effectively distinguishes itself by noting it is not based on forecasts.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains when to use the tool (to list verified events) and hints at the downstream use with get_swath_report and show_swath_map. However, it does not explicitly state when not to use it or compare with siblings like list_monitors.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_report_quoteA
Read-only

Cost preview for get_swath_report (1 credit): counts cached properties matching the filters without returning rows, plus a clearly-labeled estimate of fresh-fetchable records. Billing always uses actual counts. Use before pulling large reports.

ParametersJSON Schema
NameRequiredDescriptionDefault
storm_idYesStorm id (sw_...) or swath id from find_storms
value_maxNo
value_minNo
roof_age_minNo
roof_materialNo
owner_occupiedNo
year_built_afterNo
year_built_beforeNo
min_exposure_scoreNo

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint: true. Description adds that it counts cached properties and estimates fresh-fetchable records, disclosing non-destructive behavior and billing info. No contradiction.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences front-loaded with purpose. No wasted words; every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but description outlines output shape (counts cached and estimate of fresh records). Parameter details are sparse; however, for a preview tool with read-only safety, it's minimally adequate but could elaborate on output format.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is only 11%, and description does not elaborate on individual parameters (e.g., value_min, roof_material). Only storm_id has a description in schema. The description mentions 'filters' generically but adds no specific param meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description specifies it's a cost preview for get_swath_report, clearly distinct from sibling tools like get_swath_report (returns rows) and find_storms (finds storms). Uses specific verb 'preview' and resource 'cost'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States 'Use before pulling large reports,' providing clear context. Lacks explicit when-not-to-use or alternatives, but the usage instruction is straightforward and helpful.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_swath_reportA
Read-only

★ The Swath Report: every property inside a storm swath, each scored with the hail size measured at that location (exposure.hail_in, exposure.score 0-1). Bills 1 credit per property returned +25/fresh-fetched record (10 min); preview with get_report_quote.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
offsetNo
storm_idYesStorm id (sw_...) or swath id from find_storms
value_maxNo
value_minNo
roof_age_minNo
roof_materialNo
owner_occupiedNo
year_built_afterNo
year_built_beforeNo
min_exposure_scoreNo

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses cost structure (1 credit per property +25/fresh-fetched record with 10-minute cache) and output details (exposure.hail_in, exposure.score). This adds significant value beyond the readOnlyHint annotation, making the tool's behavior fully transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long and front-loaded with the main purpose. Every sentence earns its place, providing purpose, output details, and usage guidance without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (11 parameters, no output schema), the description covers the output structure and cost but leaves many optional input parameters unexplained. It is adequate but not fully complete for an agent to use all features correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With only 9% schema description coverage, the description does not explain the 10 undocumented parameters like limit, offset, roof_material, etc. The output fields are mentioned, but input filter semantics are missing, failing to compensate for the schema gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool returns every property inside a storm swath with hail size scores (exposure.hail_in, exposure.score 0-1). This is a specific verb-resource combination that distinguishes it from siblings like find_storms (which finds storms, not properties) and get_report_quote (which previews costs).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions billing details and suggests previewing with get_report_quote, providing a clear alternative for cost estimation. However, it does not explicitly state when to use this tool versus other property-lookup tools like lookup_property, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_usageA
Read-only

Your API plan, credits used this month, and rate limit.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=true, so the tool is known to be safe. Description adds specific return values (plan, credits, rate limit) but no additional behavioral traits like rate limiting or side effects. It adds some value beyond annotations but not rich behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single-sentence description is extremely concise, front-loaded with the key verb and resource, and contains no unnecessary words or redundancies.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description fully covers what the tool returns: API plan, credits used, and rate limit. No missing information is apparent.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has 0 parameters with 100% coverage. No parameter descriptions are needed, so baseline is 4. Description does not add parameter semantics but that is appropriate given no parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool returns 'API plan, credits used this month, and rate limit'. It uses a specific verb (get/returns) and resource (usage), and the sibling tools (find_storms, list_monitors, etc.) are about different domains, so it distinguishes well.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear context for when to use this tool: when needing usage info. No exclusions or alternatives are explicitly stated, but the simplicity of the tool (no parameters) and the distinct sibling tools make it adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_monitorsA
Read-only

List your registered coverage monitors.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so the description does not add behavioral disclosure beyond the annotation. No additional traits (e.g., scope, pagination) are described.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with no unnecessary words, efficiently conveying the tool's purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of parameters, output schema, and the readOnly annotation, the description provides sufficient context for a simple list tool. No additional details are needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the baseline is 4. The description does not need to add parameter information, as the schema is fully covered.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('List') and resource ('your registered coverage monitors'), clearly indicating the tool's function. It distinguishes itself from sibling tools like 'create_monitor' and unrelated tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly states when to use the tool (to list monitors). No explicit when-not or alternatives are given, but the context is simple with no parameters, and no sibling tool overlaps directly.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

lookup_propertyA
Read-only

Full property record for one address (or lat/lng, or parcel id): year built, sqft, roof age and how it was derived, owner-occupancy, assessed value. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
latNo
lngNo
addressNo
parcel_idNo

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description adds the credit cost (2 credits) and details about return fields (roof age derivation, owner-occupancy) beyond the readOnlyHint annotation. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One concise sentence that front-loads the purpose and key details with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description covers purpose, input options, key return fields, and credit cost. Minor omission: it could clarify that lat and lng are required together as coordinates.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, and the description adds that the four parameters are alternate identifiers (address, lat/lng, parcel_id). However, it doesn't specify that lat and lng must be used together or address format, leaving semantic gaps.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a full property record for a single address, coordinates, or parcel ID. It lists specific data fields and distinguishes from sibling tools in other domains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use (property lookup by identifier) but does not explicitly state when not to use or name alternatives. However, sibling tools are clearly different domains, so context is clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

show_swath_mapA
Read-only

A storm swath's polygon as GeoJSON (render it on any map) plus severity stats and a viewer URL.

ParametersJSON Schema
NameRequiredDescriptionDefault
storm_idYesStorm id (sw_...) or swath id

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

ReadOnlyHint is already provided; the description adds return details (GeoJSON, stats, URL) but does not disclose additional behavioral traits like rate limits or data freshness.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that covers what the tool does and its main outputs without unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With one parameter, full schema coverage, and the description explaining all return components, the tool is fully specified for its intended use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and the description does not add new meaning beyond the schema's storm_id description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool returns a storm swath's polygon as GeoJSON along with severity stats and a viewer URL, distinguishing it from search-oriented or monitor tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for rendering swaths on a map but does not explicitly exclude alternative tools. However, the context from sibling names makes usage clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.3/5.0
Disambiguation5/5

Each tool targets a distinct operation: finding storms, fetching reports, previewing costs, emailing, property lookup, map visualization, monitor listing, and usage stats. No overlap in functionality.

Naming Consistency5/5

All tool names follow consistent snake_case with a verb_noun pattern (e.g., find_storms, get_swath_report, email_report). No mixing of styles or conventions.

Tool Count5/5

8 tools cover the core domain of storm swath data retrieval, property lookup, and account management without being bloated or insufficient. Each tool earns its place.

Completeness5/5

The tool set covers the full lifecycle: finding storms, retrieving detailed reports, cost estimation, emailing summaries, property lookup, map visualization, monitor listing, and usage tracking. No obvious gaps.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    A free, MIT-licensed MCP server that provides AI agents with analyst-grade US severe-weather tools, including live warning polygons, SPC outlooks, radar-derived hail and rotation products, and a composite threat brief.
    10
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Live ski & snow data for AI agents: 14-day multi-model forecasts, powder rankings, resort guides, webcams, ski-pass intelligence, and avalanche/road safety across 500+ resorts. Hosted streamable-HTTP — no install, no auth.
    40
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vibecodebeast/swath-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server