Vesselapi Mcp

io.github.vessel-api由 GitHub 账号 vessel-api 发布v2.2.1更新于 Nov 1, 2026

MCP server for the VesselAPI: maritime vessel tracking, port events and emissions

已验证STDIO仅桌面位置与生活数据与分析

概览

AI 生成的概览

把 VesselAPI 的海事数据(船舶搜索、位置、ETA、港口事件与欧盟排放报告)提供给 AI 助手使用。

可以做什么
  • 按船名、IMO、MMSI、船旗、类型或呼号搜索和查询船舶,获取详情、最新存储位置、申报 ETA、海难记录及批量位置
  • 搜索港口并查看港口详情、目的港船舶、进出港事件,以及所有覆盖港口的港口事件
  • 按边界框或某点半径查找有 AIS 位置的船舶
  • 列出欧盟 MRV 排放报告(CO2、燃油消耗),可按报告年份筛选
  • 通过 limit 与 nextToken 手动分页,以控制 API 配额消耗
适用场景
适合让助手在对话中直接回答船舶、靠港、船舶动态或航运排放相关问题,例如追踪某艘船、查看某港口即将到港的船舶,或查阅欧盟 MRV 排放数据。
运行要求
通过 npx 以 stdio 在本地运行(需要 Node.js)。需要 VesselAPI 账号,并在 VesselAPI 控制台创建 API 令牌,以环境变量 VESSELAPI_API_KEY 提供。需要能访问 VesselAPI 服务的网络连接。
安装前请注意
API 令牌属于凭据,会写入客户端配置文件,请勿放入共享仓库。查询会消耗 VesselAPI API 配额,分页与批量调用都会影响用量。位置为最新存储的 AIS 位置,可能已过去数小时或数天;ETA 为船舶自行申报而非预测值。排放与海难数据来自欧盟/EMSA 来源,需注明出处,且 EMSA 不为本服务背书。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Vesselapi Mcp,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

VesselAPI MCP Server

[CI] [npm] [Node] [License: MIT]

[图片]

An MCP (Model Context Protocol) server that exposes maritime data from the VesselAPI to AI assistants like Claude Desktop, Cursor, Windsurf, and Claude Code.

Prerequisites

  1. Sign up at dashboard.vesselapi.com
  2. Create an API token in your dashboard
  3. Use the token as VESSELAPI_API_KEY in the configuration below

Resources: Documentation | API Explorer | Dashboard | Contact Support

Features

  • 19 tools covering vessels, ports, location search, and emissions
  • Vessel search, positions (single and batch), ETA, emissions, and casualties
  • Port search, details, port events (arrivals/departures), and port event search across all covered ports
  • Geographic vessel search (bounding box and radius)
  • Manual pagination to control API quota usage

Quick Start

No installation required. Configure your AI client with npx:

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

Configuration

Add the JSON above to the config file for your client:

ClientConfig file
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Cursor.cursor/mcp.json or ~/.cursor/mcp.json
Claude Codeclaude mcp add, which writes .mcp.json in the project or ~/.claude.json for user scope
Windsurf~/.codeium/windsurf/mcp_config.json

Tools

Vessel Tools

ToolDescription
search_vesselsSearch vessels by name, IMO, MMSI, flag, type, callsign, or year built
get_vesselGet detailed vessel information
get_vessel_positionGet the latest stored vessel position (lat/lon, speed, heading, timestamp); it may be hours or days old
get_vessel_etaGet the ETA the vessel last reported (declared, not predicted)
get_vessel_emissionsGet EU MRV emissions reports (CO2, fuel consumption)
get_vessel_casualtiesGet marine casualty records
get_vessel_positions_batchGet positions for multiple vessels at once (with optional time range)

Port Tools

ToolDescription
search_portsSearch ports by name, country, type, size, region, harbor size, or harbor use
get_portGet port details by UN/LOCODE
get_port_inboundGet vessels reporting a port as their destination, within an ETA window
get_port_eventsGet arrivals/departures for a port (last 2 hours unless timeFrom is given)
get_port_events_by_vesselGet port events for a vessel (last 2 hours unless timeFrom is given)
list_port_eventsList port events across all covered ports, with filters for time, country, port, vessel, or event type
search_port_events_by_portSearch port events by port name
search_port_events_by_vesselSearch port events by vessel name
get_vessel_last_port_eventGet the most recent port event for a vessel

Emissions Tools

ToolDescription
list_emissionsList EU MRV emissions reports, with an optional reporting-year filter

Location Tools

ToolDescription
get_vessels_in_areaFind vessels with an AIS position in a bounding box (default last 2 hours, at most 4 hours)
get_vessels_in_radiusFind vessels with an AIS position within a radius of a point (default last 2 hours, at most 4 hours)

Pagination

All list endpoints support limit and nextToken parameters for manual pagination. When more results exist, the response includes a nextToken. Pass it in the next call to get the next page.

Development

bash
git clone https://github.com/vessel-api/vesselapi-mcp.gitcd vesselapi-mcpnpm installnpm run build
bash
npm run build        # Build the servernpm run typecheck    # Type-check without emittingnpm run clean        # Remove build artifacts

Testing with MCP Inspector

bash
VESSELAPI_API_KEY=your-key npx @modelcontextprotocol/inspector node dist/index.js

Data Sources & Attribution

Emissions and casualty data: © European Union. Source: European Maritime Safety Agency (EMSA): THETIS-MRV (EU MRV, Regulation (EU) 2015/757) and the European Marine Casualty Information Platform (EMCIP). Reused under the European Commission reuse notice (Commission Decision 2011/833/EU), which authorises reuse for commercial and non-commercial purposes with acknowledgement of the source. Data may be transformed and combined; EMSA does not endorse this service.

License

MIT

来源:README.md,提交 8352732

工具

0
SourceWeft 曾在隔离沙箱中以无凭据方式启动该软件包一次,以列出其工具,但未能完成:服务器未能启动。

版本历史

3
  1. v2.2.1最新Nov 1, 2026
  2. v2.2.0Oct 29, 2026
  3. v1.0.1Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分