Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@TOTP MCP Servergenerate a code for my github account"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
TOTP MCP Server
MCP server for generating TOTP (Time-based One-Time Password) 2FA codes for Claude Code automation.
Features
Generate 6-digit TOTP codes for configured accounts
Codes are valid for ~30 seconds (standard TOTP)
Shows remaining validity time
Reads secrets from external file (not hardcoded)
Installation
cd ~/.claude/mcp-servers/totp
npm installConfiguration
Create a secrets file (e.g.,
~/.nutrie-secrets):GOOGLE_TOTP_SECRET=JBSWY3DPEHPK3PXPUpdate
SECRETS_FILEpath inindex.jsif neededAdd accounts to the
ACCOUNTSobject inindex.js:const ACCOUNTS = { "google": "GOOGLE_TOTP_SECRET", "github": "GITHUB_TOTP_SECRET", };
MCP Configuration
Add to your .mcp.json:
{
"mcpServers": {
"totp": {
"type": "stdio",
"command": "node",
"args": ["/path/to/.claude/mcp-servers/totp/index.js"]
}
}
}Tools
get_totp_code
Generate a TOTP code for an account.
Parameters:
account(required): Account name (e.g., "google")
Example:
TOTP code for google: 123456
Valid for 24 more secondslist_totp_accounts
List all configured TOTP accounts and their status.
Security
TOTP secrets are stored in an external file, not in the code
The secrets file should have restricted permissions (
chmod 600)Never commit secrets to git
Troubleshooting
TOTP code is rejected / invalid
TOTP codes are time-sensitive. The most common cause of invalid codes is clock drift.
Check system time:
date— ensure it's accurate to within a few secondsSync time (Linux):
sudo timedatectl set-ntp trueSync time (macOS): System Settings → General → Date & Time → Set automatically
"Account not found" error
The account name must exactly match a key in the ACCOUNTS object in index.js.
Run
list_totp_accountsto see all configured account namesAccount names are case-sensitive (
google≠Google)
Secrets file not found
Verify the
SECRETS_FILEpath inindex.jspoints to your actual secrets fileConfirm the file exists:
ls -la ~/.nutrie-secrets(or your configured path)Check file permissions allow reading:
chmod 600 ~/.nutrie-secrets
MCP server fails to start
Run
npm installin the totp directory to ensure dependencies are installedTest manually:
node index.js— any startup errors will print to stderrVerify the path in
.mcp.jsonis absolute and correct
TOTP secret is wrong / codes always fail
Re-scan or re-copy the TOTP secret from your account's 2FA setup page
Secrets are base32-encoded — ensure no extra spaces or line breaks in the secrets file
Confirm the correct environment variable name is mapped in
ACCOUNTS
License
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.