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: $.