Environment Agency Flood Monitoring MCP Server

Environment Agency Flood Monitoring MCP Server

Provides access to UK Environment Agency's real-time flood monitoring data, enabling users to check flood warnings, monitor water levels and flow rates, and access historical measurements from monitoring stations across the UK.

Category
Visit Server

README

Environment Agency Flood Monitoring MCP Server

npm version License: MIT

A Model Context Protocol (MCP) server that provides access to the UK Environment Agency's Real Time Flood Monitoring API. This server allows you to access near real-time flood warnings, water level measurements, flow data, and monitoring station information.

🌊 Features

  • 🚨 Flood Warnings & Alerts: Get current flood warnings and alerts with severity levels
  • πŸ“ Flood Areas: Access information about flood alert and warning areas
  • 🏭 Monitoring Stations: Find water level and flow monitoring stations across the UK
  • πŸ“Š Real-time Measurements: Access water levels, flows, and other measurements updated every 15 minutes
  • πŸ“ˆ Historical Data: Retrieve historical readings and measurements
  • πŸ—ΊοΈ Geographic Filtering: Filter data by location using latitude, longitude, and distance
  • πŸ”“ No API Key Required: Uses open government data with no registration needed

πŸ“¦ Installation

For Claude Desktop Users

Add this to your Claude Desktop configuration:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "environment-agency": {
      "command": "npx",
      "args": ["-y", "mcp-server-environment-agency"]
    }
  }
}

For Developers

npm install -g mcp-server-environment-agency

πŸ› οΈ Available Tools

Flood Warning Tools

  • get_flood_warnings - Get current flood warnings and alerts
  • get_flood_warning - Get details of a specific flood warning
  • get_flood_areas - Get flood areas (regions where warnings may apply)
  • get_flood_area - Get details of a specific flood area

Monitoring Station Tools

  • get_monitoring_stations - Get monitoring stations that measure water levels, flows, etc.
  • get_monitoring_station - Get detailed information about a specific monitoring station
  • get_measures - Get measurement types available across all stations
  • get_station_measures - Get all measurement types from a specific station

Reading Tools

  • get_readings - Get measurement readings from all stations
  • get_measure_readings - Get readings for a specific measurement type
  • get_station_readings - Get all readings from a specific monitoring station

πŸ’¬ Usage Examples

Get detailed information for station 1029TH (Bourton Dickler)
Find monitoring stations within 25km of Cambridge
Find monitoring stations in Yorkshire
Show me today's water level readings from any 5 stations

πŸ“Š Data Types

Flood Warning Severity Levels

  1. Severe Flood Warning - Severe Flooding, Danger to Life
  2. Flood Warning - Flooding is Expected, Immediate Action Required
  3. Flood Alert - Flooding is Possible, Be Prepared
  4. Warning no Longer in Force - The warning is no longer in force

Measurement Parameters

  • Water Level (level) - Water levels at monitoring stations
  • Flow (flow) - Water flow rates
  • Temperature (temperature) - Air temperature
  • Wind (wind) - Wind direction and speed

Station Types

  • SingleLevel - Single water level measurement
  • MultiTraceLevel - Multiple level measurements
  • Coastal - Coastal monitoring stations
  • Groundwater - Groundwater level monitoring
  • Meteorological - Weather measurements

πŸš€ Development

Prerequisites

  • Node.js 18+
  • TypeScript

Setup

git clone https://github.com/dwain-barnes/mcp-server-environment-agency.git
cd mcp-server-environment-agency
npm install

Build

npm run build

Test

# Test the server
npm start

# Run test script
node test-server.js

Local Development

# Link for local testing
npm link

# Test with Claude Desktop using local version

πŸ“„ Data Attribution

This server uses Environment Agency flood and river level data from the real-time data API (Beta), provided under the Open Government Licence.

πŸ”„ API Updates and Reliability

  • Data is updated every 15 minutes
  • The API may redirect during high load - the client follows redirects automatically
  • Responses may be cached for short periods
  • No service level guarantee - not suitable for safety-critical applications

πŸ“‹ Rate Limits and Best Practices

  • For tracking all measurements, use a single call every 15 minutes
  • Use geographic and parameter filters to reduce response sizes
  • The API has built-in limits: default 500 items, maximum 10,000 for readings
  • Use pagination with limit and offset parameters for large datasets

πŸ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Environment Agency for providing open flood monitoring data
  • Model Context Protocol team for the excellent framework
  • UK Government for open data initiatives

Built by Dwain Barnes πŸ‡¬πŸ‡§

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