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 分