naftiko: 1.0.0-alpha2 info: label: SigNoz — role description: 'SigNoz — role. 7 operations. Lead operation: List roles. Self-contained Naftiko capability covering one Signoz business surface.' tags: - Signoz - role created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SIGNOZ_API_KEY: SIGNOZ_API_KEY capability: consumes: - type: http namespace: signoz-role baseUri: https://{host}:{port}{base_path} description: SigNoz — role business capability. Self-contained, no shared references. resources: - name: api-v1-roles path: /api/v1/roles operations: - name: listroles method: GET description: List roles outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createrole method: POST description: Create role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: api-v1-roles-id path: /api/v1/roles/{id} operations: - name: deleterole method: DELETE description: Delete role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: getrole method: GET description: Get role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: patchrole method: PATCH description: Patch role outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false - name: api-v1-roles-id-relations-relation-objects path: /api/v1/roles/{id}/relations/{relation}/objects operations: - name: getobjects method: GET description: Get objects for a role by relation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: relation in: path type: string required: true - name: patchobjects method: PATCH description: Patch objects for a role by relation outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: id in: path type: string required: true - name: relation in: path type: string required: true - name: body in: body type: object description: Request body (JSON). required: false authentication: type: bearer token: '{{env.SIGNOZ_API_KEY}}' exposes: - type: rest namespace: signoz-role-rest port: 8080 description: REST adapter for SigNoz — role. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v1/roles name: api-v1-roles description: REST surface for api-v1-roles. operations: - method: GET name: listroles description: List roles call: signoz-role.listroles outputParameters: - type: object mapping: $. - method: POST name: createrole description: Create role call: signoz-role.createrole with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/roles/{id} name: api-v1-roles-id description: REST surface for api-v1-roles-id. operations: - method: DELETE name: deleterole description: Delete role call: signoz-role.deleterole with: id: rest.id outputParameters: - type: object mapping: $. - method: GET name: getrole description: Get role call: signoz-role.getrole with: id: rest.id outputParameters: - type: object mapping: $. - method: PATCH name: patchrole description: Patch role call: signoz-role.patchrole with: id: rest.id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v1/roles/{id}/relations/{relation}/objects name: api-v1-roles-id-relations-relation-objects description: REST surface for api-v1-roles-id-relations-relation-objects. operations: - method: GET name: getobjects description: Get objects for a role by relation call: signoz-role.getobjects with: id: rest.id relation: rest.relation outputParameters: - type: object mapping: $. - method: PATCH name: patchobjects description: Patch objects for a role by relation call: signoz-role.patchobjects with: id: rest.id relation: rest.relation body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: signoz-role-mcp port: 9090 transport: http description: MCP adapter for SigNoz — role. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-roles description: List roles hints: readOnly: true destructive: false idempotent: true call: signoz-role.listroles outputParameters: - type: object mapping: $. - name: create-role description: Create role hints: readOnly: false destructive: false idempotent: false call: signoz-role.createrole with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-role description: Delete role hints: readOnly: false destructive: true idempotent: true call: signoz-role.deleterole with: id: tools.id outputParameters: - type: object mapping: $. - name: get-role description: Get role hints: readOnly: true destructive: false idempotent: true call: signoz-role.getrole with: id: tools.id outputParameters: - type: object mapping: $. - name: patch-role description: Patch role hints: readOnly: false destructive: false idempotent: true call: signoz-role.patchrole with: id: tools.id body: tools.body outputParameters: - type: object mapping: $. - name: get-objects-role-relation description: Get objects for a role by relation hints: readOnly: true destructive: false idempotent: true call: signoz-role.getobjects with: id: tools.id relation: tools.relation outputParameters: - type: object mapping: $. - name: patch-objects-role-relation description: Patch objects for a role by relation hints: readOnly: false destructive: false idempotent: true call: signoz-role.patchobjects with: id: tools.id relation: tools.relation body: tools.body outputParameters: - type: object mapping: $.