wgrib2-easy-mcp

by yskmasumoto

211 downloads Not rated yet
GitHub

About

An MCP server for executing wgrib2 commands from MCP Client. Designed with a simple approach where converted files are saved to a specific folder.

Explore

Remotely execute common wgrib2 tasks via MCP.
Tools for listing contents, showing details, and accessing help.
Simple configuration using environment variables.
Outputs generated files (e.g., CSV, binary extracts - based on sample) to a specified directory.

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name wgrib2-easy-mcp
    Command (node, npx, python, etc.)

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

Before you begin, ensure you have the following installed on the server machine:

Python 3.x
git (for cloning the repository)
uv (Python project and virtual environment manager - required by the run command)
wgrib2: The wgrib2 executable must be installed and accessible in the system's PATH.
An MCP Client environment capable of connecting to this server.

Start the MCP server using the uv command. This command also loads environment variables from a .env file if present.

uv run --with python-dotenv --with mcp src/server.py

--with python-dotenv: Enables loading of environment variables from .env.
--with mcp: Activates MCP-specific integration (assumed functionality of uv task).
server.py: The main script that runs the server.

Once the server is running, the wgrib2-easy-mcp tools will become available for invocation from connected MCP clients.

list_contents

Lists the inventory of messages within a specified GRIB2 file (similar to `wgrib2 <grib_file>`).

show_details

Displays detailed information about the messages in a GRIB2 file (similar to `wgrib2 -V <grib_file>`).

show_help

Provides access to `wgrib2`'s help documentation.

The following tools are exposed by the server for use by MCP clients:

list_contents: Lists the inventory of messages within a specified GRIB2 file (similar to wgrib2 <grib_file>).
show_details: Displays detailed information about the messages in a GRIB2 file (similar to wgrib2 -V <grib_file>).
show_help: Provides access to wgrib2's help documentation.

Note: The src/sample/sample.py script demonstrates additional operations like element extraction and conversions (e.g., to CSV, binary). Please be aware that these more complex functionalities are currently under development. While shown in the sample for illustrative purposes, dedicated and stable MCP tools for these specific operations are not yet available. Future implementation might involve adding arguments to the tools listed above or introducing new, specific tools once development is complete.*

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "wgrib2-easy-mcp": {
            "wgrib2-easy-mcp": {
                "command": "uv",
                "args": [
                    "pip",
                    "install",
                    "-r",
                    "requirements.txt"
                ]
            }
        }
    }
}

McpServers

{
    "wgrib2-easy-mcp": {
        "command": "uv",
        "args": [
            "pip",
            "install",
            "-r",
            "requirements.txt"
        ]
    }
}

A simple MCP server designed to execute wgrib2 commands remotely via an MCP Client. Processed files are saved to a designated output directory.

Features

Remotely execute common wgrib2 tasks via MCP.
Tools for listing contents, showing details, and accessing help.
Simple configuration using environment variables.
Outputs generated files (e.g., CSV, binary extracts - based on sample) to a specified directory.

Prerequisites

Before you begin, ensure you have the following installed on the server machine:

Python 3.x
git (for cloning the repository)
uv (Python project and virtual environment manager - required by the run command)
wgrib2: The wgrib2 executable must be installed and accessible in the system's PATH.
An MCP Client environment capable of connecting to this server.

Installation

1. Clone the repository:

    git clone https://github.com/yskmasumoto/wgrib2-easy-mcp.git
cd wgrib2-easy-mcp

2. Install dependencies:

    uv pip install -r requirements.txt

Configuration

1. Environment Variables: Configure the server primarily through environment variables. It's recommended to use a .env file in the project root.
OUTPUT_DIR: Required. Specify the absolute path to the directory where generated files should be saved.
Important: This directory must exist before starting the server. It will not be created automatically.
WGRIB2_PATH: Optional. Path to the wgrib2 executable (defaults to wgrib2 in PATH).
TEST_GRIB2_FILE: The path to the GRIB2 file referenced when executing the sample script sample.py.

```bash

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.