naftiko: 1.0.0-alpha2 info: label: Microsoft Graph Agreements API — Agreement Files description: 'Microsoft Graph Agreements API — Agreement Files. 3 operations. Lead operation: Microsoft Graph Get agreement file. Self-contained Naftiko capability covering one Microsoft Graph business surface.' tags: - Microsoft Graph - Agreement Files created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MICROSOFT_GRAPH_API_KEY: MICROSOFT_GRAPH_API_KEY capability: consumes: - type: http namespace: agreements-agreement-files baseUri: https://graph.microsoft.com/v1.0 description: Microsoft Graph Agreements API — Agreement Files business capability. Self-contained, no shared references. resources: - name: agreements-agreement-id-file path: /agreements/{agreement-id}/file operations: - name: getagreementfile method: GET description: Microsoft Graph Get agreement file outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: $select in: query type: array description: Select properties to be returned - name: $expand in: query type: array description: Expand related entities - name: updateagreementfile method: PATCH description: Microsoft Graph Update agreement file outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deleteagreementfile method: DELETE description: Microsoft Graph Delete agreement file outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: If-Match in: header type: string description: ETag for optimistic concurrency control exposes: - type: rest namespace: agreements-agreement-files-rest port: 8080 description: REST adapter for Microsoft Graph Agreements API — Agreement Files. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/agreements/{agreement-id}/file name: agreements-agreement-id-file description: REST surface for agreements-agreement-id-file. operations: - method: GET name: getagreementfile description: Microsoft Graph Get agreement file call: agreements-agreement-files.getagreementfile with: $select: rest.$select $expand: rest.$expand outputParameters: - type: object mapping: $. - method: PATCH name: updateagreementfile description: Microsoft Graph Update agreement file call: agreements-agreement-files.updateagreementfile with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteagreementfile description: Microsoft Graph Delete agreement file call: agreements-agreement-files.deleteagreementfile with: If-Match: rest.If-Match outputParameters: - type: object mapping: $. - type: mcp namespace: agreements-agreement-files-mcp port: 9090 transport: http description: MCP adapter for Microsoft Graph Agreements API — Agreement Files. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-graph-get-agreement-file description: Microsoft Graph Get agreement file hints: readOnly: true destructive: false idempotent: true call: agreements-agreement-files.getagreementfile with: $select: tools.$select $expand: tools.$expand outputParameters: - type: object mapping: $. - name: microsoft-graph-update-agreement-file description: Microsoft Graph Update agreement file hints: readOnly: false destructive: false idempotent: true call: agreements-agreement-files.updateagreementfile with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-graph-delete-agreement-file description: Microsoft Graph Delete agreement file hints: readOnly: false destructive: true idempotent: true call: agreements-agreement-files.deleteagreementfile with: If-Match: tools.If-Match outputParameters: - type: object mapping: $.