naftiko: 1.0.0-alpha2 info: label: DatoCMS Content Management API — Items description: 'DatoCMS Content Management API — Items. 6 operations. Lead operation: List items (records). Self-contained Naftiko capability covering one Datocms business surface.' tags: - Datocms - Items created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: DATOCMS_API_KEY: DATOCMS_API_KEY capability: consumes: - type: http namespace: content-management-items baseUri: https://site-api.datocms.com description: DatoCMS Content Management API — Items business capability. Self-contained, no shared references. resources: - name: items path: /items operations: - name: listitems method: GET description: List items (records) outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: filter[type] in: query type: string description: Item type API key or ID to filter by. - name: createitem method: POST description: Create an item outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: items-itemId path: /items/{itemId} operations: - name: getitem method: GET description: Retrieve an item outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateitem method: PUT description: Update an item outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteitem method: DELETE description: Delete an item outputRawFormat: json outputParameters: - name: result type: object value: $. - name: items-itemId-publish path: /items/{itemId}/publish operations: - name: publishitem method: PUT description: Publish an item outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.DATOCMS_API_KEY}}' exposes: - type: rest namespace: content-management-items-rest port: 8080 description: REST adapter for DatoCMS Content Management API — Items. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/items name: items description: REST surface for items. operations: - method: GET name: listitems description: List items (records) call: content-management-items.listitems with: filter[type]: rest.filter[type] outputParameters: - type: object mapping: $. - method: POST name: createitem description: Create an item call: content-management-items.createitem with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/items/{itemid} name: items-itemid description: REST surface for items-itemId. operations: - method: GET name: getitem description: Retrieve an item call: content-management-items.getitem outputParameters: - type: object mapping: $. - method: PUT name: updateitem description: Update an item call: content-management-items.updateitem with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteitem description: Delete an item call: content-management-items.deleteitem outputParameters: - type: object mapping: $. - path: /v1/items/{itemid}/publish name: items-itemid-publish description: REST surface for items-itemId-publish. operations: - method: PUT name: publishitem description: Publish an item call: content-management-items.publishitem outputParameters: - type: object mapping: $. - type: mcp namespace: content-management-items-mcp port: 9090 transport: http description: MCP adapter for DatoCMS Content Management API — Items. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-items-records description: List items (records) hints: readOnly: true destructive: false idempotent: true call: content-management-items.listitems with: filter[type]: tools.filter[type] outputParameters: - type: object mapping: $. - name: create-item description: Create an item hints: readOnly: false destructive: false idempotent: false call: content-management-items.createitem with: body: tools.body outputParameters: - type: object mapping: $. - name: retrieve-item description: Retrieve an item hints: readOnly: true destructive: false idempotent: true call: content-management-items.getitem outputParameters: - type: object mapping: $. - name: update-item description: Update an item hints: readOnly: false destructive: false idempotent: true call: content-management-items.updateitem with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-item description: Delete an item hints: readOnly: false destructive: true idempotent: true call: content-management-items.deleteitem outputParameters: - type: object mapping: $. - name: publish-item description: Publish an item hints: readOnly: false destructive: false idempotent: true call: content-management-items.publishitem outputParameters: - type: object mapping: $.