naftiko: 1.0.0-alpha2 info: label: Cumulocity User API — Groups description: Manage Cumulocity user groups which bundle global roles and device permissions. tags: [Cumulocity, Groups, RBAC] created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: C8Y_BASE_URL: C8Y_BASE_URL C8Y_USER: C8Y_USER C8Y_PASSWORD: C8Y_PASSWORD capability: consumes: - type: http namespace: user-groups baseUri: '{{env.C8Y_BASE_URL}}' resources: - name: groups path: /user/{tenantId}/groups operations: - name: listgroups method: GET description: List Groups inputParameters: - {name: tenantId, in: path, type: string, required: true} - name: creategroup method: POST description: Create A Group inputParameters: - {name: tenantId, in: path, type: string, required: true} - {name: body, in: body, type: object, required: true} - name: group path: /user/{tenantId}/groups/{groupId} operations: - name: getgroup method: GET description: Retrieve A Group inputParameters: - {name: tenantId, in: path, type: string, required: true} - {name: groupId, in: path, type: string, required: true} - name: updategroup method: PUT description: Update A Group inputParameters: - {name: tenantId, in: path, type: string, required: true} - {name: groupId, in: path, type: string, required: true} - {name: body, in: body, type: object, required: true} - name: deletegroup method: DELETE description: Delete A Group inputParameters: - {name: tenantId, in: path, type: string, required: true} - {name: groupId, in: path, type: string, required: true} authentication: type: basic username: '{{env.C8Y_USER}}' password: '{{env.C8Y_PASSWORD}}' exposes: - type: mcp namespace: user-groups-mcp port: 9090 transport: http tools: - name: cumulocity-list-groups description: List Cumulocity user groups. hints: {readOnly: true, destructive: false, idempotent: true} call: user-groups.listgroups with: {tenantId: tools.tenantId} - name: cumulocity-create-group description: Create a Cumulocity user group. hints: {readOnly: false, destructive: false, idempotent: false} call: user-groups.creategroup with: {tenantId: tools.tenantId, body: tools.body}