MarineTraffic · Capability

MarineTraffic Voyage Information

MarineTraffic Voyage Information. 5 operations. Self-contained Naftiko capability covering one MarineTraffic AIS business surface.

MarineTraffic Voyage Information is a Naftiko capability published by MarineTraffic, one of 13 capabilities the APIs.io network indexes for this provider. It bundles 5 operations across the GET method.

The capability includes 5 read-only operations. Lead operation: Single Vessel Voyage Forecast. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include MarineTraffic, AIS, and Maritime.

Run with Naftiko MarineTrafficAISMaritime

What You Can Do

GET
Voyageforecast_ — Single Vessel Voyage Forecast
/v1/voyageforecast
GET
Voyageforecast — Fleet Voyage Forecast
/v1/voyageforecast
GET
Predictive destination areas — Single Vessel Predictive Destinations
/v1/predictive-destination-areas
GET
Predictive destination areas_ — Fleet Predictive Destinations
/v1/predictive-destination-areas
GET
Etatoport — Vessel ETA to Port
/v1/etatoport

MCP Tools

marinetraffic-voyageforecast_

Single Vessel Voyage Forecast

read-only idempotent
marinetraffic-voyageforecast

Fleet Voyage Forecast

read-only idempotent
marinetraffic-predictive-destination-areas

Single Vessel Predictive Destinations

read-only idempotent
marinetraffic-predictive-destination-areas_

Fleet Predictive Destinations

read-only idempotent
marinetraffic-etatoport

Vessel ETA to Port

read-only idempotent

Capability Spec

voyage-information.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: MarineTraffic Voyage Information
  description: MarineTraffic Voyage Information. 5 operations. Self-contained Naftiko capability covering one MarineTraffic
    AIS business surface.
  tags:
  - MarineTraffic
  - AIS
  - Maritime
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    MARINETRAFFIC_API_KEY: MARINETRAFFIC_API_KEY
capability:
  consumes:
  - type: http
    namespace: voyage-information
    baseUri: https://services.marinetraffic.com/api
    description: Voyage forecasts, predictive destination areas, and ETA to port.
    resources:
    - name: voyageforecast-api_key
      path: /voyageforecast/{api_key}
      operations:
      - name: voyageforecast_
        method: GET
        description: Single Vessel Voyage Forecast
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: v
          in: query
          type: integer
          description: Version of the service to be executed. Use version 2 to get the latest
          required: true
        - name: mmsi
          in: query
          type: integer
          description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track </br></br> You can <b>instead</b>
            use imo or shipid
          required: true
        - name: imo
          in: query
          type: integer
          description: The International Maritime Organization (IMO) number of the vessel you wish to track
          required: false
        - name: shipid
          in: query
          type: integer
          description: A uniquely assigned ID by MarineTraffic for the subject vessel
          required: false
        - name: msgtype
          in: query
          type: string
          description: 'Resolution of the response. Available values: <ul>'
          required: false
        - name: protocol
          in: query
          type: string
          description: 'Response type. Use one of the following: <ul>'
          required: false
    - name: voyageforecast-api_key-2
      path: /voyageforecast/{api_key}
      operations:
      - name: voyageforecast
        method: GET
        description: Fleet Voyage Forecast
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: v
          in: query
          type: integer
          description: Version of the service to be executed. Use version 2 to get the latest
          required: true
        - name: fleet_id
          in: query
          type: integer
          description: The fleet id you wish to receive voyage forecast for
          required: true
        - name: msgtype
          in: query
          type: string
          description: 'Resolution of the response. Available values: <ul>'
          required: false
        - name: protocol
          in: query
          type: string
          description: 'Response type. Use one of the following: <ul>'
          required: false
    - name: predictive-destination-areas-api_key
      path: /predictive-destination-areas/{api_key}
      operations:
      - name: predictive-destination-areas
        method: GET
        description: Single Vessel Predictive Destinations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: mmsi
          in: query
          type: integer
          description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track </br></br> You can <b>instead</b>
            use imo or shipid
          required: true
        - name: imo
          in: query
          type: integer
          description: The International Maritime Organization (IMO) number of the vessel you wish to track
          required: false
        - name: shipid
          in: query
          type: integer
          description: A uniquely assigned ID by MarineTraffic for the subject vessel
          required: false
        - name: fromportid
          in: query
          type: integer
          description: The MarineTraffic ID of the port you wish to receive a prediction (found on the URL of the respective
            Port page)
          required: false
        - name: protocol
          in: query
          type: string
          description: 'Response type. Use one of the following: <ul>'
          required: false
    - name: predictive-destination-areas-api_key-2
      path: /predictive-destination-areas/{api_key}
      operations:
      - name: predictive-destination-areas_
        method: GET
        description: Fleet Predictive Destinations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: fleet_id
          in: query
          type: integer
          description: The MarineTraffic ID of the fleet you wish to track
          required: true
        - name: fromportid
          in: query
          type: integer
          description: The MarineTraffic ID of the port you wish to receive a prediction (found on the URL of the respective
            Port page)
          required: false
        - name: protocol
          in: query
          type: string
          description: 'Response type. Use one of the following: <ul>'
          required: false
    - name: etatoport-api_key
      path: /etatoport/{api_key}
      operations:
      - name: etatoport
        method: GET
        description: Vessel ETA to Port
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: v
          in: query
          type: integer
          description: Version of the service to be executed. Use version 2 to get the latest
          required: true
        - name: portid
          in: query
          type: integer
          description: The MarineTraffic ID of the port you wish to receive ETA info </br></br> You can <b>instead</b> use
            unlocode
          required: true
        - name: unlocode
          in: query
          type: string
          description: The UN LOCODE (without gaps or spaces) of the port you wish to receive ETA info
          required: false
        - name: mmsi
          in: query
          type: integer
          description: The Maritime Mobile Service Identity (MMSI) of the vessel you wish to track </br></br> You can <b>instead</b>
            use imo or shipid
          required: true
        - name: imo
          in: query
          type: integer
          description: The International Maritime Organization (IMO) number of the vessel you wish to track
          required: false
        - name: shipid
          in: query
          type: integer
          description: A uniquely assigned ID by MarineTraffic for the subject vessel
          required: false
        - name: speed_calc
          in: query
          type: integer
          description: The Speed of the Vessel that MarineTraffic will use to produce the ETA value <ul>
          required: false
        - name: msgtype
          in: query
          type: string
          description: 'Resolution of the response. Available values: <ul>'
          required: false
        - name: protocol
          in: query
          type: string
          description: 'Response type. Use one of the following: <ul>'
          required: false
    authentication:
      type: apikey
      key: api_key
      value: '{{env.MARINETRAFFIC_API_KEY}}'
      placement: path
  exposes:
  - type: rest
    namespace: voyage-information-rest
    port: 8080
    description: REST adapter for MarineTraffic Voyage Information. One resource per consumed operation.
    resources:
    - path: /v1/voyageforecast
      name: voyageforecast-api_key
      description: REST surface for voyageforecast-api_key.
      operations:
      - method: GET
        name: voyageforecast_
        description: Single Vessel Voyage Forecast
        call: voyage-information.voyageforecast_
        with:
          v: rest.query.v
          mmsi: rest.query.mmsi
          imo: rest.query.imo
          shipid: rest.query.shipid
          msgtype: rest.query.msgtype
          protocol: rest.query.protocol
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/voyageforecast
      name: voyageforecast-api_key-2
      description: REST surface for voyageforecast-api_key-2.
      operations:
      - method: GET
        name: voyageforecast
        description: Fleet Voyage Forecast
        call: voyage-information.voyageforecast
        with:
          v: rest.query.v
          fleet_id: rest.query.fleet_id
          msgtype: rest.query.msgtype
          protocol: rest.query.protocol
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/predictive-destination-areas
      name: predictive-destination-areas-api_key
      description: REST surface for predictive-destination-areas-api_key.
      operations:
      - method: GET
        name: predictive-destination-areas
        description: Single Vessel Predictive Destinations
        call: voyage-information.predictive-destination-areas
        with:
          mmsi: rest.query.mmsi
          imo: rest.query.imo
          shipid: rest.query.shipid
          fromportid: rest.query.fromportid
          protocol: rest.query.protocol
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/predictive-destination-areas
      name: predictive-destination-areas-api_key-2
      description: REST surface for predictive-destination-areas-api_key-2.
      operations:
      - method: GET
        name: predictive-destination-areas_
        description: Fleet Predictive Destinations
        call: voyage-information.predictive-destination-areas_
        with:
          fleet_id: rest.query.fleet_id
          fromportid: rest.query.fromportid
          protocol: rest.query.protocol
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/etatoport
      name: etatoport-api_key
      description: REST surface for etatoport-api_key.
      operations:
      - method: GET
        name: etatoport
        description: Vessel ETA to Port
        call: voyage-information.etatoport
        with:
          v: rest.query.v
          portid: rest.query.portid
          unlocode: rest.query.unlocode
          mmsi: rest.query.mmsi
          imo: rest.query.imo
          shipid: rest.query.shipid
          speed_calc: rest.query.speed_calc
          msgtype: rest.query.msgtype
          protocol: rest.query.protocol
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: voyage-information-mcp
    port: 9090
    transport: http
    description: MCP adapter for MarineTraffic Voyage Information. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: marinetraffic-voyageforecast_
      description: Single Vessel Voyage Forecast
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: voyage-information.voyageforecast_
      with:
        v: tools.v
        mmsi: tools.mmsi
        imo: tools.imo
        shipid: tools.shipid
        msgtype: tools.msgtype
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.
    - name: marinetraffic-voyageforecast
      description: Fleet Voyage Forecast
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: voyage-information.voyageforecast
      with:
        v: tools.v
        fleet_id: tools.fleet_id
        msgtype: tools.msgtype
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.
    - name: marinetraffic-predictive-destination-areas
      description: Single Vessel Predictive Destinations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: voyage-information.predictive-destination-areas
      with:
        mmsi: tools.mmsi
        imo: tools.imo
        shipid: tools.shipid
        fromportid: tools.fromportid
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.
    - name: marinetraffic-predictive-destination-areas_
      description: Fleet Predictive Destinations
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: voyage-information.predictive-destination-areas_
      with:
        fleet_id: tools.fleet_id
        fromportid: tools.fromportid
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.
    - name: marinetraffic-etatoport
      description: Vessel ETA to Port
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: voyage-information.etatoport
      with:
        v: tools.v
        portid: tools.portid
        unlocode: tools.unlocode
        mmsi: tools.mmsi
        imo: tools.imo
        shipid: tools.shipid
        speed_calc: tools.speed_calc
        msgtype: tools.msgtype
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.