verify_software_token
Validate TOTP codes for AWS Cognito users to complete multi-factor authentication setup or sign-in processes requiring software token verification.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| totpCode | Yes | ||
| username | Yes |
Implementation Reference
- index.ts:854-914 (handler)The main execution logic for the 'verify_software_token' tool. It retrieves the Cognito user session and verifies the provided TOTP code using CognitoUser.verifySoftwareToken.async ({ username, totpCode }) => { return new Promise((resolve, reject) => { const cognitoUser = new CognitoUser({ Username: username, Pool: userPool }); cognitoUser.getSession((err: Error | null, _session: CognitoUserSession) => { if (err) { reject({ content: [ { type: "text" as const, text: `Error getting session: ${err.message}`, } ] }); return; } cognitoUser.verifySoftwareToken(totpCode, 'TOTP Authenticator App', { onSuccess: (result) => { resolve({ content: [ { type: "text" as const, text: "TOTP token verified successfully", }, { type: "text" as const, text: `Username: ${username}`, }, { type: "text" as const, text: `Status: ${result || 'SUCCESS'}`, }, { type: "text" as const, text: `Time: ${new Date().toISOString()}`, } ] }); }, onFailure: (err) => { reject({ content: [ { type: "text" as const, text: `Failed to verify TOTP token: ${err.message}`, }, { type: "text" as const, text: `Error code: ${(err as any).code || 'Unknown'}`, } ] }); } }); }); }); }
- index.ts:850-853 (schema)Zod schema for input parameters: username (string) and totpCode (string).{ username: z.string(), totpCode: z.string() },
- index.ts:848-849 (registration)Registration of the 'verify_software_token' tool using server.tool() with name, schema, and handler.server.tool( "verify_software_token",