mcpField
V
Vessel Traffic MCP

Vessel Traffic MCP

本地服务
tools-mcp.github.io地图与出行89 周前更新

关于 Vessel Traffic MCP

Vessel Traffic MCP 是面向 AI Agent 和物流工作流的只读海事数据 MCP 服务,可查询船舶身份、AIS 位置与航迹、港口活动和航运时刻表。它通过不同供应商统一数据入口,并为实时结果保留来源信息。

主要功能

  1. 01船名、MMSI、IMO 等身份查询
  2. 02位置、区域与航迹查询
  3. 03港口挂靠及航运时刻表
  4. 04延误判断与来源标注
  5. 05固定数据、公开源及 BYOK 供应商

适用场景

  1. 01按船名或提单文本查找船舶
  2. 02查看船舶当前位置和历史航迹
  3. 03按港口对查询集装箱船期
  4. 04在接入付费 API 前测试海事工作流

MCP 相关

该只读 MCP 服务向客户端提供船舶、AIS 式动态、港口活动、时刻表及供应商配置工具。支持 stdio 和 Streamable HTTP;实时或公开数据结果包含来源供应商及链接。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"vessel-traffic": {
"command": "npx",
"args": [
"-y",
"@tools-mcp/vessel-traffic-mcp"
],
"env": {
"VESSEL_MCP_TRANSPORT": "<VESSEL_MCP_TRANSPORT>",
"VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS": "<VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS>"
}
}
}
}
启动命令npx -y @tools-mcp/vessel-traffic-mcp
需要配置的环境变量
VESSEL_MCP_TRANSPORTRun the package as a local stdio MCP server.
VESSEL_MCP_ENABLE_PUBLIC_PROVIDERSOptional comma-separated public providers to enable at runtime.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@tools-mcp/vessel-traffic-mcp0.1.0

工具

14

收录的工具列表 · 更新于 3 周前

此工具无需参数。

详细介绍

Vessel Traffic MCP

English | 한국어 | 日本語 | 中文

许可证:MIT npm npm 下载量 CI GitHub 发布版本 GitHub 星标数

MCP Registry:已发布 Agent 落地页 GitHub 问题 GitHub 分支数

为 AI Agent 提供船舶跟踪和航运时刻表。

本地 Vessel Traffic MCP 地图界面,显示 EVER GIVEN 及来源标注

Vessel Traffic MCP 是一款只读的 Model Context Protocol (MCP) 服务, 用于查询船舶身份、AIS 类位置、航迹、港口挂靠、 承运商时刻表、船舶时刻表和延误启发式信息。它为 Claude、ChatGPT、Codex、MCP Inspector 和其他 MCP 客户端提供统一的 海事数据工具接口。

当 Agent 需要以下功能时,可使用它:

  • 通过通用连接器类 MCP 工具搜索/获取船舶上下文;
  • 根据名称、MMSI、IMO、呼号或提单文本查找船舶;
  • 查询船舶当前位置、历史航迹或某个区域内的船舶;
  • 按港口组合或船舶搜索集装箱航运时刻表;
  • 为每条实时/公开结果返回原始提供方和来源 URL;
  • 在购买付费 AIS 或时刻表 API 前,安全地测试海事工作流。

本项目不会绕过提供方条款、付费墙、CAPTCHA 或访问控制。商业提供方采用自带密钥(BYOK)模式,默认测试路径仅使用 fixture;本项目不是导航产品。

基于 MIT 许可证开源。版本低于 1.0;API 和工具接口可能会变更。

目录

在 MCP 客户端中安装

对于 Claude Desktop、Claude Code、Codex CLI、Cursor、VS Code 或任何 stdio MCP 客户端,请使用 npm 包:

{
  "mcpServers": {
    "vessel-traffic-mcp": {
      "command": "npx",
      "args": ["-y", "@tools-mcp/vessel-traffic-mcp"],
      "env": {
        "VESSEL_MCP_TRANSPORT": "stdio",
        "VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS": "myshiptracking,tradlinx,aisfriends"
      }
    }
  }
}

然后重启客户端并尝试:

Find the current position of EVER GIVEN. Include source.provider and source.landingUrl.
Search carrier schedules from KRPUS to NLRTM. Include the source URL.

完整的客户端设置说明见 docs/runbooks/clients.md,Codex 相关详情见 docs/runbooks/codex.md。 源代码检出配置片段见 共享 MCP 配置片段。 市场和 AI 客户端提交辅助文件见 llms-install.md、LAUNCHGUIDE.md 和 assets/logo-400.png。

Agent 发现页面

面向助手 Agent 搜索和安装片段的公开首页:

https://tools-mcp.github.io/vessel-traffic-mcp/

分享此项目时,请使用该 URL,并称其为船舶 AIS MCP、船舶跟踪 MCP、ChatGPT MCP、Codex MCP、Claude MCP 或 Gemini MCP 服务。此页面包含适用于 EVER GIVEN 场景的黄金提示词,以及用于本地 stdio 和远程 Streamable HTTP 设置的客户端片段。

助手服务不会自动发现任意 MCP 服务。操作者必须先连接此 MCP;之后, 工具描述、search/fetch 封装工具和船舶专用工具便能为 Agent 提供清晰路径, 将船名提示词转化为带来源标注的结果。

提供的功能

区域只读工具
类搜索连接器流程search、fetch
船舶身份vessel_search、vessel_name_resolve、document_vessel_lookup
AIS 类移动信息vessel_position、vessel_area、vessel_track
港口活动port_calls
航运时刻表carrier_schedule_search、vessel_schedule、schedule_delay_predict
提供商设置provider_status、data_sources、credential_profiles、provider_onboarding

每个实时或公共提供商响应都必须公开来源信息: source.provider 和 source.landingUrl。本项目旨在引导用户返回 原始服务,而不是隐藏或重新包装数据源。

提供商模式

提供商组启用方式备注
Fixture默认确定性测试和演示;无需网络、账户或 API 密钥
公共自选VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends带来源标注的公共网页适配器
BYOK 商业/社区 APIVESSEL_MCP_ENABLE_BYOK_PROVIDERS=... 加上 VESSEL_MCP_PROFILE_* 环境变量仅使用用户自有凭据;日志、错误和 MCP 响应中均会对密钥进行脱敏
远程部署VESSEL_MCP_TRANSPORT=http在 /mcp 提供 Streamable HTTP;设置 VESSEL_MCP_AUTH_TOKEN 以使用 Authorization: Bearer <token>

使用 provider_onboarding MCP 工具查看提供商注册 URL、所需环境变量、 已配置的配置文件状态和验证步骤。该工具为只读工具,不会创建账户、 接受条款、解决 CAPTCHA、完成电子邮件验证、设置付款详情或签发 API 密钥。

负责任地使用和第三方权利

本项目作为开源基础设施提供,用于公益互操作、工作流测试以及带来源归属的海事数据访问。 本项目不授予复制、再分发、重新品牌化、规避或滥用第三方服务、数据库、地图、商标、受版权保护的材料、API 响应或提供方内容的任何权利。

用户有责任配置和运行本软件,并确保其行为符合适用法律、提供方条款、账户权限、 速率限制、数据许可及公司内部政策。请勿使用本项目绕过身份验证、付费墙、验证码、访问控制、robots 政策或商业限制。

作者和贡献者尊重所有所引用服务和数据提供方的权利及条款。实时响应和公共提供方的响应旨在通过 source.provider 和 source.landingUrl 保留来源归属,并引导用户返回原始来源。如果权利人、服务 运营方或受影响方提出有充分依据的问题,维护者将及时审核,并在适当情况下修改、禁用或移除受影响的适配器、文档、固件或引用。

本软件根据 MIT 许可证提供,不附带任何保证。本 README 中的内容不构成法律建议,也不能替代对适用于你自身使用场景的条款进行审查。

帮助传播

如果这能帮助构建 MCP 工具、航运/物流软件或围绕海事数据打造 AI 工作流的人,请分享此代码仓库并征求实际工作流方面的反馈。可复制粘贴的分享素材包位于 docs/marketing/help-us-spread.md。

你可以通过试用 npm 安装、发布针对特定受众的社区文章、申请提供方适配器,或介绍实际的货运代理、贸易、港口停靠、船舶预计到达时间或承运人时刻表工作流来提供帮助。

从源代码安装

git clone https://github.com/tools-mcp/vessel-traffic-mcp.git
cd vessel-traffic-mcp
npm ci
npm run lint
npm test
npm run build
VESSEL_MCP_TRANSPORT=stdio \
VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends \
npm start

默认验证门仅使用经过清理的固件。它不会调用付费或实时提供方,也不需要 API 密钥、账户或 网络访问。

如需在本地进行包含船名输入和地图的可视化检查:

npm run start:map

打开 http://127.0.0.1:8787,搜索 EVER GIVEN 或 MMSI 353136000。

远程 HTTP 设置

对于远程 MCP 客户端,请在 /mcp 运行 Streamable HTTP,并公开 /health:

export VESSEL_MCP_TRANSPORT=http
export VESSEL_MCP_HTTP_HOST=127.0.0.1
export VESSEL_MCP_HTTP_PORT=8765
export VESSEL_MCP_AUTH_TOKEN="<a-strong-random-token-you-generated>"
npm run start:http

curl -sf "http://127.0.0.1:8765/health"

设置 VESSEL_MCP_AUTH_TOKEN 后,MCP 请求需要携带 Authorization: Bearer <token>。请参阅 docs/runbooks/streamable-http-server.md 和 docs/runbooks/deployment-https.md。

当前分发情况

平台状态访问地址
GitHub公开https://github.com/tools-mcp/vessel-traffic-mcp
Agent 介绍页公开https://tools-mcp.github.io/vessel-traffic-mcp/
npm公开@tools-mcp/[email protected],地址:https://www.npmjs.com/package/@tools-mcp/vessel-traffic-mcp
GitHub Release已发布https://github.com/tools-mcp/vessel-traffic-mcp/releases/tag/v0.1.0
MCP Registry已发布io.github.tools-mcp/[email protected],位于官方注册表
ServerHub已收录https://www.serverhub.digital/servers/vessel-traffic-mcp
VaultPlane已收录https://www.vaultplane.com/server/vessel-traffic-mcp
MCPRepository已提交已排队等待验证:https://mcprepository.com/tools-mcp/vessel-traffic-mcp
本地地图 UI可从源代码启动运行 npm run start:map,然后打开 http://127.0.0.1:8787
HTTP 目录元数据可从源代码启动运行 npm run start:http,然后获取 /.well-known/mcp/server-card.json
Glama已提交审核已于 2026-05-27 通过 Glama 的 Add Server 流程提交;公开收录页面 URL 和评分徽章预留在 https://glama.ai/mcp/servers/tools-mcp/vessel-traffic-mcp,在审核/索引完成前可能返回 404
PulseMCP等待提交/索引在 docs/runbooks/public-sharing.md 和 docs/marketing/outreach-status.md 中跟进
Smithery等待 HTTPS 端点需要稳定的公开 HTTPS /mcp URL

发布文案和目录提交材料位于 docs/marketing。

Star 历史

Star 历史图表

语言

Agent 提示词

向其他编码 Agent 请求安装 MCP 时,请使用此提示词:

Install and configure https://github.com/tools-mcp/vessel-traffic-mcp
as a local stdio MCP server on this machine.

Read README.md and llms.txt first. Clone the repository, run `npm ci`,
run `npm run build`, then add the MCP server to the local MCP client
using an absolute path to `dist/index.js`.

Use `VESSEL_MCP_TRANSPORT=stdio` and enable public providers with
`VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends`.

Do not commit local MCP client config files, env files, API keys,
cookies, HAR files, browser sessions, or raw captures. Do not copy
credentials from another machine.

After restarting the MCP client, verify with:
1. Ask for EVER GIVEN current position and include the source URL.
2. Ask for a KRPUS to NLRTM carrier schedule and include the source URL.

한국어

概述

vessel-traffic-mcp 是一款 MCP 客户端可通过只读工具查询经授权的航运/船舶数据源的服务。

提供基于船名、MMSI、IMO、呼号的搜索、最新位置查询、区域查询、港口挂靠查询、航运公司时刻表、按船舶查询时刻表以及时刻表延误判断。

实时或公开 provider 的响应必须包含 source.provider 和 source.landingUrl。本项目旨在为原服务引流并展示来源,而非隐藏来源或重新打品牌。

发给愿意帮忙传播的人士的简短文案和社区帖子草稿已整理在 docs/marketing/help-us-spread.md 中。

快速开始
git clone https://github.com/tools-mcp/vessel-traffic-mcp.git
cd vessel-traffic-mcp
npm install
npm run lint
npm test
npm run build

基本验证仅使用经过清理的 fixture,不会调用付费或实时 provider,也不需要 API 密钥、账户或网络访问权限。

本地 MCP 配置

本地桌面/命令行客户端使用 stdio transport。

VESSEL_MCP_TRANSPORT=stdio npm start

Codex CLI、Claude Desktop 和 Claude Code 的设置可使用 通用 MCP 配置示例。所有客户端的设置整理在 docs/runbooks/clients.md 中,Codex 专用设置整理在 docs/runbooks/codex.md 中。

远程 MCP 配置

远程 MCP 客户端使用 Streamable HTTP /mcp 端点。 /health 是公开的 health check。

export VESSEL_MCP_TRANSPORT=http
export VESSEL_MCP_HTTP_HOST=127.0.0.1
export VESSEL_MCP_HTTP_PORT=8765
export VESSEL_MCP_AUTH_TOKEN="<a-strong-random-token-you-generated>"
npm run start:http

如果设置了 VESSEL_MCP_AUTH_TOKEN,MCP 请求必须包含 Authorization: Bearer <token>。部署文档请参阅 docs/runbooks/deployment-https.md。

公开 Provider

必须明确启用基于浏览器抓取的公开 adapter。

VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends npm start
  • myshiptracking:船舶自动补全、基于所选 MMSI 查询最新位置、地图区域查询。
  • tradlinx:FCL/LCL 航运公司时刻表查询。
  • aisfriends:基于公开地图 bounding-box 查询区域内船舶位置。不支持按船名搜索。
  • shipfinder:用于明确指定 provider 路由的船舶自动补全及详细 API 格式。

响应始终包含原始来源 provider,以及用户可打开的来源 URL。

BYOK Provider

유료/credential 기반 provider는 BYOK 방식으로만 사용합니다. 실제 키는 로그, 에러, MCP 응답에 노출되지 않습니다.

export VESSEL_MCP_PROFILE_MARINETRAFFIC__API_KEY="<your-key>"
export VESSEL_MCP_ENABLE_BYOK_PROVIDERS="marinetraffic,vesselfinder,aisstream,aishub,barentswatch,searates-schedules,routescanner-connect,vesselapi,datadocked,datalastic,globalfishingwatch"

현재 credential 기반으로 런타임 등록 가능한 provider는 marinetraffic, vesselfinder, aisstream, aishub, barentswatch, searates-schedules, routescanner-connect, vesselapi, datadocked, datalastic, globalfishingwatch입니다. 기본 credential profile이 설정된 provider는 자동으로 등록됩니다.

자세한 내용은 docs/runbooks/credential-profiles.md와 docs/runbooks/operator.md를 참고하세요.

provider_onboarding MCP 도구를 사용하면 provider별 가입 URL, 필요한 env var, 현재 credential 설정 여부, 검증 단계를 확인할 수 있습니다. 이 도구는 읽기 전용이며 계정 생성, 약관 동의, CAPTCHA, 이메일 인증, 결제 정보 설정, API 키 발급을 대신 수행하지 않습니다.

책임 있는 사용 및 제3자 권리

이 프로젝트는 공익적 상호운용성, 업무 자동화 실험, 출처가 표시되는 해운/선박 데이터 접근을 돕기 위해 오픈소스로 공개되었습니다. 이 프로젝트는 제3자 서비스, 데이터베이스, 지도, 상표, 저작물, API 응답, provider 콘텐츠를 복제, 재배포, 재브랜딩, 우회, 오용할 권리를 부여하지 않습니다.

소프트웨어를 어떻게 설정하고 사용하는지는 사용자 책임입니다. 사용자는 관련 법령, provider 약관, 계정 권한, rate limit, 데이터 라이선스, 내부 회사 정책을 직접 확인하고 준수해야 합니다. 인증, 유료 기능, CAPTCHA, 접근 제어, robots 정책, 상업적 제한을 우회하기 위해 이 프로젝트를 사용해서는 안 됩니다.

작성자와 기여자는 참조된 모든 서비스와 데이터 provider의 권리와 약관을 존중합니다. live/public provider 응답은 source.provider와 source.landingUrl로 원 출처를 표시하고, 사용자가 원 서비스를 확인할 수 있도록 설계되었습니다. 권리자, 서비스 운영자, 또는 관련 당사자가 근거 있는 문제를 제기하면 maintainer는 신속히 검토하고, 필요한 경우 해당 adapter, 문서, fixture, reference를 수정, 비활성화, 또는 제거하겠습니다.

이 소프트웨어는 MIT 라이선스에 따라 보증 없이 제공됩니다. 이 README의 문구는 법률 자문이 아니며, 각 사용 사례에 적용되는 약관과 법적 의무를 검토하는 일을 대체하지 않습니다.

에이전트 설정 프롬프트

다른 코딩 에이전트에게 이 MCP를 설치하게 할 때 사용할 프롬프트입니다.

https://github.com/tools-mcp/vessel-traffic-mcp 를 이 머신의 로컬
stdio MCP 서버로 설치하고 설정해줘.

먼저 README.md와 llms.txt를 읽어라. repo를 clone하고 `npm ci`,
`npm run build`를 실행한 뒤, 로컬 MCP 클라이언트 설정에
`dist/index.js`의 절대경로를 등록해라.

`VESSEL_MCP_TRANSPORT=stdio`를 사용하고,
`VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends`를 설정해라.

로컬 MCP 클라이언트 설정 파일, env 파일, API 키, 쿠키, HAR 파일,
브라우저 세션, raw capture는 커밋하지 마라. 다른 머신의 credential을
복사하지 마라.

MCP 클라이언트를 재시작한 뒤 다음으로 검증해라:
1. EVER GIVEN 현재 위치를 조회하고 출처 URL을 함께 보여줘.
2. KRPUS에서 NLRTM까지의 선사 스케줄을 조회하고 출처 URL을 함께 보여줘.

日本語

概要

vessel-traffic-mcp は、MCP クライアントから許可された海事データ ソースを読み取り専用で参照するためのサーバーです。

船名、MMSI、IMO、コールサインによる検索、最新位置、エリア検索、 寄港情報、船会社スケジュール、船舶別スケジュール、遅延判定を 提供します。

ライブまたは公開 provider の応答では、source.provider と source.landingUrl を必ず含めます。このプロジェクトは元サービスへ ユーザーを誘導し、出典を明示することを目的としています。

クイックスタート
git clone https://github.com/tools-mcp/vessel-traffic-mcp.git
cd vessel-traffic-mcp
npm install
npm run lint
npm test
npm run build

標準の検証は sanitize 済み fixture のみを使います。有料 provider や live provider は呼び出さず、API キー、アカウント、ネットワーク接続も 不要です。

ローカル MCP 設定

ローカルのデスクトップ/CLI クライアントでは stdio transport を使います。

VESSEL_MCP_TRANSPORT=stdio npm start

Codex CLI、Claude Desktop、Claude Code の設定には 共通 MCP 設定例を使用してください。

リモート MCP 設定

リモート MCP クライアントでは Streamable HTTP の /mcp を使います。 /health は公開 health check です。

export VESSEL_MCP_TRANSPORT=http
export VESSEL_MCP_HTTP_HOST=127.0.0.1
export VESSEL_MCP_HTTP_PORT=8765
export VESSEL_MCP_AUTH_TOKEN="<a-strong-random-token-you-generated>"
npm run start:http

VESSEL_MCP_AUTH_TOKEN を設定した場合、MCP リクエストには Authorization: Bearer <token> が必要です。

公開 Provider

ブラウザキャプチャ由来の公開 adapter は明示的に有効化します。

VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends npm start
  • myshiptracking: 船舶オートコンプリート、選択 MMSI からの最新位置、 地図範囲検索。
  • tradlinx: FCL/LCL の船会社スケジュール検索。
  • aisfriends: 公開地図の bounding-box ベースのエリア位置検索。船名検索は未対応。
  • shipfinder: 明示的 provider ルーティング用の船舶検索と詳細 API 形状。
BYOK Provider

有料または credential が必要な provider は BYOK のみです。実際のキーは ログ、エラー、MCP 応答に出しません。

export VESSEL_MCP_PROFILE_MARINETRAFFIC__API_KEY="<your-key>"
export VESSEL_MCP_ENABLE_BYOK_PROVIDERS="marinetraffic,vesselfinder,aisstream,aishub,barentswatch,searates-schedules,routescanner-connect,vesselapi,datadocked,datalastic,globalfishingwatch"

現在 runtime で有効化できる credentialed provider は marinetraffic, vesselfinder, aisstream, aishub, barentswatch, searates-schedules, routescanner-connect, vesselapi, datadocked, datalastic, globalfishingwatch です。

エージェント設定プロンプト

別のコーディングエージェントに MCP を設定させる場合のプロンプトです。

https://github.com/tools-mcp/vessel-traffic-mcp を、このマシンの
ローカル stdio MCP サーバーとしてインストールして設定してください。

最初に README.md と llms.txt を読んでください。repo を clone し、
`npm ci` と `npm run build` を実行し、`dist/index.js` の絶対パスを
ローカル MCP クライアントに登録してください。

`VESSEL_MCP_TRANSPORT=stdio` を使い、
`VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends` を設定してください。

ローカル MCP クライアント設定、env ファイル、API キー、Cookie、HAR、
ブラウザセッション、raw capture を commit しないでください。他の
マシンから credential をコピーしないでください。

再起動後、EVER GIVEN の現在位置と出典 URL、KRPUS から NLRTM への
船会社スケジュールと出典 URL を確認してください。

中文

概览

vessel-traffic-mcp 是一个只读 MCP 服务器,让 MCP 客户端能够通过 统一工具接口访问已授权的海事数据来源。

它支持按船名、MMSI、IMO、呼号搜索船舶,查询最新位置、区域位置、 港口靠泊、承运人航线计划、船舶计划和延误判断。

所有实时或公开 provider 的响应都必须包含 source.provider 和 source.landingUrl。本项目用于向原始服务导流并明确显示出处,而不是 隐藏或重新包装数据来源。

快速开始
git clone https://github.com/tools-mcp/vessel-traffic-mcp.git
cd vessel-traffic-mcp
npm install
npm run lint
npm test
npm run build

默认验证只使用已清洗的 fixture,不调用付费或实时 provider,也不需要 API key、账号或网络访问。

本地 MCP 设置

本地桌面和 CLI 客户端使用 stdio transport。

VESSEL_MCP_TRANSPORT=stdio npm start

Codex CLI、Claude Desktop、Claude Code 可使用 共享 MCP 配置片段。

远程 MCP 设置

远程 MCP 客户端使用 Streamable HTTP /mcp,/health 是公开健康检查。

export VESSEL_MCP_TRANSPORT=http
export VESSEL_MCP_HTTP_HOST=127.0.0.1
export VESSEL_MCP_HTTP_PORT=8765
export VESSEL_MCP_AUTH_TOKEN="<a-strong-random-token-you-generated>"
npm run start:http

设置 VESSEL_MCP_AUTH_TOKEN 后,MCP 请求需要 Authorization: Bearer <token>。

公开 Provider

浏览器捕获得到的公开 adapter 需要显式启用。

VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends npm start
  • myshiptracking: 船舶自动完成、按选定 MMSI 查询最新位置、地图范围查询。
  • tradlinx: FCL/LCL 承运人航线计划查询。
  • aisfriends: 基于公开地图 bounding-box 的区域位置查询;不支持船名搜索。
  • shipfinder: 用于显式 provider 路由的船舶搜索和详情 API 形状。
BYOK Provider

付费或需要凭据的 provider 只能使用 BYOK。真实密钥不会出现在日志、 错误或 MCP 响应中。

export VESSEL_MCP_PROFILE_MARINETRAFFIC__API_KEY="<your-key>"
export VESSEL_MCP_ENABLE_BYOK_PROVIDERS="marinetraffic,vesselfinder,aisstream,aishub,barentswatch,searates-schedules,routescanner-connect,vesselapi,datadocked,datalastic,globalfishingwatch"

当前可在运行时启用的凭据型 provider 有 marinetraffic、 vesselfinder、aisstream、aishub、barentswatch、 searates-schedules、routescanner-connect、vesselapi、datadocked、datalastic、globalfishingwatch。

Agent 设置提示词

让其他编码 Agent 安装此 MCP 时可使用以下提示词。

请将 https://github.com/tools-mcp/vessel-traffic-mcp 安装并配置为本机
本地 stdio MCP 服务器。

先阅读 README.md 和 llms.txt。clone 仓库,运行 `npm ci` 和
`npm run build`,然后在本地 MCP 客户端中用 `dist/index.js` 的绝对路径
注册服务器。

使用 `VESSEL_MCP_TRANSPORT=stdio`,并设置
`VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends`。

不要提交本地 MCP 客户端配置、env 文件、API key、cookie、HAR 文件、
浏览器 session 或 raw capture。不要从其他机器复制 credentials。

重启 MCP 客户端后验证:
1. 查询 EVER GIVEN 当前船位,并显示来源 URL。
2. 查询 KRPUS 到 NLRTM 的承运人航线计划,并显示来源 URL。

共享参考

共享 MCP 配置片段

Codex CLI ~/.codex/config.toml:

[mcp_servers.vessel-traffic-mcp]
command = "node"
args = ["/absolute/path/to/vessel-traffic-mcp/dist/index.js"]

[mcp_servers.vessel-traffic-mcp.env]
VESSEL_MCP_TRANSPORT = "stdio"
VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS = "myshiptracking,tradlinx,aisfriends"

Claude Desktop / Claude Code 配置:

{
  "mcpServers": {
    "vessel-traffic-mcp": {
      "command": "node",
      "args": ["/absolute/path/to/vessel-traffic-mcp/dist/index.js"],
      "env": {
        "VESSEL_MCP_TRANSPORT": "stdio",
        "VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS": "myshiptracking,tradlinx,aisfriends"
      }
    }
  }
}
Provider 实现状态

PRD 的范围有意设置得比默认启用的适配器更广。 当前状态:

分组运行时状态Providers
默认无需环境变量即可启用fixture
公共 opt-inVESSEL_MCP_ENABLE_PUBLIC_PROVIDERSaisfriends、myshiptracking、shipfinder、tradlinx-schedule
已实现凭据支持VESSEL_MCP_ENABLE_BYOK_PROVIDERS 或已配置的默认配置文件marinetraffic、vesselfinder、aisstream、aishub、barentswatch、searates-schedules、routescanner-connect、vesselapi、datadocked、datalastic、globalfishingwatch
计划中的航线 API已列入目录,尚未实现linescape-schedule-api
尚未开始的商业 AIS已列入目录,尚未实现spire-maritime、orbcomm-commtrace
探索或企业审查仅列入目录openais、noaa-marinecadastre、iqax-bigschedules、cargosmart-schedule、poseidon-ais、ais-now、fleetmon、windward、polestar-global、spglobal-seaweb、lloyds-list-intelligence

结构化事实来源为 config/provider-catalog.example.json, 人类可读的清单位于 docs/provider-catalog.md。

本地船舶地图 UI

如需通过船名输入和地图进行本地可视化检查:

npm run start:map

打开 http://127.0.0.1:8787,搜索 EVER GIVEN 或 MMSI 353136000。UI 会显示地图标记和可见的来源链接。

航线工具

已注册的只读航线工具:

  • carrier_schedule_search
  • vessel_schedule
  • schedule_delay_predict

已注册的只读 provider/设置工具:

  • provider_status
  • data_sources
  • credential_profiles
  • provider_onboarding

基于 Fixture 的检查:

KRPUS에서 NLRTM으로 가는 선사 스케줄을 조회하고, 출처 URL도 같이 보여줘.
EVER GIVEN 선박 스케줄을 조회하고 ETA 지연 여부를 계산해줘.

航线 provider 候选项记录在 docs/provider-catalog.md 中。Tradelinx 提供了明确选择启用的 carrier_schedule_search 适配器,该适配器基于浏览器捕获的端点结构,并经过脱敏处理;相关文档见 docs/runbooks/schedule-api-capture-results.md。

捕获与安全边界

本项目无意绕过商业服务。项目支持:

  • 官方 API 和开放数据源。
  • 用户提供的 API 凭据,以及供付费 provider 使用的组织级 BYOK 凭据配置文件。
  • 从操作者自有且获授权的浏览器会话中获取的脱敏 HAR/网络样本,但仅限服务条款允许的情况。

不得在代码库中存储原始 Cookie、Bearer Token、API 密钥、私有 HAR 文件、原始捕获数据或私有浏览器会话。完整的硬性规则列表见 AGENTS.md,安全要求见 SECURITY.md。

获授权的捕获工具文档见 docs/runbooks/capture-execution.md。 脱敏导入命令为 npm run capture:import,流量 IR 生成命令为 npm run capture:ir。

请勿用于导航。配置的 provider 返回的 AIS 数据可能存在延迟、不完整或不准确的情况。本项目不是安全关键型导航工具。

项目结构
src/
  capture/      sanitized capture fixture importer + traffic IR CLI
  config/       credential profile loader, provider catalog
  providers/    adapter interfaces, registry, router, rate limit, TTL cache
  server/       MCP transports and tool handlers
  tools/        read-only tool definitions
  util/         structured logging and redaction helpers
test/           node:test deterministic tests; fixture-backed
docs/           PRD, TDD, provider catalog, and runbooks
文档
主题

vessel-traffic-mcp 旨在便于从 MCP 和插件搜索界面中找到。相同主题也反映在 package.json 关键词和建议的 GitHub 主题中。

  • 船舶 AIS MCP
  • 船舶追踪 MCP
  • MarineTraffic MCP
  • Claude MCP(Claude Desktop、Claude Code)
  • ChatGPT MCP(ChatGPT 远程 MCP 连接器)
  • Codex 插件(Codex / OpenAI 插件 / 市场工作流)
  • Gemini MCP(Gemini CLI 和 Gemini Code Assist)
  • MCP / Model Context Protocol 服务
  • AIS / 船舶追踪 / 船舶跟踪
  • BYOK 付费提供商路由(MarineTraffic、VesselFinder、AISStream、AISHub、BarentsWatch、SeaRates、Routescanner、VesselAPI、Data Docked 及目录中的其他条目)
贡献

欢迎贡献。请先阅读 CONTRIBUTING.md。项目对凭据、捕获样例和只读约定有不可妥协的安全规则。

请通过 GitHub Issues 提交 Bug、提供商请求和授权捕获审查。请通过 GitHub Discussions 讨论路线图、集成和协作事宜。分享检查清单见 docs/runbooks/public-sharing.md。

安全

如果怀疑存在漏洞,请勿提交公开的 GitHub Issue。私密报告渠道请参阅 SECURITY.md。

许可证

MIT。不可用于导航的声明请参阅 NOTICE。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。