netcdf-mcp

dogukanteber/netcdf-mcp
0 starsCommunity

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

Enables reading and understanding NetCDF files, providing tools to inspect structure, variables, metadata, and data quality for scientific datasets.

README.md

NetCDF MCP Server

An MCP server that reads and understands NetCDF files, designed to give coding agents context about scientific data files.

Installation

uv pip install -e .

Usage

With Cursor/Claude

Add to your MCP configuration file (~/.cursor/mcp.json):

{
  "mcpServers": {
    "netcdf-mcp": {
      "command": "/path/to/uv",
      "args": ["run", "--directory", "/path/to/netcdf-mcp", "netcdf-mcp"]
    }
  }
}

Replace /path/to/uv with your uv binary location (e.g., /opt/homebrew/bin/uv) and /path/to/netcdf-mcp with where you cloned this repository.

Standalone

netcdf-mcp

Tools

| Tool | Description | |------|-------------| | get_file_structure | Get dimensions, coordinates, variables, and attributes | | list_variables | List all data variables with shapes and units | | get_global_attributes | Get file-level metadata | | get_variable_info | Detailed info about a specific variable | | get_variable_stats | Statistical summary (min, max, mean, percentiles) | | get_variable_sample | Extract sample values for inspection | | get_dimension_values | Get coordinate values (time, lat, lon) | | check_data_quality | Check for NaN, outliers, and suspicious patterns | | compare_variables | Compare two variables for compatibility and correlation | | get_time_range | Get temporal extent in human-readable format | | get_spatial_bounds | Get geographic extent (lat/lon bounds) | | check_cf_compliance | Verify CF conventions compliance | | explain_variable | Human-readable explanation of a variable |

Related MCP servers

Browse all →