Skip to main content
Glama

searoute_mcp

Maritime Routing MCP Server (Python)

CI License: MIT Python Status

Table of Contents


Searoute MCP Demo

Overview

searoute_mcp is a Model Context Protocol (MCP) server for maritime routing.
It integrates searoute-py with MCP, exposing tools that allow LLM clients (e.g. Claude Desktop) to:

  • Compute oceangoing route distances (in nautical miles)

  • Retrieve full oceangoing routes with waypoints (GeoJSON format)

  • Compare against geodesic great-circle distances

All tools accept latitude, longitude as inputs for user friendliness, while internally converting to the required searoute format.


Installation

Clone the repository and install dependencies:

git clone https://github.com/ShippingIntel/searoute_mcp.git
cd searoute_mcp
python3 -m venv .venv
source .venv/bin/activate   # Linux/macOS
.venv\Scripts\activate      # Windows

pip install -r requirements.txt

Dependencies:

  • mcp[python]>=0.1.0

  • searoute>=1.4.3

  • geopy>=2.4.1


Quickstart

Run the server locally:

python -m mcp_server.main

Install into Claude Desktop:

mcp install mcp_server/main.py

Test with the MCP Inspector:

mcp dev mcp_server/main.py

Core Tools

  • compute_distance Shortest oceangoing route distance (nm) between two coordinates.

  • compute_route Full oceangoing route (GeoJSON geometry + distance).

  • compute_geodesic Great-circle (sphere) distance in nautical miles, ignoring land/sea constraints.


Example Prompts

All prompts use latitude, longitude ordering.

{
  "tool": "compute_distance",
  "arguments": {
    "start_lat": 47.6062,
    "start_lon": -122.3321,
    "end_lat": 35.6895,
    "end_lon": 139.6917
  }
}
{
  "tool": "compute_route",
  "arguments": {
    "start_lat": 40.7128,
    "start_lon": -74.0060,
    "end_lat": 48.8566,
    "end_lon": 2.3522
  }
}
{
  "tool": "compute_geodesic",
  "arguments": {
    "start_lat": 51.5072,
    "start_lon": -0.1276,
    "end_lat": -33.8688,
    "end_lon": 151.2093
  }
}

Examples:

  • Seattle → Tokyo (oceangoing distance)

  • New York → Paris (full route with waypoints)

  • London → Sydney (geodesic great-circle)


Running Your Server

Choose a transport:

# stdio (local dev)
python -m mcp_server.main stdio

# Streamable HTTP (for deployment)
python -m mcp_server.main streamable-http

Contributing

Contributions are welcome! See CONTRIBUTING.md for setup and workflow guidelines.


License

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


References

searoute_mcp builds upon prior open-source and research projects in maritime routing and network analysis:

  • Marnet Project — Atlas of Marine Socio-economic Indicators for the Atlantic Area EU transnational project led by the Northern & Western Regional Assembly, developing a socio-economic data network for the Atlantic regions.

  • searoute-py Python package for generating shortest sea routes between two points, designed for visualizing realistic maritime routes and customizable with ports and networks.

  • NetworkX Python package for the creation, manipulation, and study of complex networks. Provides the graph algorithms underpinning routing logic.

  • Eurostat SeaRoute Java-based library and webservice by Eurostat computing shortest maritime routes from global shipping networks enriched with AIS data, using Dijkstra’s algorithm via GeoTools.

A
license - permissive license
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
2Releases (12mo)

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Project-Harrison/searoute-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server