naftiko: 1.0.0-alpha2 info: label: Coda API — Workspaces description: 'Coda API — Workspaces. 3 operations. Lead operation: List workspace roles. Self-contained Naftiko capability covering one Coda business surface.' tags: - Coda - Workspaces created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: CODA_API_KEY: CODA_API_KEY capability: consumes: - type: http namespace: coda-workspaces baseUri: https://coda.io/apis/v1 description: Coda API — Workspaces business capability. Self-contained, no shared references. resources: - name: workspaces-workspaceId-roles path: /workspaces/{workspaceId}/roles operations: - name: listworkspaceroleactivity method: GET description: List workspace roles outputRawFormat: json outputParameters: - name: result type: object value: $. - name: workspaces-workspaceId-users path: /workspaces/{workspaceId}/users operations: - name: listworkspacemembers method: GET description: List workspace users outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: includedRoles in: query type: array description: Show only the members that match the included roles. Multiple roles can be specified with a comma-delimited list. - name: workspaces-workspaceId-users-role path: /workspaces/{workspaceId}/users/role operations: - name: changeuserrole method: POST description: Updates user role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true authentication: type: bearer token: '{{env.CODA_API_KEY}}' exposes: - type: rest namespace: coda-workspaces-rest port: 8080 description: REST adapter for Coda API — Workspaces. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/workspaces/{workspaceid}/roles name: workspaces-workspaceid-roles description: REST surface for workspaces-workspaceId-roles. operations: - method: GET name: listworkspaceroleactivity description: List workspace roles call: coda-workspaces.listworkspaceroleactivity outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspaceid}/users name: workspaces-workspaceid-users description: REST surface for workspaces-workspaceId-users. operations: - method: GET name: listworkspacemembers description: List workspace users call: coda-workspaces.listworkspacemembers with: includedRoles: rest.includedRoles outputParameters: - type: object mapping: $. - path: /v1/workspaces/{workspaceid}/users/role name: workspaces-workspaceid-users-role description: REST surface for workspaces-workspaceId-users-role. operations: - method: POST name: changeuserrole description: Updates user role call: coda-workspaces.changeuserrole with: body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: coda-workspaces-mcp port: 9090 transport: http description: MCP adapter for Coda API — Workspaces. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-workspace-roles description: List workspace roles hints: readOnly: true destructive: false idempotent: true call: coda-workspaces.listworkspaceroleactivity outputParameters: - type: object mapping: $. - name: list-workspace-users description: List workspace users hints: readOnly: true destructive: false idempotent: true call: coda-workspaces.listworkspacemembers with: includedRoles: tools.includedRoles outputParameters: - type: object mapping: $. - name: updates-user-role description: Updates user role hints: readOnly: false destructive: false idempotent: false call: coda-workspaces.changeuserrole with: body: tools.body outputParameters: - type: object mapping: $.