Vessel Traffic MCP

Servidor MCP somente leitura para dados de posição de embarcações no estilo AIS, cronogramas de transportadoras e heurísticas de atraso com atribuição de fonte.

Documentação

Vessel Traffic MCP

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

License: MIT npm npm downloads CI GitHub release GitHub stars

MCP Registry: published Agent landing page GitHub issues GitHub forks

Rastreamento de embarcações e programações de navegação para agentes de IA.

Local Vessel Traffic MCP map UI showing EVER GIVEN with source attribution

Vessel Traffic MCP é um servidor Model Context Protocol (MCP) somente leitura para consulta de identidade de embarcações, posições estilo AIS, rotas, chamadas de porto, programações de transportadoras, programações de embarcações e heurísticas de atraso. Ele fornece ao Claude, ChatGPT, Codex, MCP Inspector e outros clientes MCP uma superfície unificada de ferramentas de dados marítimos.

Use-o quando um agente precisar de:

  • pesquisar/obter contexto de embarcações por meio de ferramentas MCP genéricas de conector;
  • resolver uma embarcação a partir de nome, MMSI, IMO, indicativo de chamada ou texto de conhecimento de embarque;
  • perguntar onde uma embarcação está, onde esteve ou quais embarcações estão em uma área;
  • pesquisar programações de transporte de contêineres por par de portos ou embarcação;
  • retornar o provedor original e a URL de origem com cada resultado ao vivo/público;
  • testar fluxos de trabalho marítimos com segurança antes de comprar APIs pagas de AIS ou programações.

O projeto não contorna termos de provedores, paywalls, CAPTCHA ou controles de acesso. Provedores comerciais são Bring Your Own Key (BYOK), o caminho de teste padrão usa apenas fixtures, e este não é um produto de navegação.

Código aberto sob a licença MIT. Pré-1.0; APIs e superfícies de ferramentas podem mudar.

Conteúdo

Instalar em um Cliente MCP

Para Claude Desktop, Claude Code, Codex CLI, Cursor, VS Code ou qualquer cliente MCP stdio, use o pacote 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"
      }
    }
  }
}

Em seguida, reinicie o cliente e tente:

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

A configuração completa do cliente está em docs/runbooks/clients.md, e os detalhes do Codex estão em docs/runbooks/codex.md. Trechos de configuração a partir do checkout do código-fonte estão em Trechos de Configuração MCP Compartilhados. Materiais de apoio para marketplace e submissão a clientes de IA estão em llms-install.md, LAUNCHGUIDE.md e assets/logo-400.png.

Página de Descoberta para Agentes

A página pública de destino para busca de agentes assistentes e trechos de instalação é:

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

Use essa URL ao compartilhar o projeto como um servidor vessel AIS MCP, ship tracking MCP, ChatGPT MCP, Codex MCP, Claude MCP ou Gemini MCP. A página inclui um prompt dourado para o cenário EVER GIVEN e trechos de cliente para configuração local stdio e remota Streamable HTTP.

Serviços assistentes não descobrem automaticamente servidores MCP arbitrários. O operador deve conectar este MCP primeiro; depois disso, as descrições das ferramentas, os wrappers search/fetch e as ferramentas específicas de embarcações dão ao agente um caminho claro de um prompt com nome de navio até resultados com atribuição de origem.

O Que Expõe

ÁreaFerramentas somente leitura
Fluxo de conector estilo buscasearch, fetch
Identidade da embarcaçãovessel_search, vessel_name_resolve, document_vessel_lookup
Movimento estilo AISvessel_position, vessel_area, vessel_track
Atividade portuáriaport_calls
Programações de navegaçãocarrier_schedule_search, vessel_schedule, schedule_delay_predict
Configuração de provedoresprovider_status, data_sources, credential_profiles, provider_onboarding

Toda resposta ao vivo ou de provedor público deve expor a proveniência: source.provider e source.landingUrl. O projeto foi projetado para direcionar os usuários de volta ao serviço original, não para ocultar ou renomear a fonte de dados.

Modelo de Provedores

Grupo de provedoresComo é ativadoObservações
Fixturepadrãotestes e demonstrações determinísticas; sem rede, contas ou chaves de API
Público opt-inVESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriendsadaptadores web públicos com atribuição de origem
APIs comerciais/comunitárias BYOKVESSEL_MCP_ENABLE_BYOK_PROVIDERS=... mais variáveis de ambiente VESSEL_MCP_PROFILE_*somente credenciais de propriedade do usuário; segredos são ocultados de logs, erros e respostas MCP
Implantação remotaVESSEL_MCP_TRANSPORT=httpStreamable HTTP em /mcp; defina VESSEL_MCP_AUTH_TOKEN para Authorization: Bearer <token>

Use a ferramenta MCP provider_onboarding para inspecionar URLs de inscrição de provedores, variáveis de ambiente necessárias, status do perfil configurado e etapas de validação. Ela é somente leitura e nunca cria contas, aceita termos, resolve CAPTCHA, conclui verificação de e-mail, define dados de pagamento ou emite chaves de API.

Uso Responsável e Direitos de Terceiros

Este projeto é fornecido como infraestrutura de código aberto para interoperabilidade de interesse público, testes de fluxos de trabalho e acesso a dados marítimos com atribuição de origem. Ele não concede nenhum direito de copiar, redistribuir, renomear, contornar ou usar indevidamente serviços de terceiros, bancos de dados, mapas, marcas registradas, material protegido por direitos autorais, respostas de API ou conteúdo de provedores.

Os usuários são responsáveis por como configuram e operam o software, incluindo sua conformidade com a lei aplicável, termos de provedores, permissões de conta, limites de taxa, licenças de dados e políticas internas da empresa. Não use este projeto para contornar autenticação, paywalls, CAPTCHA, controles de acesso, políticas de robôs ou restrições comerciais.

Os autores e colaboradores respeitam os direitos e termos de todos os serviços e provedores de dados referenciados. Respostas ao vivo e de provedores públicos são projetadas para preservar a atribuição por meio de source.provider e source.landingUrl e para direcionar os usuários de volta à fonte original. Se um titular de direitos, operador de serviço ou parte afetada relatar uma preocupação fundamentada, os mantenedores a revisarão prontamente e, quando apropriado, modificarão, desativarão ou removerão o adaptador, documentação, fixture ou referência afetados.

O software é fornecido sob a licença MIT, sem garantia. Nada neste README é aconselhamento jurídico ou substituto para a revisão dos termos que se aplicam ao seu próprio caso de uso.

Ajude a Divulgar

Se isso puder ajudar alguém que esteja construindo ferramentas MCP, software de logística/embarques ou fluxos de trabalho de IA em torno de dados marítimos, compartilhe o repositório e peça feedback sobre fluxos de trabalho reais. Um kit de compartilhamento copiar/colar está em docs/marketing/help-us-spread.md.

Ajuda útil inclui tentar a instalação via npm, publicar um artigo comunitário personalizado, solicitar um adaptador de provedor ou explicar um fluxo de trabalho real de despacho, comércio, chamada de porto, ETA de embarcação ou programação de transportadora.

A Partir do Código-Fonte

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

A porta de verificação padrão usa apenas fixtures sanitizadas. Ela não chama provedores pagos ou ao vivo e não requer chaves de API, contas ou acesso à rede.

Para uma verificação visual local com entrada de nome de navio e um mapa:

npm run start:map

Abra http://127.0.0.1:8787 e pesquise EVER GIVEN ou MMSI 353136000.

Configuração HTTP Remota

Para clientes MCP remotos, execute Streamable HTTP em /mcp com /health público:

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"

Solicitações MCP exigem Authorization: Bearer <token> quando VESSEL_MCP_AUTH_TOKEN está definido. Consulte docs/runbooks/streamable-http-server.md e docs/runbooks/deployment-https.md.

Distribuição Atual

SuperfícieStatusAcesso
GitHubPúblicohttps://github.com/tools-mcp/vessel-traffic-mcp
Página de destino para agentesPúblicohttps://tools-mcp.github.io/vessel-traffic-mcp/
npmPúblico@tools-mcp/vessel-traffic-mcp@0.1.0 em https://www.npmjs.com/package/@tools-mcp/vessel-traffic-mcp
GitHub ReleasePublicadohttps://github.com/tools-mcp/vessel-traffic-mcp/releases/tag/v0.1.0
MCP RegistryPublicadoio.github.tools-mcp/vessel-traffic-mcp@0.1.0 no registro oficial
ServerHubListadohttps://www.serverhub.digital/servers/vessel-traffic-mcp
VaultPlaneListadohttps://www.vaultplane.com/server/vessel-traffic-mcp
MCPRepositoryEnviadoNa fila para validação em https://mcprepository.com/tools-mcp/vessel-traffic-mcp
UI de mapa localPronto a partir do código-fontenpm run start:map, depois abra http://127.0.0.1:8787
Metadados de diretório HTTPPronto a partir do código-fontenpm run start:http, depois busque /.well-known/mcp/server-card.json
GlamaEnviado para revisãoEnviado pelo fluxo Add Server da Glama em 2026-05-27; URL de listagem pública e selo de pontuação reservados em https://glama.ai/mcp/servers/tools-mcp/vessel-traffic-mcp e podem retornar 404 até a revisão/indexação ser concluída
PulseMCPEnvio/indexação pendenteAcompanhe em docs/runbooks/public-sharing.md e docs/marketing/outreach-status.md
SmitheryEndpoint HTTPS pendentePrecisa de uma URL HTTPS pública estável /mcp

Texto de lançamento e material de submissão a diretórios estão em docs/marketing.

Histórico de Estrelas

Star History Chart

Idiomas

Prompt do Agente

Use este prompt ao pedir a outro agente de codificação que instale o 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

기본 검증은 sanitize된 fixture만 사용합니다. 유료 provider나 live provider를 호출하지 않으며 API 키, 계정, 네트워크 접근이 필요하지 않습니다.

로컬 MCP 설정

로컬 데스크톱/CLI 클라이언트에서는 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 정책, 상업적 제한을 우회하기 위해 이 프로젝트를 사용해서는 안 됩니다. Autores e contribuidores respeitam os direitos e termos de todos os serviços e provedores de dados referenciados. As respostas de provedores ao vivo/públicos são marcadas com source.provider e source.landingUrl para indicar a fonte original, e são projetadas para que os usuários possam verificar o serviço original. Se um detentor de direitos, operador de serviço ou parte relacionada levantar um problema fundamentado, os mantenedores revisarão prontamente e, se necessário, corrigirão, desativarão ou removerão o adaptador, a documentação, o fixture ou a referência em questão.

Este software é fornecido sob a licença MIT, sem garantias. O texto deste README não constitui aconselhamento jurídico e não substitui a revisão dos termos e obrigações legais aplicáveis a cada caso de uso.

Prompt de configuração do agente

Este é o prompt a ser usado ao instruir outro agente de codificação a instalar este 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

付费或需要 credential 的 provider 只能使用 BYOK。真实 key 不会出现在日志、 错误或 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。

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。

Referência Compartilhada

Snippets de Configuração MCP Compartilhados

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"

Configuração do 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"
      }
    }
  }
}

Status de Implementação dos Provedores

O PRD é intencionalmente mais amplo do que os adaptadores habilitados por padrão. Status atual:

GrupoStatus em tempo de execuçãoProvedores
Padrãohabilitado sem envfixture
Adesão públicaVESSEL_MCP_ENABLE_PUBLIC_PROVIDERSaisfriends, myshiptracking, shipfinder, tradlinx-schedule
Credenciado implementadoVESSEL_MCP_ENABLE_BYOK_PROVIDERS ou perfil padrão configuradomarinetraffic, vesselfinder, aisstream, aishub, barentswatch, searates-schedules, routescanner-connect, vesselapi, datadocked, datalastic, globalfishingwatch
APIs de programação planejadascatalogadas, não implementadaslinescape-schedule-api
AIS comercial não iniciadocatalogado, não implementadospire-maritime, orbcomm-commtrace
Descoberta ou revisão empresarialapenas catalogadoopenais, noaa-marinecadastre, iqax-bigschedules, cargosmart-schedule, poseidon-ais, ais-now, fleetmon, windward, polestar-global, spglobal-seaweb, lloyds-list-intelligence

A fonte estruturada da verdade é config/provider-catalog.example.json e o inventário legível por humanos está em docs/provider-catalog.md.

Interface de Mapa de Navios Local

Para uma verificação visual local com entrada de nome de navio e um mapa:

npm run start:map

Abra http://127.0.0.1:8787 e pesquise EVER GIVEN ou MMSI 353136000. A interface exibe um marcador no mapa e um link de fonte visível.

Ferramentas de Programação

Ferramentas de programação somente leitura registradas:

  • carrier_schedule_search
  • vessel_schedule
  • schedule_delay_predict

Ferramentas de provedor/configuração somente leitura registradas:

  • provider_status
  • data_sources
  • credential_profiles
  • provider_onboarding

Verificações baseadas em fixtures:

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

Os candidatos a provedores de programação são rastreados em docs/provider-catalog.md. A Tradelinx tem um adaptador carrier_schedule_search de adesão explícita baseado em formas de endpoint capturadas por navegador e sanitizadas, documentadas em docs/runbooks/schedule-api-capture-results.md.

Limite de Captura e Segurança

Este projeto não tem como objetivo contornar serviços comerciais. Ele suporta:

  • APIs oficiais e feeds de dados abertos.
  • Credenciais de API fornecidas pelo usuário e perfis de credenciais BYOK em nível de organização para provedores pagos.
  • Amostras de HAR/rede sanitizadas de sessões de navegador autorizadas e de propriedade do operador, somente quando permitido pelos termos do serviço.

Ele não deve armazenar cookies brutos, tokens de portador, chaves de API, arquivos HAR privados, capturas brutas ou sessões de navegador privadas no repositório. A lista completa de regras rígidas está em AGENTS.md, e as expectativas de segurança estão em SECURITY.md.

A ferramenta de captura autorizada está documentada em docs/runbooks/capture-execution.md. O comando de importação sanitizado é npm run capture:import, e a geração de IR de tráfego é npm run capture:ir.

Não para navegação. Os dados AIS retornados pelos provedores configurados podem estar atrasados, incompletos ou imprecisos. Este projeto não é uma ferramenta de navegação crítica para a segurança.

Estrutura do Projeto

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

Documentação

Tópicos

vessel-traffic-mcp deve ser encontrável nas superfícies de busca de MCP e plugins. O mesmo conjunto é refletido nas palavras-chave package.json e nos tópicos sugeridos do GitHub.

  • vessel AIS MCP
  • ship tracking MCP
  • MarineTraffic MCP
  • Claude MCP (Claude Desktop, Claude Code)
  • ChatGPT MCP (conector MCP remoto do ChatGPT)
  • Codex plugin (Codex / plugin OpenAI / fluxos de trabalho do marketplace)
  • Gemini MCP (Gemini CLI e Gemini Code Assist)
  • servidor MCP / Model Context Protocol
  • AIS / rastreamento de navios / rastreamento de embarcações
  • roteamento BYOK de provedores pagos (MarineTraffic, VesselFinder, AISStream, AISHub, BarentsWatch, SeaRates, Routescanner, VesselAPI, Data Docked, e outras entradas do catálogo)

Contribuindo

Contribuições são bem-vindas. Por favor, leia CONTRIBUTING.md primeiro. O projeto tem regras de segurança inegociáveis em torno de credenciais, fixtures de captura e o contrato somente leitura.

Use o GitHub Issues para bugs, solicitações de provedores e revisões de captura autorizadas. Use o GitHub Discussions para tópicos de roadmap, integração e colaboração. O checklist de compartilhamento está em docs/runbooks/public-sharing.md.

Segurança

Não abra uma issue pública no GitHub para uma vulnerabilidade suspeita. Consulte SECURITY.md para o canal de relato privado.

Licença

MIT. Consulte NOTICE para o aviso de não navegação.