mcpField
G
Gribstream MCP

Gribstream MCP

Remote
gribstream.comMaps & Travel0Updated 10w ago

About Gribstream MCP

Gribstream MCP is a hosted server for discovering and querying GribStream weather forecasts, including NOAA and ECMWF model data. It supports dataset and variable selection, request validation, and OAuth-protected live queries with downloadable results for large outputs.

Key features

  1. 01Browse forecast datasets and metadata
  2. 02Find variables, levels, and selectors
  3. 03Build and validate API requests
  4. 04Query timeseries and model runs after OAuth
  5. 05Return large results as downloadable files

Use cases

  1. 01Choose a forecast dataset for a region and horizon
  2. 02Compare weather forecasts across model runs
  3. 03Retrieve dense forecast grids for analysis

MCP support

The hosted Streamable HTTP server exposes tools, prompts, and resources for discovering datasets, building requests, validating them, and querying weather data. Live timeseries and run queries require OAuth.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://gribstream.com/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

12
ParameterTypeRequiredDescription
acceptenumNoDesired response format for the eventual HTTP request. Prefer application/vnd.apache.parquet for dense grids and large typed tabular results.text/csv | application/json | application/ndjson | application/x-ndjson | application/vnd.apache.parquet | application/x-parquet | application/parquet
datasetstringYesDataset code, for example gfs, ifsoper, nbm, hrrr, or urma.
requestobjectYesRuns request body. Use timesList for exact UTC model run times, or the half-open range forecastedFrom+forecastedUntil where forecastedFrom is inclusive, forecastedUntil is exclusive, and forecastedFrom must be earlier than forecastedUntil. Equal bounds select no times. Coordinates must be in request.coordinates, and variable selectors must be in request.variables.
request.asOfstringNoDo not set asOf unless the user explicitly asks for backtesting, time travel, what was known then, or a historical model-run cutoff. Omit asOf for latest or best-available forecasts because it filters out forecast runs newer than the cutoff and can make recent data look missing. This is a UTC model-run-time cutoff for /timeseries, not a live API availability timestamp.
request.coordinatesarrayNoPoint coordinates. This exact field name is required. Do not use location, coord, coords, latitude/longitude at top level, or any singular replacement.
request.expressionsarrayNoOptional derived variables evaluated from variable aliases.
request.filterobjectNoOptional row filter expression evaluated from variable aliases.
request.filter.aliasstringNoOutput field name for the expression.
request.filter.expressionstringNoExpression text. Reference variable aliases, not raw selector names.
request.filter.hiddenbooleanNoOptional: hide this expression from the response output.
request.forecastedFromstringNoInclusive UTC model-run-time range start for /runs. Must be earlier than forecastedUntil; use timesList for one exact model run time.
request.forecastedUntilstringNoExclusive UTC model-run-time range end for /runs. Must be later than forecastedFrom; equal bounds select no times.
request.fromTimestringNoInclusive UTC valid-time range start for /timeseries, for example 2025-05-01T00:00:00Z. Must be earlier than untilTime; use timesList for one exact valid time.
request.gridobjectNoOptional regular latitude/longitude grid. Use this instead of or in addition to coordinates. The API preserves the requested step and does not silently coarsen fine grids. The default limit is 120000 expanded coordinates; account-specific plan or token settings may set a different maximum up to 1050000, enough for a full native 0.25-degree global GFS grid, and an oversized-response error reports the applicable maximum. Use URL delivery for dense grids before considering spatial tiling.
request.grid.maxLatitudenumberYes
request.grid.maxLongitudenumberYes
request.grid.minLatitudenumberYes
request.grid.minLongitudenumberYes
request.grid.stepnumberYesGrid spacing in degrees. Must be greater than 0.
request.includeMetadataarrayNoOptional additional row metadata. The only supported value is index_updated_at. Do not request forecasted_at or forecasted_time here; both are regular response columns returned automatically.
request.maxHorizonintegerNoOptional maximum lead time in hours.
request.membersarrayNoOptional ensemble member numbers.
request.minHorizonintegerNoOptional minimum lead time in hours.
request.timesListarrayNoExact UTC valid times for /timeseries, or exact UTC model run times for /runs. Use this for one exact time instead of setting range bounds equal.
request.untilTimestringNoExclusive UTC valid-time range end for /timeseries, for example 2025-05-01T06:00:00Z. Must be later than fromTime; equal bounds select no times.
request.variablesarrayNoVariable selectors. This exact field name is required. Do not use parameters, parameter, variable, selector, or selectors. Values must be exact case-sensitive selector tuples discovered from catalog tools.

Details

From the project README

GribStream Weather MCP

MCP Badge

GribStream Weather MCP is a hosted Model Context Protocol server for AI access to weather forecast data from GribStream, including NOAA and ECMWF model output.

It helps AI agents discover forecast datasets such as NOAA GFS, HRRR, and NBM or ECMWF IFS, resolve exact forecast variables and levels, validate request bodies, build runnable GribStream Weather API requests, and execute live read-only weather queries after OAuth authorization.

Official GribStream weather API homepage:

https://gribstream.com/

Hosted MCP endpoint:

https://gribstream.com/mcp

Use Cases

Use GribStream MCP when you want an AI tool to:

  • List public GribStream weather datasets.
  • Choose a NOAA, ECMWF, or other forecast model for a region, horizon, or weather task.
  • Query GFS, HRRR, NBM, IFS, and other numerical weather prediction model data exposed by GribStream.
  • Find exact variable selectors, levels, and aliases.
  • Build a /timeseries request for values by valid time.
  • Build a /runs request to compare forecasts across model runs.
  • Validate a GribStream API request before running it.
  • Execute live /timeseries or /runs queries after OAuth authorization.
  • Retrieve dense forecast grids as downloadable files without embedding the complete result in the conversation.
  • Generate a copy-pasteable curl command for the GribStream Weather API.

The hosted MCP server exposes discovery, selector lookup, request building, and validation tools before OAuth. Live /timeseries and /runs query tools require OAuth. Tool descriptions begin with either NO AUTH / PUBLIC / READ-ONLY or AUTH REQUIRED / DATA QUERY so AI clients can route metadata tasks and live data-query tasks correctly. When a client connects through OAuth, GribStream asks the user to sign in and select an active GribStream API token. MCP access tokens are scoped to that selected API token, and the raw API token is not shown to the MCP client.

Connect

Use the hosted endpoint exactly as shown in any MCP client that supports remote Streamable HTTP:

https://gribstream.com/mcp

Do not include trailing punctuation in the URL.

Generic configuration shape:

{
  "mcpServers": {
    "gribstream": {
      "url": "https://gribstream.com/mcp"
    }
  }
}

LobeHub quick import configuration:

{
  "mcpServers": {
    "gribstream": {
      "type": "http",
      "url": "https://gribstream.com/mcp"
    }
  }
}

Some clients require an explicit transport field:

{
  "mcpServers": {
    "gribstream": {
      "type": "streamable-http",
      "url": "https://gribstream.com/mcp"
    }
  }
}

OAuth

OAuth is needed for live query tools. Most MCP clients should discover OAuth from the hosted endpoint automatically, either during connector setup or when the client requests authenticated tools. If a client asks for manual OAuth 2.0 fields, use:

Authorization URL: https://gribstream.com/authorize
Token URL: https://gribstream.com/token
Client ID: gribstream-mcp-public
Client Secret: leave empty; do not enter a value
Scopes: leave empty
Resource or audience, if requested: https://gribstream.com/mcp

OAuth discovery endpoints:

https://gribstream.com/.well-known/oauth-protected-resource/mcp
https://gribstream.com/.well-known/oauth-authorization-server

The OAuth client is public and uses PKCE with token_endpoint_auth_method set to none. Native desktop clients may use loopback redirect URIs such as http://localhost:{port}/..., http://127.0.0.1:{port}/..., or http://[::1]:{port}/.... A setup form that requires a non-empty client secret is asking for a confidential-client flow and is not compatible with this public MCP OAuth flow.

Server Features

LobeHub and other MCP crawlers may call MCP tools "skills". The live GribStream MCP server exposes the following skills/tools, prompts, and resources.

Skill List
NameAuthDescription
gribstream_list_datasetsNo auth, public, read-onlyList public GribStream datasets and metadata.
gribstream_get_datasetNo auth, public, read-onlyGet full public metadata for one dataset code.
gribstream_list_parametersNo auth, public, read-onlyList parameter summaries for one dataset.
gribstream_get_parameterNo auth, public, read-onlyGet detailed metadata and exact selector variations for one dataset parameter.
gribstream_list_shared_parametersNo auth, public, read-onlyList normalized shared parameter presets.
gribstream_resolve_shared_parameterNo auth, public, read-onlyResolve one shared parameter preset to native variables and expressions.
gribstream_get_expression_referenceNo auth, public, read-onlyGet GribStream expression-language rules, examples, and math functions.
gribstream_build_timeseries_requestNo auth, public, read-onlyBuild and validate a copy-pasteable authenticated /timeseries API request without sending it.
gribstream_build_runs_requestNo auth, public, read-onlyBuild and validate a copy-pasteable authenticated /runs API request without sending it.
gribstream_validate_requestNo auth, public, read-onlyValidate request shape, selector tuples, and expression syntax without querying weather values.
gribstream_query_timeseriesOAuth required, data queryExecute an authenticated /timeseries request and return actual weather values.
gribstream_query_runsOAuth required, data queryExecute an authenticated /runs request and return actual weather values across model runs.

Public read-only skills/tools are visible before OAuth. OAuth live query skills/tools may be hidden from tools/list until the client completes OAuth or sends a valid Authorization: Bearer token.

Prompt List
NameDescription
build_gribstream_api_requestTurn a weather question into a validated GribStream /timeseries or /runs request and runnable curl.
build_gfs_forecast_requestCreate a validated GFS request for common forecast variables at points or grids.
build_historical_forecast_requestBuild a request for archived forecasts or forecasts selected by a model-run-time cutoff.
create_grid_requestCreate a GribStream request over a latitude/longitude grid instead of point coordinates.
compare_forecast_runsBuild a /runs request to compare model forecasts across runs or lead times.
choose_weather_datasetChoose a GribStream dataset for a region, horizon, weather signal, or forecast task.
find_weather_variableFind the exact dataset parameter selectors for a weather signal.
Resource List
URIMIME TypeDescription
gribstream://openapiapplication/yamlMachine-readable GribStream OpenAPI specification.
gribstream://skill/gribstream-querytext/markdownVendor-neutral behavioral instructions for AI tools using GribStream.
Live Query Output

Authenticated live query tools support CSV, JSON, NDJSON, and Parquet results. Small CSV, JSON, and NDJSON results can be returned inline. Set delivery=url for dense grids or large results to receive a short-lived signed HTTPS resource_link to the complete file instead.

  • URL delivery works with CSV, JSON, NDJSON, and Parquet. Parquet always uses URL delivery.
  • Download the exact signed URL once without an API token. This consumes the MCP result; it is not a separate direct GribStream API request.
  • The 10 MB max_bytes limit applies only to inline MCP results. URL artifacts use a separate server-configured size limit, so omit max_bytes when using delivery=url.
  • For dense grids, prefer Parquet when a compatible reader is already installed; otherwise use CSV with delivery=url. Do not install a dependency or write a Parquet parser solely for one result.
  • Use one grid request and only split after an actual request or artifact-size error. If splitting is necessary, split time first, variables second, and space last.
  • structuredContent includes metadata such as content_type, rows, bytes, columns, schema, delivery, cache_hit, signed_url_expires_at, and suggested_filename when applicable.
  • Inline tabular results also include a preview plus request_hash, response_hash, and result_hash. Use suggested_filename when saving multiple results so repeated requests or comparisons do not overwrite earlier files.
  • Rows are streamed from parallel extraction and are not guaranteed to be sorted. Sort by forecasted_time for /timeseries, and by forecasted_at plus forecasted_time for /runs, before plotting or comparing time series.

Links

  • Official GribStream weather API homepage: https://gribstream.com/
  • Endpoint: https://gribstream.com/mcp
  • MCP page: https://gribstream.com/mcp
  • Icon: https://gribstream.com/gribstream_small.png
  • OpenAPI: https://gribstream.com/docs/openapi.yaml
  • AI setup docs: https://gribstream.com/ai
  • API dashboard: https://gribstream.com/app/dashboard

Try It

After connecting GribStream MCP to an AI tool, ask:

Use GribStream MCP to build a GFS 2m temperature timeseries request for Houston for tomorrow at 12:00 UTC. Validate the request and return a runnable curl command.

If your client has completed OAuth, you can also ask it to run the query:

Use GribStream MCP to run a GFS 2m temperature timeseries query for Houston for tomorrow at 12:00 UTC and return CSV.

For a dense-grid visualization:

Using GribStream, plot the latest available ICON-D2 2 metre temperature forecast over Germany at 0.025 degree resolution as a beautiful PNG.

Or:

Use GribStream MCP to find the best dataset for short-range precipitation forecasts in the continental United States. Explain the tradeoffs and build a validated example request.

More examples:

For the GribStream API itself, see the OpenAPI specification.

MCP Badge

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.