Vessel Traffic MCP
Servidor MCP de solo lectura para datos de posición de embarcaciones estilo AIS, horarios de portacontenedores y heurísticas de demora con atribución de fuente.
Documentación
Vessel Traffic MCP
Seguimiento de embarcaciones y horarios de envío para agentes de IA.
Vessel Traffic MCP es un servidor Model Context Protocol (MCP) de solo lectura para la identificación de embarcaciones, posiciones estilo AIS, rutas, escalas portuarias, horarios de navieras, horarios de embarcaciones y heurísticas de retraso. Proporciona a Claude, ChatGPT, Codex, MCP Inspector y otros clientes MCP una superficie de herramientas de datos marítimos normalizada.
Úselo cuando un agente necesite:
- buscar/obtener contexto de embarcaciones mediante herramientas MCP genéricas de tipo conector;
- resolver una embarcación a partir de un nombre, MMSI, IMO, indicativo o texto de conocimiento de embarque;
- preguntar dónde está una embarcación, dónde ha estado o qué embarcaciones están en un área;
- buscar horarios de envío de contenedores por par de puertos o embarcación;
- devolver el proveedor original y la URL de origen con cada resultado en vivo/público;
- probar flujos de trabajo marítimos de forma segura antes de comprar APIs de AIS u horarios de pago.
El proyecto no elude los términos del proveedor, muros de pago, CAPTCHA ni controles de acceso. Los proveedores comerciales son Bring Your Own Key (BYOK), la ruta de prueba predeterminada es solo con fixtures, y este no es un producto de navegación.
Código abierto bajo la licencia MIT. Pre-1.0; las APIs y las superficies de herramientas pueden cambiar.
Contenido
- Instalar en un cliente MCP
- Página de descubrimiento para agentes
- Qué expone
- Modelo de proveedores
- Uso responsable y derechos de terceros
- Ayuda a difundir
- Desde el código fuente
- Configuración HTTP remota
- Distribución actual
- Historial de estrellas
- Referencia compartida
Instalar en un cliente MCP
Para Claude Desktop, Claude Code, Codex CLI, Cursor, VS Code o cualquier cliente MCP stdio, use el paquete 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"
}
}
}
}
Luego reinicie el cliente y pruebe:
Find the current position of EVER GIVEN. Include source.provider and source.landingUrl.
Search carrier schedules from KRPUS to NLRTM. Include the source URL.
La configuración completa del cliente está en
docs/runbooks/clients.md, y los detalles
de Codex están en docs/runbooks/codex.md.
Los fragmentos de configuración desde el código fuente están en
Fragmentos de configuración MCP compartidos.
Los materiales de ayuda para marketplace y envío a clientes de IA están en
llms-install.md, LAUNCHGUIDE.md
y assets/logo-400.png.
Página de descubrimiento para agentes
La página pública de aterrizaje para búsqueda de agentes asistentes y fragmentos de instalación es:
https://tools-mcp.github.io/vessel-traffic-mcp/
Use esa URL al compartir el proyecto como servidor vessel AIS MCP, ship tracking
MCP, ChatGPT MCP, Codex MCP, Claude MCP o Gemini MCP.
La página incluye un prompt dorado para el escenario EVER GIVEN y fragmentos
de cliente para stdio local y configuración HTTP Streamable remota.
Los servicios asistentes no descubren automáticamente servidores MCP arbitrarios. El
operador debe conectar este MCP primero; después de eso, las descripciones de herramientas,
los envoltorios search/fetch y las herramientas específicas de embarcaciones
le dan al agente un camino claro desde un prompt con nombre de barco hasta resultados con atribución de origen.
Qué expone
| Área | Herramientas de solo lectura |
|---|---|
| Flujo de conector estilo búsqueda | search, fetch |
| Identidad de embarcación | vessel_search, vessel_name_resolve, document_vessel_lookup |
| Movimiento estilo AIS | vessel_position, vessel_area, vessel_track |
| Actividad portuaria | port_calls |
| Horarios de envío | carrier_schedule_search, vessel_schedule, schedule_delay_predict |
| Configuración de proveedores | provider_status, data_sources, credential_profiles, provider_onboarding |
Cada respuesta en vivo o de proveedor público debe exponer la procedencia:
source.provider y source.landingUrl. El proyecto está diseñado para
redirigir a los usuarios al servicio original, no para ocultar o cambiar la marca de la
fuente de datos.
Modelo de proveedores
| Grupo de proveedores | Cómo se habilita | Notas |
|---|---|---|
| Fixture | predeterminado | pruebas y demos deterministas; sin red, cuentas ni claves API |
| Público opcional | VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS=myshiptracking,tradlinx,aisfriends | adaptadores web públicos con atribución de origen |
| APIs comerciales/comunitarias BYOK | VESSEL_MCP_ENABLE_BYOK_PROVIDERS=... más variables de entorno VESSEL_MCP_PROFILE_* | solo credenciales propiedad del usuario; los secretos se redactan de registros, errores y respuestas MCP |
| Implementación remota | VESSEL_MCP_TRANSPORT=http | Streamable HTTP en /mcp; configure VESSEL_MCP_AUTH_TOKEN para Authorization: Bearer <token> |
Use la herramienta MCP provider_onboarding para inspeccionar las URL de registro de proveedores,
las variables de entorno requeridas, el estado del perfil configurado y los pasos de validación. Es
de solo lectura y nunca crea cuentas, acepta términos, resuelve CAPTCHA,
completa verificación por correo electrónico, establece datos de pago ni emite claves API.
Uso responsable y derechos de terceros
Este proyecto se proporciona como infraestructura de código abierto para la interoperabilidad de interés público, pruebas de flujos de trabajo y acceso a datos marítimos con atribución de origen. No otorga ningún derecho a copiar, redistribuir, cambiar la marca, eludir o hacer mal uso de servicios de terceros, bases de datos, mapas, marcas comerciales, material protegido por derechos de autor, respuestas de API o contenido de proveedores.
Los usuarios son responsables de cómo configuran y operan el software, incluido su cumplimiento de la ley aplicable, términos del proveedor, permisos de cuenta, límites de velocidad, licencias de datos y políticas internas de la empresa. No use este proyecto para eludir autenticación, muros de pago, CAPTCHA, controles de acceso, políticas de robots o restricciones comerciales.
Los autores y colaboradores respetan los derechos y términos de todos los servicios
y proveedores de datos referenciados. Las respuestas en vivo y de proveedores públicos están diseñadas
para preservar la atribución mediante source.provider y source.landingUrl y
para redirigir a los usuarios a la fuente original. Si un titular de derechos, operador
de servicios o parte afectada informa una inquietud fundamentada, los mantenedores
la revisarán rápidamente y, cuando corresponda, modificarán, deshabilitarán o eliminarán el
adaptador, la documentación, el fixture o la referencia afectados.
El software se proporciona bajo la licencia MIT, sin garantía. Nada en este README es asesoramiento legal ni un sustituto de la revisión de los términos que se aplican a su propio caso de uso.
Ayuda a difundir
Si esto podría ayudar a alguien que construye herramientas MCP, software de logística/transporte
o flujos de trabajo de IA en torno a datos marítimos, comparta el repositorio y solicite comentarios
sobre flujos de trabajo reales. Un kit de intercambio listo para copiar/pegar está en
docs/marketing/help-us-spread.md.
La ayuda útil incluye probar la instalación de npm, publicar una reseña comunitaria personalizada, solicitar un adaptador de proveedor o explicar un flujo de trabajo real de reenvío, comercio, escala portuaria, ETA de embarcación u horario de naviera.
Desde el código fuente
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
La puerta de verificación predeterminada usa solo fixtures sanitizados. No llama a proveedores de pago ni en vivo y no requiere claves API, cuentas ni acceso a la red.
Para una verificación visual local con entrada de nombre de barco y un mapa:
npm run start:map
Abra http://127.0.0.1:8787 y busque EVER GIVEN o MMSI
353136000.
Configuración HTTP remota
Para clientes MCP remotos, ejecute Streamable HTTP en /mcp con
/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"
Las solicitudes MCP requieren Authorization: Bearer <token> cuando
VESSEL_MCP_AUTH_TOKEN está configurado. Consulte
docs/runbooks/streamable-http-server.md
y docs/runbooks/deployment-https.md.
Distribución actual
| Superficie | Estado | Acceso |
|---|---|---|
| GitHub | Público | https://github.com/tools-mcp/vessel-traffic-mcp |
| Página de aterrizaje para agentes | Público | https://tools-mcp.github.io/vessel-traffic-mcp/ |
| npm | Público | @tools-mcp/vessel-traffic-mcp@0.1.0 en https://www.npmjs.com/package/@tools-mcp/vessel-traffic-mcp |
| GitHub Release | Publicado | https://github.com/tools-mcp/vessel-traffic-mcp/releases/tag/v0.1.0 |
| MCP Registry | Publicado | io.github.tools-mcp/vessel-traffic-mcp@0.1.0 en el registro oficial |
| ServerHub | Listado | https://www.serverhub.digital/servers/vessel-traffic-mcp |
| VaultPlane | Listado | https://www.vaultplane.com/server/vessel-traffic-mcp |
| MCPRepository | Enviado | En cola de validación en https://mcprepository.com/tools-mcp/vessel-traffic-mcp |
| Interfaz de mapa local | Lista desde el código fuente | npm run start:map, luego abra http://127.0.0.1:8787 |
| Metadatos de directorio HTTP | Listos desde el código fuente | npm run start:http, luego obtenga /.well-known/mcp/server-card.json |
| Glama | Enviado para revisión | Enviado a través del flujo Add Server de Glama el 2026-05-27; la URL de listado público y la insignia de puntuación están reservadas en https://glama.ai/mcp/servers/tools-mcp/vessel-traffic-mcp y pueden devolver 404 hasta que se complete la revisión/indexación |
| PulseMCP | Envío/indexación pendiente | Siga en docs/runbooks/public-sharing.md y docs/marketing/outreach-status.md |
| Smithery | Endpoint HTTPS pendiente | Necesita una URL HTTPS pública estable de /mcp |
El material de lanzamiento y envío a directorios está en
docs/marketing.
Historial de estrellas
Idiomas
Prompt para agentes
Use este prompt al pedirle a otro agente de codificación que instale el 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 정책, 상업적 제한을 우회하기 위해 이 프로젝트를
사용해서는 안 됩니다.
Los autores y contribuyentes respetan los derechos y términos de todos los servicios y proveedores de datos referenciados. Las respuestas de proveedores en vivo/públicos se atribuyen a su fuente original mediante source.provider y source.landingUrl, y están diseñadas para que los usuarios puedan verificar el servicio original. Si los titulares de derechos, operadores de servicios o partes relacionadas plantean un problema justificado, los mantenedores lo revisarán rápidamente y, si es necesario, modificarán, desactivarán o eliminarán el adaptador, la documentación, los fixtures o las referencias correspondientes.
Este software se proporciona bajo la licencia MIT sin garantía alguna. El texto de este README no constituye asesoramiento legal y no sustituye la revisión de los términos y obligaciones legales aplicables a cada caso de uso.
Prompt de configuración para agentes
Prompt para usar al hacer que otro agente de codificación instale 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。
Referencia compartida
Fragmentos de configuración MCP compartidos
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"
Configuración de 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"
}
}
}
}
Estado de implementación de proveedores
El PRD es intencionalmente más amplio que los adaptadores habilitados por defecto. Estado actual:
| Grupo | Estado en runtime | Proveedores |
|---|---|---|
| Predeterminado | habilitado sin env | fixture |
| Público opcional | VESSEL_MCP_ENABLE_PUBLIC_PROVIDERS | aisfriends, myshiptracking, shipfinder, tradlinx-schedule |
| Con credenciales implementado | VESSEL_MCP_ENABLE_BYOK_PROVIDERS o perfil predeterminado configurado | marinetraffic, vesselfinder, aisstream, aishub, barentswatch, searates-schedules, routescanner-connect, vesselapi, datadocked, datalastic, globalfishingwatch |
| APIs de horarios planificadas | catalogadas, no implementadas | linescape-schedule-api |
| AIS comercial no iniciado | catalogado, no implementado | spire-maritime, orbcomm-commtrace |
| Descubrimiento o revisión empresarial | solo catalogado | openais, noaa-marinecadastre, iqax-bigschedules, cargosmart-schedule, poseidon-ais, ais-now, fleetmon, windward, polestar-global, spglobal-seaweb, lloyds-list-intelligence |
La fuente estructurada de verdad es
config/provider-catalog.example.json
y el inventario legible por humanos es
docs/provider-catalog.md.
Interfaz local de mapa de embarcaciones
Para una verificación visual local con entrada de nombre de barco y un mapa:
npm run start:map
Abra http://127.0.0.1:8787 y busque EVER GIVEN o MMSI
353136000. La interfaz muestra un marcador en el mapa y un enlace de fuente visible.
Herramientas de horarios
Herramientas de horarios registradas de solo lectura:
carrier_schedule_searchvessel_scheduleschedule_delay_predict
Herramientas registradas de solo lectura para proveedor/configuración:
provider_statusdata_sourcescredential_profilesprovider_onboarding
Verificaciones basadas en fixtures:
KRPUS에서 NLRTM으로 가는 선사 스케줄을 조회하고, 출처 URL도 같이 보여줘.
EVER GIVEN 선박 스케줄을 조회하고 ETA 지연 여부를 계산해줘.
Los candidatos a proveedores de horarios se rastrean en
docs/provider-catalog.md. Tradelinx tiene
un adaptador carrier_schedule_search de aceptación explícita respaldado por
formas de endpoint capturadas por navegador y saneadas, documentadas en
docs/runbooks/schedule-api-capture-results.md.
Límite de captura y seguridad
Este proyecto no pretende eludir servicios comerciales. Admite:
- APIs oficiales y fuentes de datos abiertas.
- Credenciales de API proporcionadas por el usuario y perfiles de credenciales BYOK a nivel de organización para proveedores de pago.
- Muestras HAR/red saneadas de sesiones de navegador autorizadas y propiedad del operador, solo cuando los términos del servicio lo permitan.
No debe almacenar cookies sin procesar, tokens de portador, claves de API, archivos HAR
privados, capturas sin procesar o sesiones de navegador privadas en el repositorio.
La lista completa de reglas estrictas está en AGENTS.md, y
las expectativas de seguridad están en SECURITY.md.
La herramienta de captura autorizada está documentada en
docs/runbooks/capture-execution.md.
El comando de importación saneado es npm run capture:import, y la
generación de IR de tráfico es npm run capture:ir.
No para navegación. Los datos AIS devueltos por los proveedores configurados pueden estar retrasados, incompletos o ser inexactos. Este proyecto no es una herramienta de navegación de seguridad crítica.
Estructura del proyecto
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
Documentación
llms.txt— resumen breve del proyecto orientado a agentes.docs/index.html— página estática de descubrimiento para agentes publicada a través de GitHub Pages.server.json— metadatos del Registro MCP para el espacio de nombresio.github.tools-mcp/vessel-traffic-mcp.AGENTS.md— reglas estrictas del proyecto.CODE_OF_CONDUCT.md— expectativas de colaboración.docs/PRD.md— requisitos del producto.docs/TDD.md— diseño técnico.docs/provider-catalog.md— inventario de proveedores y política de enrutamiento.docs/runbooks/operator.md— runbook de operador de extremo a extremo.docs/runbooks/clients.md— configuración del cliente para Claude Desktop, Claude Code, ChatGPT remote MCP y MCP Inspector.docs/runbooks/codex.md— conexión de Codex CLI MCP y estado de metadatos del plugin de Codex.docs/runbooks/credential-profiles.md— manejo de perfiles BYOK.docs/runbooks/deployment-https.md— implementación HTTPS para el endpoint MCP Streamable HTTP.docs/runbooks/release-checklist.md— lista de verificación de seguridad previa al lanzamiento.docs/runbooks/public-sharing.md— lista de verificación para compartir en GitHub, Registro MCP, Smithery, Glama, PulseMCP y publicaciones de lanzamiento.docs/runbooks/api-capture-reference-only.md— límite de solo referencia para sesiones de captura sin procesar.docs/runbooks/browser-api-capture-results.md— resultados de captura de navegador saneados para APIs de embarcaciones.docs/runbooks/schedule-api-capture-results.md— resultados de captura de navegador saneados para APIs de horarios.docs/discoverability.md— contrato de descubribilidad de paquetes, repositorios y documentación.
Temas
Se pretende que vessel-traffic-mcp sea localizable desde las superficies de búsqueda de MCP y
plugins. El mismo conjunto se refleja en las palabras clave de package.json
y los temas sugeridos de GitHub.
- vessel AIS MCP
- ship tracking MCP
- MarineTraffic MCP
- Claude MCP (Claude Desktop, Claude Code)
- ChatGPT MCP (conector MCP remoto de ChatGPT)
- Codex plugin (Codex / plugin de OpenAI / flujos de trabajo de marketplace)
- Gemini MCP (Gemini CLI y Gemini Code Assist)
- MCP / servidor de Protocolo de Contexto de Modelo
- AIS / seguimiento de embarcaciones / seguimiento de barcos
- Enrutamiento de proveedores de pago BYOK (MarineTraffic, VesselFinder, AISStream, AISHub, BarentsWatch, SeaRates, Routescanner, VesselAPI, Data Docked, y otras entradas del catálogo)
Contribuciones
Las contribuciones son bienvenidas. Por favor, lea
CONTRIBUTING.md primero. El proyecto tiene
reglas de seguridad innegociables en torno a credenciales, fixtures de captura y
el contrato de solo lectura.
Use GitHub Issues para errores, solicitudes de proveedores y revisiones de captura
autorizadas. Use GitHub Discussions para hilos de hoja de ruta, integración y
colaboración. La lista de verificación para compartir está en
docs/runbooks/public-sharing.md.
Seguridad
No presente un issue público de GitHub para una vulnerabilidad sospechada. Consulte
SECURITY.md para el canal de reporte privado.
Licencia
MIT. Consulte NOTICE para el aviso de no apto para navegación.