USGS Water MCP

USGS Water MCP

Provides access to real-time water data from the USGS Water Services API, allowing users to fetch instantaneous measurements like stream flow, gage height, temperature, and water quality parameters from thousands of monitoring stations across the US.

Category
Visit Server

README

USGS Water MCP

smithery badge

Overview

This MCP server provides access to real-time water data from the USGS Water Services API. It allows you to fetch instantaneous water measurements including stream flow, gage height, temperature, and other water quality parameters from thousands of monitoring stations across the United States.

Sample Output

Here's an example of fetching stream flow data for the Potomac River:

{
  "name": "USGS:01646500:00060:00000",
  "sourceInfo": {
    "siteName": "POTOMAC RIVER NEAR WASHINGTON, DC",
    "siteCode": [
      {
        "value": "01646500",
        "network": "NWIS",
        "agencyCode": "USGS"
      }
    ]
  },
  "variable": {
    "variableCode": [
      {
        "value": "00060",
        "network": "NWIS",
        "vocabulary": "NWIS:UnitValues",
        "variableName": "Streamflow, ft�/s",
        "variableDescription": "Discharge, cubic feet per second"
      }
    ]
  },
  "values": [
    {
      "value": [
        {
          "value": "6420",
          "qualifiers": ["A"],
          "dateTime": "2023-10-01T12:00:00.000"
        }
      ]
    }
  ]
}

Installation

Installing via pip

pip install -e .

Manual Installation

  1. Clone this repository
  2. Install dependencies:
    pip install httpx mcp
    

Connecting with Claude Desktop

  1. Edit your Claude Desktop configuration file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%/Claude/claude_desktop_config.json
  2. Add the server configuration:

    {
      "mcpServers": {
        "usgs-water": {
          "command": "python",
          "args": ["/path/to/usgs-water-mcp/current_water_levels.py"]
        }
      }
    }
    
  3. Restart Claude Desktop

Available Tools

fetch_usgs_data

Fetch instantaneous water data from USGS monitoring stations.

Parameters:

  • sites (required): Comma-separated site numbers (e.g., "01646500" or "01646500,01647000")
  • parameter_codes (optional): Comma-separated parameter codes (e.g., "00060,00065")
  • start_date (optional): Start date in ISO format (YYYY-MM-DD or YYYY-MM-DDTHH:MM)
  • end_date (optional): End date in ISO format
  • period (optional): Period code (e.g., "P7D" for 7 days)

Common Parameter Codes:

  • 00060: Discharge (stream flow)
  • 00065: Gage height
  • 00010: Temperature, water
  • 00300: Dissolved oxygen
  • 00400: pH

Example Usage:

Get current stream flow for the Potomac River near Washington, DC:
sites: "01646500"
parameter_codes: "00060"

Troubleshooting

Common Issues

  1. API Connection Errors: Ensure you have an active internet connection and the USGS API is accessible
  2. Invalid Site Numbers: Verify site numbers exist using the USGS Water Data for the Nation website
  3. No Data Available: Some sites may not have data for the requested time period or parameters
  4. Rate Limiting: The USGS API has usage limits; avoid making too many requests in quick succession

Finding Site Numbers

Use the USGS Water Data for the Nation website to find monitoring station site numbers in your area of interest.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured