RMS Location Intelligence MCP Server

RMS Location Intelligence MCP Server

Provides access to the Moody's RMS Location Intelligence API for property catastrophe risk analysis, with 114+ data product layers covering multiple perils and regions.

Category
Visit Server

README

RMS Location Intelligence MCP Server

MCP server providing access to the Moody's RMS Location Intelligence API for property catastrophe risk analysis.

Overview

This server wraps the RMS Location Intelligence API, offering 114+ data product layers covering:

  • Earthquake (eq)
  • Windstorm (ws)
  • Flood (fl)
  • Wildfire (wf)
  • Convective storm (cs)
  • Winter storm (wt)
  • Terrorism (tr)

Coverage spans 20+ regions worldwide including US, EU, CA, AU, CN, JP, and more.

Project Structure

C:/Users/khano3/li-rms-mcp/
├── server.py          # Main FastMCP server (5 tools, 659 lines)
├── layers.py          # Layer catalog (114 layers, 210 lines)
├── requirements.txt   # Python dependencies
├── .env               # API credentials (not committed)
├── .gitignore
├── docs/              # API documentation (53 pages)
└── README.md

Available Tools

1. list_layers

Browse the catalog of 114 data product layers by region, peril, or type.

2. geocode

Convert addresses or coordinates to standardized RMS geocodes with location IDs.

3. lookup_layer

Query a single data layer (hazard, loss cost, risk score, etc.) for a location.

4. composite_lookup

Query multiple layers efficiently in a single request.

5. geocode_reference

Access reference data for countries, admin divisions, postal codes, etc.

Layer Types

  • hazard: Raw hazard metrics (requires location only)
  • risk_score: Risk scores 0-100 (requires location + building characteristics)
  • loss_cost: Expected annual loss (requires location + characteristics + coverage values)
  • mmi: Modified Mercalli Intensity (earthquake only, location only)
  • depth: Flood depth estimates (location only)
  • distance: Distance to features (fault, coast, fire station, etc.)
  • special: Custom data products (varies by layer)

Installation

cd C:/Users/khano3/li-rms-mcp
py -m pip install -r requirements.txt

Configuration

Create .env file (already configured):

LI_API_KEY=YOUR_API_KEY_HERE
LI_BASE_URL=https://api-euw1.rms.com

Usage

Start server (stdio)

py server.py

Start server (HTTP)

MCP_TRANSPORT=http PORT=3000 py server.py

Example Workflows

1. Explore available data

list_layers(region="us", peril="eq")
# Returns: us_eq_loss_cost, us_eq_risk_score, us_mmi, us_distance_to_fault

2. Geocode an address

geocode(
    country_code="US",
    street_address="55 Water St",
    city="New York",
    admin1_code="NY",
    postal_code="10041"
)

3. Query single layer

lookup_layer(
    layer="us_eq_risk_score",
    country_code="US",
    latitude=40.7028,
    longitude=-74.0131,
    construction="C1",
    occupancy="COM1"
)

4. Multi-peril analysis

composite_lookup(
    layers=[
        {"name": "us_eq_loss_cost"},
        {"name": "us_fl_loss_cost"},
        {"name": "us_wf_loss_cost"}
    ],
    country_code="US",
    latitude=37.7749,
    longitude=-122.4194,
    construction="W1",
    occupancy="RES1",
    building_value=500000,
    contents_value=250000
)

Data Requirements by Layer Type

Layer Type Location Characteristics Coverage Values
hazard
mmi
depth
distance
risk_score
loss_cost

Characteristics: construction, occupancy, year_built, num_stories Coverage Values: building_value, contents_value, bi_value

Architecture

  • Pattern: edfx-omar MCP pattern (Python + FastMCP + async httpx)
  • Transport: stdio (default) or HTTP
  • Authentication: API key via Authorization header
  • Credentials: .env file with dotenv
  • Error handling: httpx automatic retry + raise_for_status()
  • Response formatting: JSON with 80k char truncation

Development

Git History

1ec7814 feat: add all 5 tools + main block
c035afe feat: server core — auth, body builder, FastMCP instance
6bceae2 feat: add complete layer catalog
43320c9 chore: project scaffolding

Testing

# Verify layer catalog
py -c "import sys; sys.path.insert(0, '.'); from layers import LAYERS; print(f'{len(LAYERS)} layers')"

# Test tool loading
py -c "import sys; sys.path.insert(0, '.'); from server import list_layers; print(list_layers(region='us')[:200])"

API Documentation

Full API documentation (53 pages) available in docs/ directory.

Next Steps

  1. Register in .mcp.json
  2. Smoke test with Claude
  3. Integration testing with real API calls
  4. Performance optimization if needed

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