naftiko: 1.0.0-alpha2 info: label: Autodesk Model Derivative API — Metadata description: 'Autodesk Model Derivative API — Metadata. 4 operations. Lead operation: Autodesk Get Metadata. Self-contained Naftiko capability covering one Autodesk business surface.' tags: - Autodesk - Metadata created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AUTODESK_API_KEY: AUTODESK_API_KEY capability: consumes: - type: http namespace: model-derivative-metadata baseUri: https://developer.api.autodesk.com description: Autodesk Model Derivative API — Metadata business capability. Self-contained, no shared references. resources: - name: modelderivative-v2-designdata-urn-metadata path: /modelderivative/v2/designdata/{urn}/metadata operations: - name: getmetadata method: GET description: Autodesk Get Metadata outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: urn in: path type: string required: true - name: modelderivative-v2-designdata-urn-metadata-guid path: /modelderivative/v2/designdata/{urn}/metadata/{guid} operations: - name: getobjecttree method: GET description: Autodesk Get Object Tree outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: urn in: path type: string required: true - name: guid in: path type: string description: The GUID of the viewable. required: true - name: forceget in: query type: boolean description: Set to true to force fetching the full tree instead of using pagination. - name: modelderivative-v2-designdata-urn-metadata-guid-properties path: /modelderivative/v2/designdata/{urn}/metadata/{guid}/properties operations: - name: getproperties method: GET description: Autodesk Get All Properties outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: urn in: path type: string required: true - name: guid in: path type: string required: true - name: forceget in: query type: boolean - name: objectid in: query type: integer description: Filter properties by a specific object ID. - name: modelderivative-v2-designdata-urn-metadata-guid-properties:query path: /modelderivative/v2/designdata/{urn}/metadata/{guid}/properties:query operations: - name: queryproperties method: POST description: Autodesk Query Properties outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: urn in: path type: string required: true - name: guid in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.AUTODESK_API_KEY}}' exposes: - type: rest namespace: model-derivative-metadata-rest port: 8080 description: REST adapter for Autodesk Model Derivative API — Metadata. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/modelderivative/v2/designdata/{urn}/metadata name: modelderivative-v2-designdata-urn-metadata description: REST surface for modelderivative-v2-designdata-urn-metadata. operations: - method: GET name: getmetadata description: Autodesk Get Metadata call: model-derivative-metadata.getmetadata with: urn: rest.urn outputParameters: - type: object mapping: $. - path: /v1/modelderivative/v2/designdata/{urn}/metadata/{guid} name: modelderivative-v2-designdata-urn-metadata-guid description: REST surface for modelderivative-v2-designdata-urn-metadata-guid. operations: - method: GET name: getobjecttree description: Autodesk Get Object Tree call: model-derivative-metadata.getobjecttree with: urn: rest.urn guid: rest.guid forceget: rest.forceget outputParameters: - type: object mapping: $. - path: /v1/modelderivative/v2/designdata/{urn}/metadata/{guid}/properties name: modelderivative-v2-designdata-urn-metadata-guid-properties description: REST surface for modelderivative-v2-designdata-urn-metadata-guid-properties. operations: - method: GET name: getproperties description: Autodesk Get All Properties call: model-derivative-metadata.getproperties with: urn: rest.urn guid: rest.guid forceget: rest.forceget objectid: rest.objectid outputParameters: - type: object mapping: $. - path: /v1/modelderivative/v2/designdata/{urn}/metadata/{guid}/properties-query name: modelderivative-v2-designdata-urn-metadata-guid-properties-query description: REST surface for modelderivative-v2-designdata-urn-metadata-guid-properties:query. operations: - method: POST name: queryproperties description: Autodesk Query Properties call: model-derivative-metadata.queryproperties with: urn: rest.urn guid: rest.guid body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: model-derivative-metadata-mcp port: 9090 transport: http description: MCP adapter for Autodesk Model Derivative API — Metadata. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: autodesk-get-metadata description: Autodesk Get Metadata hints: readOnly: true destructive: false idempotent: true call: model-derivative-metadata.getmetadata with: urn: tools.urn outputParameters: - type: object mapping: $. - name: autodesk-get-object-tree description: Autodesk Get Object Tree hints: readOnly: true destructive: false idempotent: true call: model-derivative-metadata.getobjecttree with: urn: tools.urn guid: tools.guid forceget: tools.forceget outputParameters: - type: object mapping: $. - name: autodesk-get-all-properties description: Autodesk Get All Properties hints: readOnly: true destructive: false idempotent: true call: model-derivative-metadata.getproperties with: urn: tools.urn guid: tools.guid forceget: tools.forceget objectid: tools.objectid outputParameters: - type: object mapping: $. - name: autodesk-query-properties description: Autodesk Query Properties hints: readOnly: true destructive: false idempotent: false call: model-derivative-metadata.queryproperties with: urn: tools.urn guid: tools.guid body: tools.body outputParameters: - type: object mapping: $.