naftiko: 1.0.0-alpha2 info: label: Climate FieldView Platform API — Planting description: 'Climate FieldView Platform API — Planting. 3 operations. Lead operation: List as-planted activity layers. Self-contained Naftiko capability covering one Climate Fieldview business surface.' tags: - Climate Fieldview - Planting created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CLIMATE_FIELDVIEW_API_KEY: CLIMATE_FIELDVIEW_API_KEY capability: consumes: - type: http namespace: platform-planting baseUri: https://api.climate.com/api description: Climate FieldView Platform API — Planting business capability. Self-contained, no shared references. resources: - name: v4-layers-asPlanted path: /v4/layers/asPlanted operations: - name: listasplantedlayers method: GET description: List as-planted activity layers outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fieldId in: query type: string description: Filter layers for a specific field - name: occurredBefore in: query type: string description: Return layers for activities that occurred before this date (ISO 8601) - name: occurredAfter in: query type: string description: Return layers for activities that occurred after this date (ISO 8601) - name: updatedAfter in: query type: string description: Return only layers updated after this timestamp - name: limit in: query type: integer - name: v4-layers-asPlanted-layerId path: /v4/layers/asPlanted/{layerId} operations: - name: getasplantedlayer method: GET description: Get a specific as-planted layer outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: layerId in: path type: string required: true - name: v4-layers-asPlanted-layerId-contents path: /v4/layers/asPlanted/{layerId}/contents operations: - name: getasplantedlayercontents method: GET description: Download as-planted layer spatial data outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: layerId in: path type: string required: true authentication: type: bearer token: '{{env.CLIMATE_FIELDVIEW_API_KEY}}' exposes: - type: rest namespace: platform-planting-rest port: 8080 description: REST adapter for Climate FieldView Platform API — Planting. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/v4/layers/asplanted name: v4-layers-asplanted description: REST surface for v4-layers-asPlanted. operations: - method: GET name: listasplantedlayers description: List as-planted activity layers call: platform-planting.listasplantedlayers with: fieldId: rest.fieldId occurredBefore: rest.occurredBefore occurredAfter: rest.occurredAfter updatedAfter: rest.updatedAfter limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/v4/layers/asplanted/{layerid} name: v4-layers-asplanted-layerid description: REST surface for v4-layers-asPlanted-layerId. operations: - method: GET name: getasplantedlayer description: Get a specific as-planted layer call: platform-planting.getasplantedlayer with: layerId: rest.layerId outputParameters: - type: object mapping: $. - path: /v1/v4/layers/asplanted/{layerid}/contents name: v4-layers-asplanted-layerid-contents description: REST surface for v4-layers-asPlanted-layerId-contents. operations: - method: GET name: getasplantedlayercontents description: Download as-planted layer spatial data call: platform-planting.getasplantedlayercontents with: layerId: rest.layerId outputParameters: - type: object mapping: $. - type: mcp namespace: platform-planting-mcp port: 9090 transport: http description: MCP adapter for Climate FieldView Platform API — Planting. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-planted-activity-layers description: List as-planted activity layers hints: readOnly: true destructive: false idempotent: true call: platform-planting.listasplantedlayers with: fieldId: tools.fieldId occurredBefore: tools.occurredBefore occurredAfter: tools.occurredAfter updatedAfter: tools.updatedAfter limit: tools.limit outputParameters: - type: object mapping: $. - name: get-specific-planted-layer description: Get a specific as-planted layer hints: readOnly: true destructive: false idempotent: true call: platform-planting.getasplantedlayer with: layerId: tools.layerId outputParameters: - type: object mapping: $. - name: download-planted-layer-spatial-data description: Download as-planted layer spatial data hints: readOnly: true destructive: false idempotent: true call: platform-planting.getasplantedlayercontents with: layerId: tools.layerId outputParameters: - type: object mapping: $.