Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ERDDAP MCP Serversearch for sea surface temperature datasets from the last month"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ERDDAP MCP Servers - Local & Remote
Access oceanographic and environmental data from ERDDAP servers worldwide through Claude Desktop via two complete MCP implementations: local stdio and remote HTTP.
π Now with dynamic server loading from
π Two Servers, All Possibilities
This repository provides both local and remote MCP server implementations:
π Local MCP Server (erddapy_mcp_server.py)
Traditional stdio-based MCP server for local Claude Desktop use
4 comprehensive ERDDAP tools for data discovery and access
Easy setup via claude_desktop_config.json
No network dependencies - runs completely locally
βοΈ Remote MCP Server (erddap_remote_mcp_oauth.py)
HTTP-based MCP server for cloud deployment
Production-ready with fly.io deployment configuration
mcp-remote proxy compatible for Claude Desktop integration
Same 4 core tools optimized for remote performance
π¨ CRITICAL: Remote MCP Connection Requirements
Claude Desktop does NOT support direct remote MCP connections! You MUST use the mcp-remote proxy for remote servers.
The Secret Architecture:
What is ERDDAP?
ERDDAP (Environmental Research Division's Data Access Program) is a data server that provides simple, consistent access to scientific datasets in common file formats. These MCP servers make ERDDAP's powerful oceanographic data accessible to AI assistants through natural language queries.
Quick Start
β οΈ IMPORTANT: Disable VPN Before Use
ERDDAP servers may experience severe issues when accessed through VPNs (NordVPN, ExpressVPN, etc.), including:
404 errors on valid datasets
Truncated or incomplete data downloads
Connection timeouts and failed requests
Solution: Disable your VPN before using these tools. ERDDAP servers often block or rate-limit VPN traffic, causing unreliable behavior.
Option 1: Local MCP Server (Recommended for Getting Started)
1. Install Dependencies:
2. Configure Claude Desktop:
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
Windows Users: Use %APPDATA%\Claude\claude_desktop_config.json and double backslashes in paths:
3. Restart Claude Desktop: After updating the configuration, restart Claude Desktop. The server will start automatically and the ERDDAP tools will be available.
Option 2: Remote MCP Server (Access the Cloud Instance)
1. Install mcp-remote proxy:
2. Configure Claude Desktop:
3. Restart Claude Desktop: The remote server will be accessible through the mcp-remote proxy.
Available Tools
Available Tools (Both Servers)
Tool | Description | Example Use |
| Show well-known ERDDAP servers worldwide | "Show me available ERDDAP servers" |
| Search for datasets by keyword | "Find temperature datasets on IOOS ERDDAP" |
| Get detailed metadata about a dataset | "Tell me about dataset jplMURSST41" |
| Download and preview data | "Show me temperature data from January 2024" |
Usage Examples
List Available ERDDAP Servers
You: "Show me available ERDDAP servers"
Claude: Here are some well-known ERDDAP servers you can access:
NOAA CoastWatch (https://coastwatch.pfeg.noaa.gov/erddap) - Satellite and in-situ oceanographic data
IOOS ERDDAP (https://erddap.ioos.us/erddap) - Integrated Ocean Observing System data
Marine Institute Ireland (https://erddap.marine.ie/erddap) - Irish marine data
Ocean Networks Canada (https://data.oceannetworks.ca/erddap) - Canadian ocean data
GCOOS ERDDAP (https://gcoos5.geos.tamu.edu/erddap) - Gulf of Mexico data
Search for Datasets
You: "Search for glider datasets on GCOOS ERDDAP"
Claude: I found 26 glider datasets on the GCOOS ERDDAP server. Here are some examples:
Stommel-20200813T1200: Ocean glider deployment
usf-sam-20210331T0000: University of South Florida glider
mote-dora-20210318T1200: Mote Marine Laboratory glider
These datasets contain oceanographic measurements collected by autonomous underwater gliders.
Analyze Data
You: "Get information about the dataset mote-dora-20210318T1200"
Claude: This dataset contains oceanographic measurements from a Mote Marine Laboratory glider deployment:
Time Coverage: March 18, 2021 - April 15, 2021
Variables: Temperature, salinity, density, dissolved oxygen, chlorophyll
Location: Eastern Gulf of Mexico coastal waters
Architecture Comparison
Local Server
Communication: stdio (standard input/output)
Deployment: Runs on your local machine
Tools: 4 comprehensive data access tools
Setup: Single config file entry
Dependencies: Python + MCP library
Remote Server
Communication: HTTP with JSON-RPC 2.0
Deployment: Cloud platforms (fly.io, AWS, etc.)
Tools: Same 4 data access tools
Setup: Requires mcp-remote proxy
Dependencies: FastAPI + Docker + HTTPS
For Developers: Cloud Deployment
This section is for developers who want to deploy their own instance of the remote server.
fly.io Deployment (Recommended)
The remote server is configured for one-command deployment to fly.io:
fly.toml Configuration:
Key Features:
β Automatic HTTPS - SSL certificates managed automatically
β Auto-scaling - Machines start/stop based on traffic
β Global CDN - Fast access worldwide
β Zero-downtime deploys - Seamless updates
Container Deployment (Other Platforms)
Testing Your Setup
For Users: Verify Installation
After configuring Claude Desktop, restart it and check if the ERDDAP tools appear in the tools list.
For Developers: Manual Testing
Test Local Server
Test Remote Server
Configuration Examples
Both Servers Together
You can run both local and remote servers simultaneously:
This gives you the full local toolset plus cloud accessibility!
Common Tool Parameters
Both servers accept these parameters:
server_url: ERDDAP server URL (defaults to NOAA CoastWatch)protocol: Either "tabledap" (tabular data) or "griddap" (gridded data)dataset_id: The dataset identifiervariables: List of variables to retrieveconstraints: Dictionary of constraints (e.g., time/space bounds)
Tips for Best Results
Start with local: Local server has easier setup and no proxy requirement
Use remote for sharing: Remote server can be accessed by multiple users
Check metadata first: Use
get_dataset_infobefore downloading dataUse constraints: Limit data requests to avoid timeouts
Choose correct protocol: tabledap for tabular, griddap for gridded data
Troubleshooting
Local Server Issues
"No such file": Check Python path in configuration
"Connection failed": Verify server is running
Tool errors: Check stderr for debug output
Remote Server Issues
"No tools available": Ensure mcp-remote proxy is installed (
npm install -g mcp-remote)"Connection failed": Verify server URL is accessible and uses HTTPS
Protocol errors: Check server logs with
fly logs -a erddap2mcp
General ERDDAP Issues
Timeouts: Reduce spatial/temporal extent of requests
Protocol errors: Specify correct protocol (tabledap vs griddap)
Server unavailable: Some ERDDAP servers may be temporarily down
The Remote MCP Discovery Journey
This remote implementation represents months of debugging the Remote MCP mystery:
Failed Approaches:
Direct SSE connections - Claude Desktop doesn't support this
Config file remote URLs - Only works for local stdio servers
Connector UI attempts - Also doesn't support direct connections
The Breakthrough:
The mcp-remote proxy requirement was buried in third-party documentation. This critical piece enables Claude Desktop to talk to remote MCP servers via HTTP.
Credits
ERDDAP was developed by Bob Simons at NOAA's Environmental Research Division. Learn more at the ERDDAP website.
erddapy is the official Python client for ERDDAP, developed by Filipe Fernandes and the IOOS community. Visit the erddapy documentation.
mcp-remote proxy enables remote MCP connections to Claude Desktop
Common Use Cases
Climate Research: Access historical temperature, salinity, and current data
Marine Biology: Find chlorophyll concentrations and ocean color data
Coastal Management: Monitor sea level, wave heights, and coastal conditions
Fisheries: Access environmental data for fisheries management
Education: Explore real oceanographic data for teaching and learning
Server List Management
ERDDAP servers are now loaded dynamically from
63 ERDDAP servers pre-configured (worldwide coverage)
Easy to add/remove servers by editing JSON file
Automatic fallback if file is missing
Servers grouped by public/private access
Each server entry includes name, short_name, url, and public flag
To add new servers, simply edit erddaps.json:
Contributing
Contributions welcome! This project demonstrates how to build both local and remote MCP servers. Key areas for improvement:
Additional ERDDAP tools and data processing capabilities
Enhanced error handling and performance optimization
Multi-server load balancing and caching strategies
Adding more ERDDAP servers to erddaps.json
License
This project is open source and available under the MIT License.