naftiko: 1.0.0-alpha2 info: label: 100ms Server-Side API — Room Codes description: 'Create and manage short, role-bound room codes that client apps use to join a 100ms room without minting an auth token themselves. Self-contained Naftiko capability.' tags: - 100ms - Room Codes - Authentication created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: HMS_MANAGEMENT_TOKEN: HMS_MANAGEMENT_TOKEN capability: consumes: - type: http namespace: room-codes baseUri: https://api.100ms.live/v2 resources: - name: room-codes-by-room path: /room-codes/room/{room_id} operations: - name: createroomcodes method: POST description: Create Room Codes outputRawFormat: json outputParameters: [{ name: result, type: object, value: $. }] inputParameters: - { name: room_id, in: path, type: string, required: true } - name: getroomcodes method: GET description: Get Room Codes outputRawFormat: json outputParameters: [{ name: result, type: object, value: $. }] inputParameters: - { name: room_id, in: path, type: string, required: true } - name: room-code path: /room-codes/code/{code} operations: - name: updateroomcode method: POST description: Update Room Code outputRawFormat: json outputParameters: [{ name: result, type: object, value: $. }] inputParameters: - { name: code, in: path, type: string, required: true } - { name: body, in: body, type: object, required: true } authentication: type: bearer value: '{{env.HMS_MANAGEMENT_TOKEN}}' placement: header exposes: - type: mcp namespace: room-codes-mcp port: 9090 transport: http description: MCP adapter for 100ms Room Codes. tools: - name: hms-create-room-codes description: Create room codes for a room (one per role). hints: { readOnly: false, destructive: false, idempotent: true } call: room-codes.createroomcodes with: { room_id: tools.room_id } outputParameters: [{ type: object, mapping: $. }] - name: hms-get-room-codes description: Get all room codes for a room. hints: { readOnly: true, destructive: false, idempotent: true } call: room-codes.getroomcodes with: { room_id: tools.room_id } outputParameters: [{ type: object, mapping: $. }] - name: hms-update-room-code description: Enable or disable a specific room code. hints: { readOnly: false, destructive: false, idempotent: true } call: room-codes.updateroomcode with: { code: tools.code, body: tools.body } outputParameters: [{ type: object, mapping: $. }]