naftiko: 1.0.0-alpha2 info: label: Box Platform API — Metadata Instances (Folders) description: 'Box Platform API — Metadata Instances (Folders). 5 operations. Lead operation: Box List metadata instances on folder. Self-contained Naftiko capability covering one Box business surface.' tags: - Box - Metadata Instances (Folders) created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: BOX_API_KEY: BOX_API_KEY capability: consumes: - type: http namespace: box-metadata-instances-folders baseUri: https://api.box.com/2.0 description: Box Platform API — Metadata Instances (Folders) business capability. Self-contained, no shared references. resources: - name: folders-folder_id-metadata path: /folders/{folder_id}/metadata operations: - name: getfoldersidmetadata method: GET description: Box List metadata instances on folder outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folder_id in: path type: string description: The unique identifier that represent a folder. required: true - name: folders-folder_id-metadata-scope-template_key path: /folders/{folder_id}/metadata/{scope}/{template_key} operations: - name: getfoldersidmetadataidid method: GET description: Box Get metadata instance on folder outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folder_id in: path type: string description: The unique identifier that represent a folder. required: true - name: scope in: path type: string description: The scope of the metadata template required: true - name: template_key in: path type: string description: The name of the metadata template required: true - name: postfoldersidmetadataidid method: POST description: Box Create metadata instance on folder outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folder_id in: path type: string description: The unique identifier that represent a folder. required: true - name: scope in: path type: string description: The scope of the metadata template required: true - name: template_key in: path type: string description: The name of the metadata template required: true - name: body in: body type: object description: Request body (JSON). required: false - name: putfoldersidmetadataidid method: PUT description: Box Update metadata instance on folder outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folder_id in: path type: string description: The unique identifier that represent a folder. required: true - name: scope in: path type: string description: The scope of the metadata template required: true - name: template_key in: path type: string description: The name of the metadata template required: true - name: body in: body type: object description: Request body (JSON). required: false - name: deletefoldersidmetadataidid method: DELETE description: Box Remove metadata instance from folder outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: folder_id in: path type: string description: The unique identifier that represent a folder. required: true - name: scope in: path type: string description: The scope of the metadata template required: true - name: template_key in: path type: string description: The name of the metadata template required: true authentication: type: bearer token: '{{env.BOX_API_KEY}}' exposes: - type: rest namespace: box-metadata-instances-folders-rest port: 8080 description: REST adapter for Box Platform API — Metadata Instances (Folders). One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/folders/{folder-id}/metadata name: folders-folder-id-metadata description: REST surface for folders-folder_id-metadata. operations: - method: GET name: getfoldersidmetadata description: Box List metadata instances on folder call: box-metadata-instances-folders.getfoldersidmetadata with: folder_id: rest.folder_id outputParameters: - type: object mapping: $. - path: /v1/folders/{folder-id}/metadata/{scope}/{template-key} name: folders-folder-id-metadata-scope-template-key description: REST surface for folders-folder_id-metadata-scope-template_key. operations: - method: GET name: getfoldersidmetadataidid description: Box Get metadata instance on folder call: box-metadata-instances-folders.getfoldersidmetadataidid with: folder_id: rest.folder_id scope: rest.scope template_key: rest.template_key outputParameters: - type: object mapping: $. - method: POST name: postfoldersidmetadataidid description: Box Create metadata instance on folder call: box-metadata-instances-folders.postfoldersidmetadataidid with: folder_id: rest.folder_id scope: rest.scope template_key: rest.template_key body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: putfoldersidmetadataidid description: Box Update metadata instance on folder call: box-metadata-instances-folders.putfoldersidmetadataidid with: folder_id: rest.folder_id scope: rest.scope template_key: rest.template_key body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletefoldersidmetadataidid description: Box Remove metadata instance from folder call: box-metadata-instances-folders.deletefoldersidmetadataidid with: folder_id: rest.folder_id scope: rest.scope template_key: rest.template_key outputParameters: - type: object mapping: $. - type: mcp namespace: box-metadata-instances-folders-mcp port: 9090 transport: http description: MCP adapter for Box Platform API — Metadata Instances (Folders). One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: box-list-metadata-instances-folder description: Box List metadata instances on folder hints: readOnly: true destructive: false idempotent: true call: box-metadata-instances-folders.getfoldersidmetadata with: folder_id: tools.folder_id outputParameters: - type: object mapping: $. - name: box-get-metadata-instance-folder description: Box Get metadata instance on folder hints: readOnly: true destructive: false idempotent: true call: box-metadata-instances-folders.getfoldersidmetadataidid with: folder_id: tools.folder_id scope: tools.scope template_key: tools.template_key outputParameters: - type: object mapping: $. - name: box-create-metadata-instance-folder description: Box Create metadata instance on folder hints: readOnly: false destructive: false idempotent: false call: box-metadata-instances-folders.postfoldersidmetadataidid with: folder_id: tools.folder_id scope: tools.scope template_key: tools.template_key body: tools.body outputParameters: - type: object mapping: $. - name: box-update-metadata-instance-folder description: Box Update metadata instance on folder hints: readOnly: false destructive: false idempotent: true call: box-metadata-instances-folders.putfoldersidmetadataidid with: folder_id: tools.folder_id scope: tools.scope template_key: tools.template_key body: tools.body outputParameters: - type: object mapping: $. - name: box-remove-metadata-instance-folder description: Box Remove metadata instance from folder hints: readOnly: false destructive: true idempotent: true call: box-metadata-instances-folders.deletefoldersidmetadataidid with: folder_id: tools.folder_id scope: tools.scope template_key: tools.template_key outputParameters: - type: object mapping: $.