naftiko: 1.0.0-alpha2 info: label: Amazon IAM API — Groups description: 'Amazon IAM API — Groups. 5 operations. Lead operation: Amazon IAM Add a User to an IAM Group. Self-contained Naftiko capability covering one Amazon Iam business surface.' tags: - Amazon Iam - Groups created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AMAZON_IAM_API_KEY: AMAZON_IAM_API_KEY capability: consumes: - type: http namespace: amazon-iam-groups baseUri: https://iam.amazonaws.com description: Amazon IAM API — Groups business capability. Self-contained, no shared references. resources: - name: ?Action=AddUserToGroup path: /?Action=AddUserToGroup operations: - name: addusertogroup method: GET description: Amazon IAM Add a User to an IAM Group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Action in: query type: string required: true - name: Version in: query type: string required: true - name: GroupName in: query type: string description: The name of the group to update. required: true - name: UserName in: query type: string description: The name of the user to add. required: true - name: ?Action=CreateGroup path: /?Action=CreateGroup operations: - name: creategroup method: GET description: Amazon IAM Create a New IAM Group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Action in: query type: string required: true - name: Version in: query type: string required: true - name: GroupName in: query type: string description: The name of the group to create. required: true - name: Path in: query type: string description: The path to the group. - name: ?Action=GetGroup path: /?Action=GetGroup operations: - name: getgroup method: GET description: Amazon IAM Get Information About an IAM Group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Action in: query type: string required: true - name: Version in: query type: string required: true - name: GroupName in: query type: string description: The name of the group. required: true - name: Marker in: query type: string - name: MaxItems in: query type: integer - name: ?Action=ListGroups path: /?Action=ListGroups operations: - name: listgroups method: GET description: Amazon IAM List IAM Groups outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Action in: query type: string required: true - name: Version in: query type: string required: true - name: PathPrefix in: query type: string - name: Marker in: query type: string - name: MaxItems in: query type: integer - name: ?Action=RemoveUserFromGroup path: /?Action=RemoveUserFromGroup operations: - name: removeuserfromgroup method: GET description: Amazon IAM Remove a User from an IAM Group outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Action in: query type: string required: true - name: Version in: query type: string required: true - name: GroupName in: query type: string description: The name of the group to update. required: true - name: UserName in: query type: string description: The name of the user to remove. required: true authentication: type: apikey key: Authorization value: '{{env.AMAZON_IAM_API_KEY}}' placement: header exposes: - type: rest namespace: amazon-iam-groups-rest port: 8080 description: REST adapter for Amazon IAM API — Groups. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/action-addusertogroup name: action-addusertogroup description: REST surface for ?Action=AddUserToGroup. operations: - method: GET name: addusertogroup description: Amazon IAM Add a User to an IAM Group call: amazon-iam-groups.addusertogroup with: Action: rest.Action Version: rest.Version GroupName: rest.GroupName UserName: rest.UserName outputParameters: - type: object mapping: $. - path: /v1/action-creategroup name: action-creategroup description: REST surface for ?Action=CreateGroup. operations: - method: GET name: creategroup description: Amazon IAM Create a New IAM Group call: amazon-iam-groups.creategroup with: Action: rest.Action Version: rest.Version GroupName: rest.GroupName Path: rest.Path outputParameters: - type: object mapping: $. - path: /v1/action-getgroup name: action-getgroup description: REST surface for ?Action=GetGroup. operations: - method: GET name: getgroup description: Amazon IAM Get Information About an IAM Group call: amazon-iam-groups.getgroup with: Action: rest.Action Version: rest.Version GroupName: rest.GroupName Marker: rest.Marker MaxItems: rest.MaxItems outputParameters: - type: object mapping: $. - path: /v1/action-listgroups name: action-listgroups description: REST surface for ?Action=ListGroups. operations: - method: GET name: listgroups description: Amazon IAM List IAM Groups call: amazon-iam-groups.listgroups with: Action: rest.Action Version: rest.Version PathPrefix: rest.PathPrefix Marker: rest.Marker MaxItems: rest.MaxItems outputParameters: - type: object mapping: $. - path: /v1/action-removeuserfromgroup name: action-removeuserfromgroup description: REST surface for ?Action=RemoveUserFromGroup. operations: - method: GET name: removeuserfromgroup description: Amazon IAM Remove a User from an IAM Group call: amazon-iam-groups.removeuserfromgroup with: Action: rest.Action Version: rest.Version GroupName: rest.GroupName UserName: rest.UserName outputParameters: - type: object mapping: $. - type: mcp namespace: amazon-iam-groups-mcp port: 9090 transport: http description: MCP adapter for Amazon IAM API — Groups. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: amazon-iam-add-user-iam description: Amazon IAM Add a User to an IAM Group hints: readOnly: true destructive: false idempotent: true call: amazon-iam-groups.addusertogroup with: Action: tools.Action Version: tools.Version GroupName: tools.GroupName UserName: tools.UserName outputParameters: - type: object mapping: $. - name: amazon-iam-create-new-iam description: Amazon IAM Create a New IAM Group hints: readOnly: true destructive: false idempotent: true call: amazon-iam-groups.creategroup with: Action: tools.Action Version: tools.Version GroupName: tools.GroupName Path: tools.Path outputParameters: - type: object mapping: $. - name: amazon-iam-get-information-about description: Amazon IAM Get Information About an IAM Group hints: readOnly: true destructive: false idempotent: true call: amazon-iam-groups.getgroup with: Action: tools.Action Version: tools.Version GroupName: tools.GroupName Marker: tools.Marker MaxItems: tools.MaxItems outputParameters: - type: object mapping: $. - name: amazon-iam-list-iam-groups description: Amazon IAM List IAM Groups hints: readOnly: true destructive: false idempotent: true call: amazon-iam-groups.listgroups with: Action: tools.Action Version: tools.Version PathPrefix: tools.PathPrefix Marker: tools.Marker MaxItems: tools.MaxItems outputParameters: - type: object mapping: $. - name: amazon-iam-remove-user-iam description: Amazon IAM Remove a User from an IAM Group hints: readOnly: true destructive: false idempotent: true call: amazon-iam-groups.removeuserfromgroup with: Action: tools.Action Version: tools.Version GroupName: tools.GroupName UserName: tools.UserName outputParameters: - type: object mapping: $.