MarineTraffic · Capability

MarineTraffic AIS Vessel Tracking API — Vessel Tracking

MarineTraffic AIS Vessel Tracking API — Vessel Tracking. 2 operations. Lead operation: Get vessel position track. Self-contained Naftiko capability covering one Marinetraffic business surface.

Run with Naftiko MarinetrafficVessel Tracking

What You Can Do

GET
Getvesseltrack — Get vessel position track
/v1/exportvesseltrack/{apikey}
GET
Getvesselpositions — Get vessel positions in area
/v1/getvesselpositions/{apikey}

MCP Tools

get-vessel-position-track

Get vessel position track

read-only idempotent
get-vessel-positions-area

Get vessel positions in area

read-only idempotent

Capability Spec

ais-vessel-tracking.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: MarineTraffic AIS Vessel Tracking API — Vessel Tracking
  description: 'MarineTraffic AIS Vessel Tracking API — Vessel Tracking. 2 operations. Lead operation: Get vessel position
    track. Self-contained Naftiko capability covering one Marinetraffic business surface.'
  tags:
  - Marinetraffic
  - Vessel Tracking
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MARINETRAFFIC_API_KEY: MARINETRAFFIC_API_KEY
capability:
  consumes:
  - type: http
    namespace: ais-vessel-tracking
    baseUri: https://services.marinetraffic.com/api
    description: MarineTraffic AIS Vessel Tracking API — Vessel Tracking business capability. Self-contained, no shared references.
    resources:
    - name: exportvesseltrack-apikey
      path: /exportvesseltrack/{apikey}
      operations:
      - name: getvesseltrack
        method: GET
        description: Get vessel position track
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: apikey
          in: path
          type: string
          required: true
        - name: v
          in: query
          type: integer
        - name: MMSI
          in: query
          type: string
          required: true
        - name: fromdate
          in: query
          type: string
          description: Track start time (UTC, ISO 8601)
          required: true
        - name: todate
          in: query
          type: string
          description: Track end time (UTC, ISO 8601)
          required: true
        - name: protocol
          in: query
          type: string
    - name: getvesselpositions-apikey
      path: /getvesselpositions/{apikey}
      operations:
      - name: getvesselpositions
        method: GET
        description: Get vessel positions in area
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: apikey
          in: path
          type: string
          required: true
        - name: MINLAT
          in: query
          type: number
          required: true
        - name: MAXLAT
          in: query
          type: number
          required: true
        - name: MINLON
          in: query
          type: number
          required: true
        - name: MAXLON
          in: query
          type: number
          required: true
        - name: SHIPTYPE
          in: query
          type: integer
          description: AIS vessel type code filter
        - name: v
          in: query
          type: integer
        - name: protocol
          in: query
          type: string
    authentication:
      type: apikey
      key: apikey
      value: '{{env.MARINETRAFFIC_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: ais-vessel-tracking-rest
    port: 8080
    description: REST adapter for MarineTraffic AIS Vessel Tracking API — Vessel Tracking. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/exportvesseltrack/{apikey}
      name: exportvesseltrack-apikey
      description: REST surface for exportvesseltrack-apikey.
      operations:
      - method: GET
        name: getvesseltrack
        description: Get vessel position track
        call: ais-vessel-tracking.getvesseltrack
        with:
          apikey: rest.apikey
          v: rest.v
          MMSI: rest.MMSI
          fromdate: rest.fromdate
          todate: rest.todate
          protocol: rest.protocol
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/getvesselpositions/{apikey}
      name: getvesselpositions-apikey
      description: REST surface for getvesselpositions-apikey.
      operations:
      - method: GET
        name: getvesselpositions
        description: Get vessel positions in area
        call: ais-vessel-tracking.getvesselpositions
        with:
          apikey: rest.apikey
          MINLAT: rest.MINLAT
          MAXLAT: rest.MAXLAT
          MINLON: rest.MINLON
          MAXLON: rest.MAXLON
          SHIPTYPE: rest.SHIPTYPE
          v: rest.v
          protocol: rest.protocol
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: ais-vessel-tracking-mcp
    port: 9090
    transport: http
    description: MCP adapter for MarineTraffic AIS Vessel Tracking API — Vessel Tracking. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: get-vessel-position-track
      description: Get vessel position track
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: ais-vessel-tracking.getvesseltrack
      with:
        apikey: tools.apikey
        v: tools.v
        MMSI: tools.MMSI
        fromdate: tools.fromdate
        todate: tools.todate
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.
    - name: get-vessel-positions-area
      description: Get vessel positions in area
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: ais-vessel-tracking.getvesselpositions
      with:
        apikey: tools.apikey
        MINLAT: tools.MINLAT
        MAXLAT: tools.MAXLAT
        MINLON: tools.MINLON
        MAXLON: tools.MAXLON
        SHIPTYPE: tools.SHIPTYPE
        v: tools.v
        protocol: tools.protocol
      outputParameters:
      - type: object
        mapping: $.