CGMIX Maritime Information Exchange API — Port State Information

CGMIX Maritime Information Exchange API — Port State Information. 5 operations. Lead operation: Get Vessel Cases. Self-contained Naftiko capability covering one United States Coast Guard business surface.

Run with Naftiko United States Coast GuardPort State Information

What You Can Do

GET
Getvesselcases — Get Vessel Cases
/v1/xml/psixdata-asmx/getvesselcasesxmlstring
GET
Getvesseldeficiencies — Get Vessel Deficiencies
/v1/xml/psixdata-asmx/getvesseldeficienciesxmlstring
GET
Getvesseldocuments — Get Vessel Documents
/v1/xml/psixdata-asmx/getvesseldocumentsxmlstring
GET
Getvesselparticulars — Get Vessel Particulars
/v1/xml/psixdata-asmx/getvesselparticularsxmlstring
GET
Getvesselsummary — Get Vessel Summary
/v1/xml/psixdata-asmx/getvesselsummaryxmlstring

MCP Tools

get-vessel-cases

Get Vessel Cases

read-only idempotent
get-vessel-deficiencies

Get Vessel Deficiencies

read-only idempotent
get-vessel-documents

Get Vessel Documents

read-only idempotent
get-vessel-particulars

Get Vessel Particulars

read-only idempotent
get-vessel-summary

Get Vessel Summary

read-only idempotent

Capability Spec

cgmix-maritime-information-exchange-port-state-information.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: CGMIX Maritime Information Exchange API — Port State Information
  description: 'CGMIX Maritime Information Exchange API — Port State Information. 5 operations. Lead operation: Get Vessel
    Cases. Self-contained Naftiko capability covering one United States Coast Guard business surface.'
  tags:
  - United States Coast Guard
  - Port State Information
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    UNITED_STATES_COAST_GUARD_API_KEY: UNITED_STATES_COAST_GUARD_API_KEY
capability:
  consumes:
  - type: http
    namespace: cgmix-maritime-information-exchange-port-state-information
    baseUri: https://cgmix.uscg.mil
    description: CGMIX Maritime Information Exchange API — Port State Information business capability. Self-contained, no
      shared references.
    resources:
    - name: xml-PSIXData.asmx-getVesselCasesXMLString
      path: /xml/PSIXData.asmx/getVesselCasesXMLString
      operations:
      - name: getvesselcases
        method: GET
        description: Get Vessel Cases
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: VesselID
          in: query
          type: string
          description: Official vessel number
          required: true
    - name: xml-PSIXData.asmx-getVesselDeficienciesXMLString
      path: /xml/PSIXData.asmx/getVesselDeficienciesXMLString
      operations:
      - name: getvesseldeficiencies
        method: GET
        description: Get Vessel Deficiencies
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: VesselID
          in: query
          type: string
          description: Official vessel number
          required: true
    - name: xml-PSIXData.asmx-getVesselDocumentsXMLString
      path: /xml/PSIXData.asmx/getVesselDocumentsXMLString
      operations:
      - name: getvesseldocuments
        method: GET
        description: Get Vessel Documents
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: VesselID
          in: query
          type: string
          description: Official vessel number
          required: true
    - name: xml-PSIXData.asmx-getVesselParticularsXMLString
      path: /xml/PSIXData.asmx/getVesselParticularsXMLString
      operations:
      - name: getvesselparticulars
        method: GET
        description: Get Vessel Particulars
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: VesselID
          in: query
          type: string
          description: Official vessel number
          required: true
    - name: xml-PSIXData.asmx-getVesselSummaryXMLString
      path: /xml/PSIXData.asmx/getVesselSummaryXMLString
      operations:
      - name: getvesselsummary
        method: GET
        description: Get Vessel Summary
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: VesselID
          in: query
          type: string
          description: Official vessel number
          required: true
  exposes:
  - type: rest
    namespace: cgmix-maritime-information-exchange-port-state-information-rest
    port: 8080
    description: REST adapter for CGMIX Maritime Information Exchange API — Port State Information. One Spectral-compliant
      resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/xml/psixdata-asmx/getvesselcasesxmlstring
      name: xml-psixdata-asmx-getvesselcasesxmlstring
      description: REST surface for xml-PSIXData.asmx-getVesselCasesXMLString.
      operations:
      - method: GET
        name: getvesselcases
        description: Get Vessel Cases
        call: cgmix-maritime-information-exchange-port-state-information.getvesselcases
        with:
          VesselID: rest.VesselID
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xml/psixdata-asmx/getvesseldeficienciesxmlstring
      name: xml-psixdata-asmx-getvesseldeficienciesxmlstring
      description: REST surface for xml-PSIXData.asmx-getVesselDeficienciesXMLString.
      operations:
      - method: GET
        name: getvesseldeficiencies
        description: Get Vessel Deficiencies
        call: cgmix-maritime-information-exchange-port-state-information.getvesseldeficiencies
        with:
          VesselID: rest.VesselID
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xml/psixdata-asmx/getvesseldocumentsxmlstring
      name: xml-psixdata-asmx-getvesseldocumentsxmlstring
      description: REST surface for xml-PSIXData.asmx-getVesselDocumentsXMLString.
      operations:
      - method: GET
        name: getvesseldocuments
        description: Get Vessel Documents
        call: cgmix-maritime-information-exchange-port-state-information.getvesseldocuments
        with:
          VesselID: rest.VesselID
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xml/psixdata-asmx/getvesselparticularsxmlstring
      name: xml-psixdata-asmx-getvesselparticularsxmlstring
      description: REST surface for xml-PSIXData.asmx-getVesselParticularsXMLString.
      operations:
      - method: GET
        name: getvesselparticulars
        description: Get Vessel Particulars
        call: cgmix-maritime-information-exchange-port-state-information.getvesselparticulars
        with:
          VesselID: rest.VesselID
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/xml/psixdata-asmx/getvesselsummaryxmlstring
      name: xml-psixdata-asmx-getvesselsummaryxmlstring
      description: REST surface for xml-PSIXData.asmx-getVesselSummaryXMLString.
      operations:
      - method: GET
        name: getvesselsummary
        description: Get Vessel Summary
        call: cgmix-maritime-information-exchange-port-state-information.getvesselsummary
        with:
          VesselID: rest.VesselID
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: cgmix-maritime-information-exchange-port-state-information-mcp
    port: 9090
    transport: http
    description: MCP adapter for CGMIX Maritime Information Exchange API — Port State Information. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: get-vessel-cases
      description: Get Vessel Cases
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cgmix-maritime-information-exchange-port-state-information.getvesselcases
      with:
        VesselID: tools.VesselID
      outputParameters:
      - type: object
        mapping: $.
    - name: get-vessel-deficiencies
      description: Get Vessel Deficiencies
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cgmix-maritime-information-exchange-port-state-information.getvesseldeficiencies
      with:
        VesselID: tools.VesselID
      outputParameters:
      - type: object
        mapping: $.
    - name: get-vessel-documents
      description: Get Vessel Documents
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cgmix-maritime-information-exchange-port-state-information.getvesseldocuments
      with:
        VesselID: tools.VesselID
      outputParameters:
      - type: object
        mapping: $.
    - name: get-vessel-particulars
      description: Get Vessel Particulars
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cgmix-maritime-information-exchange-port-state-information.getvesselparticulars
      with:
        VesselID: tools.VesselID
      outputParameters:
      - type: object
        mapping: $.
    - name: get-vessel-summary
      description: Get Vessel Summary
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: cgmix-maritime-information-exchange-port-state-information.getvesselsummary
      with:
        VesselID: tools.VesselID
      outputParameters:
      - type: object
        mapping: $.