# vessel-api/vesselapi-mcp [Health: Active]

**Category:** 🚆 Travel & Transportation  
**Repository:** https://github.com/vessel-api/vesselapi-mcp  
**GitHub Stars:** 1  
**npm Downloads (last month):** 627  
**Views:** 6  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/vessel-api-vesselapi-mcp

## Description
Maritime vessel tracking via VesselAPI. Search vessels, get real-time positions, ETAs, port events, emissions, inspections, and NAVTEX safety messages.

## Tools
Capabilities this server exposes over MCP:

- **search_vessels** — Search vessels by name, IMO, MMSI, flag, type, callsign, or year built
- **get_vessel** — Get detailed vessel information
- **get_vessel_position** — Get the latest stored vessel position (lat/lon, speed, heading, timestamp); it may be hours or days old
- **get_vessel_eta** — Get the ETA the vessel last reported (declared, not predicted)
- **get_vessel_emissions** — Get EU MRV emissions reports (CO2, fuel consumption)
- **get_vessel_casualties** — Get marine casualty records
- **get_vessel_positions_batch** — Get positions for multiple vessels at once (with optional time range)
- **search_ports** — Search ports by name, country, type, size, region, harbor size, or harbor use
- **get_port** — Get port details by UN/LOCODE
- **get_port_inbound** — Get vessels reporting a port as their destination, within an ETA window
- **get_port_events** — Get arrivals/departures for a port (last 2 hours unless `timeFrom` is given)
- **get_port_events_by_vessel** — Get port events for a vessel (last 2 hours unless `timeFrom` is given)
- **list_port_events** — List port events across all covered ports, with filters for time, country, port, vessel, or event type
- **search_port_events_by_port** — Search port events by port name
- **search_port_events_by_vessel** — Search port events by vessel name
- **get_vessel_last_port_event** — Get the most recent port event for a vessel
- **list_emissions** — List EU MRV emissions reports, with an optional reporting-year filter
- **get_vessels_in_area** — Find vessels with an AIS position in a bounding box (default last 2 hours, at most 4 hours)
- **get_vessels_in_radius** — Find vessels with an AIS position within a radius of a point (default last 2 hours, at most 4 hours)

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "vesselapi-mcp": {
    "command": "npx",
    "args": ["-y","vesselapi-mcp"],
    "env": {
      "VESSELAPI_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `VESSELAPI_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What vessel-api/vesselapi-mcp MCP server does

The vessel-api/vesselapi-mcp MCP server connects an MCP-compatible AI client to maritime data from VesselAPI. Its tools cover vessel identification, current positions, estimated arrivals, port activity, emissions, marine casualties, and location-based searches.

Vessel searches can use identifiers and attributes such as vessel name, IMO number, MMSI, flag, type, callsign, or build year. After finding a vessel, an agent can request detailed records, a current position, an ETA, emissions information, casualty records, or several positions in one request. Port tools support searches and lookup by UN/LOCODE, inbound-vessel queries, arrivals and departures, and event searches by port or vessel.

## How it works

The server runs as a local Node.js process launched with `npx` and communicates with the client through MCP. Each exposed tool maps to a maritime query against VesselAPI. Geographic tools can find vessels inside a bounding box or within a radius around a point, with an optional time range.

List-style endpoints accept `limit` and `nextToken` parameters. When more results are available, the response supplies a token that can be sent with the next request. This lets a client page through results explicitly and manage API quota usage.

## Setup and configuration

To use the vessel-api/vesselapi-mcp MCP server, create an account at the VesselAPI dashboard and generate an API token. Store that token in the `VESSELAPI_API_KEY` environment variable in the MCP client configuration.

A local configuration uses the following command and environment variable:

```json
{
  "mcpServers": {
    "vesselapi": {
      "command": "npx",
      "args": ["-y", "vesselapi-mcp"],
      "env": {
        "VESSELAPI_API_KEY": "your-api-key"
      }
    }
  }
}
```

A hosted deployment is also listed on Fronteir AI, but the provided setup instructions describe the local `npx` process.

## Tools and capabilities

The tool set includes:

- Vessel search, detail lookup, current position, ETA, emissions, casualties, and batch positions.
- Port search, port details, inbound vessels, arrivals and departures, and the latest event for a vessel.
- Global port-event listing with filters for time, country, port, vessel, or event type.
- Global emissions listing with an optional year filter.
- Vessel discovery by bounding box or radius, with optional time ranges.

Emissions and casualty data are attributed to the European Maritime Safety Agency sources identified in the README, including THETIS-MRV and EMCIP. The source data may be transformed and combined, and the attribution notes state that EMSA does not endorse the service.

## Limitations and notes

Results and available fields therefore depend on the underlying VesselAPI service.

_Full upstream README: https://allmcps.com/mcp/vessel-api-vesselapi-mcp/readme_

