# NHC Current Storms Scraper (`parseforge/nhc-current-storms-v2-scraper`) Actor

Scrapes active tropical cyclone advisories from the National Hurricane Center public feed. Each storm row includes advisory number, wind speed, pressure, coordinates, and movement. Filter by Atlantic, East Pacific, or Central Pacific basin.

- **URL**: https://apify.com/parseforge/nhc-current-storms-v2-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Travel, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.04 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner.jpg)](https://apify.com/parseforge?fpr=vmoqkp)

### NHC Current Storms Scraper

**Scrape real-time tropical cyclone data from the National Hurricane Center, up to a million storms per run.** Each storm comes with its advisory number, wind speed, pressure, location coordinates, and movement. Export to CSV, JSON, Excel, or XML.

The National Hurricane Center publishes active storm advisories as public GIS feeds, but reading them manually means parsing shapefiles, XML, and constantly refreshing for updates. This Actor polls the NHC current storms feed directly, filters by Atlantic, East Pacific, or Central Pacific basin, and returns every active cyclone in one flat, consistent row. No API key, no GIS toolchain, no manual refresh.

| Who uses it | What they scrape NHC Current Storms for |
|---|---|
| Emergency managers | Monitor active storm positions and intensities for evacuation and resource staging decisions. |
| Insurance analysts | Track landfalling storms in real time to estimate exposure and trigger claims workflows. |
| Logistics coordinators | Reroute shipments and secure assets ahead of tropical cyclone impacts. |
| Weather app developers | Ingest official NHC advisory data to power storm-tracking features. |

### What it does

This Actor collects active tropical cyclone advisories from the National Hurricane Center and returns each storm as a flat row with its latest advisory details.

- 🌀 **Basin filter:** restrict results to Atlantic, East Pacific, or Central Pacific storms only.
- 📊 **Advisory details:** wind speed, minimum central pressure, storm location, and movement direction and speed.
- 🗺️ **GIS coordinates:** latitude and longitude for every storm, ready for mapping.
- ⚡ **Real-time refresh:** polls the live NHC feed so you always get the latest advisory package.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with NHC Current Storms data

**🌀 Monitor active hurricanes for emergency response.**

An emergency operations center runs this Actor every three hours to pull the latest NHC advisory positions and intensities for all Atlantic storms, feeding a dashboard that drives evacuation-zone decisions.

**📈 Feed storm data into insurance exposure models.**

A catastrophe modeling team schedules daily runs during hurricane season, ingesting wind speed and pressure fields to update real-time portfolio exposure estimates.

**🚚 Reroute supply chains around tropical cyclones.**

A logistics firm filters for East Pacific storms and triggers shipment rerouting when a cyclone's forecast track intersects active freight corridors.

**📱 Power a storm-tracking app with official advisories.**

A weather app developer calls this Actor to populate storm cards with the latest NHC advisory number, location, and movement, avoiding the complexity of parsing raw GIS feeds.

### Why choose this scraper

| | What you get |
|---|---|
| **Official NHC data** | Direct from the National Hurricane Center public advisory feed, no third-party interpretation. |
| **No GIS required** | Returns flat rows instead of shapefiles or XML, so you skip the GIS toolchain. |
| **Basin filtering** | Pull only the Atlantic, East Pacific, or Central Pacific storms you care about. |
| **Scheduled polling** | Run on a schedule to capture every advisory update as a new dataset row. |

### How it compares

No other Store actor targets NHC Current Storms the same way, so the honest comparison is with the alternatives teams actually weigh.

| | NHC Current Storms Scraper | Build it in-house | By hand |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When NHC Current Storms changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |

### Configure the run

Drive the Actor with an optional basin filter and a maximum-storms cap, and filtering runs as each advisory is read so only matching cyclones reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

```json
{
 "maxItems": 10
}
```

A larger pull:

```json
{
 "maxItems": 200
}
```

### Pricing

Pay-per-result: **$0.00225 per result** collected. You pay only for the results written to your dataset.

| Results collected | Approximate cost |
|---|---|
| 100 results | $0.22 |
| 1,000 results | $2.25 |
| 10,000 results | $22.50 |

New Apify accounts start with $5 in free credit.

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [NHC Current Storms Scraper](https://apify.com/parseforge/nhc-current-storms-v2-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to NHC Current Storms through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/nhc-current-storms-v2-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting an empty dataset?**

The most common reason is that no tropical cyclones are currently active in the selected basin. Try removing the basin filter to pull all basins, or check the NHC website to confirm whether any storms are active.

**Why are my results missing a storm I see on the NHC website?**

Confirm the storm is in a basin this Actor covers. The NHC feed covers Atlantic, East Pacific, and Central Pacific. Western Pacific and Indian Ocean storms are handled by other agencies and will not appear.

**The Actor ran but the dataset has fewer storms than I expected.**

Check your maxItems setting. The free plan caps at 10 storms. If you are on a paid plan and still see a shortfall, verify the basin filter is not excluding storms from other basins.

**Can I get forecast track points, not the current position?**

This Actor returns only the current advisory snapshot. Forecast track points are not included in the NHC current storms feed. You would need a separate Actor that parses the forecast advisory product.

**Why did the storm name or advisory number change between runs?**

The NHC updates advisories on a fixed schedule, and storm names can change when a depression strengthens into a tropical storm. The Actor returns whatever the live feed contains at the moment it runs.

### FAQ

| Question | Answer |
|---|---|
| Does this Actor return historical storms or only currently active ones? | This Actor scrapes only the live NHC current storms feed, which lists active tropical cyclones. It does not return historical or archived storm data. |
| How often does the NHC update the current storms feed? | The National Hurricane Center typically issues full advisories every six hours for most storms, with intermediate updates every three hours. You can schedule this Actor to match that cadence. |
| Can I filter by storm name or ID? | The input schema provides a basin filter for Atlantic, East Pacific, or Central Pacific. Storm-name filtering is not available because the upstream NHC feed does not support it as a query parameter. |
| What basins are covered? | You can select Atlantic, East Pacific, Central Pacific, or any combination. The Actor pulls from the same NHC feed that covers all three basins. |
| Does this include invest areas or only named storms? | The NHC current storms feed includes any tropical cyclone the NHC is actively issuing advisories on, which can include tropical depressions, tropical storms, and hurricanes. Invest areas without advisories are not included. |
| What fields does each storm row contain? | Each row includes the advisory number, storm name, wind speed, minimum central pressure, latitude and longitude, movement direction and speed, and the basin. The exact field list is visible in the dataset preview after a test run. |
| Can I export the data to a map? | Yes. Every storm row includes latitude and longitude coordinates. Export to JSON, CSV, Excel, or XML and import directly into any GIS or mapping tool. |
| Is an API key or NHC registration required? | No. This Actor reads the public NHC advisory feed directly. You do not need an API key, registration, or any credentials. |
| What happens when no storms are active? | The Actor returns an empty dataset. You can schedule it to run on a timer and check for a non-empty result to trigger downstream workflows. |
| Can I run this on the free plan? | Yes. Free Apify users can scrape up to 10 storms per run. Paid users can raise the maximum to 1,000,000 storms, though the number of active storms is typically small. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by National Hurricane Center. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `maxItems` (type: `integer`):

Free users limited to 10 storms (preview). Paid users optional, up to 1,000,000.

## `basin` (type: `string`):

Optional basin filter.

## Actor input object example

```json
{
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/nhc-current-storms-v2-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "maxItems": 10 }

# Run the Actor and wait for it to finish
run = client.actor("parseforge/nhc-current-storms-v2-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "maxItems": 10
}' |
apify call parseforge/nhc-current-storms-v2-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/nhc-current-storms-v2-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/oafv0KUnF6IfXWb9V/builds/417FUd8FU1pkqhFLg/openapi.json
