About Authn8
Authn8 is an MCP server that lets AI agents access 2FA accounts managed in Authn8 using a Personal Access Token. It lists accessible accounts, generates TOTP codes, and returns token details, with structured results for clients.
Key features
- 01List accounts available to the token
- 02Generate TOTP codes by account ID or name
- 03Report ambiguous account-name matches
- 04Show token and scoped-group details
- 05Return structured tool output
Use cases
- 01Retrieve a TOTP code for an account
- 02Find accessible 2FA accounts by name
- 03Check token identity and account scope
MCP support
Exposes Authn8 account listing, TOTP generation, and token information as MCP tools. Authentication uses an Authn8 Personal Access Token supplied through AUTHN8_API_KEY.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project README@authn8/mcp-server
MCP server that provides AI agents access to Authn8 2FA codes via PAT authentication.
Prerequisites
- An Authn8 account
- A Personal Access Token (PAT) created in the Authn8 dashboard
Quick Start
npx @authn8/mcp-server
Set the AUTHN8_API_KEY environment variable to your PAT token.
Docker
docker run -e AUTHN8_API_KEY=pat_xxx ghcr.io/authn8/mcp-server
Configuration
Claude Desktop
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"authn8": {
"command": "npx",
"args": ["-y", "@authn8/mcp-server"],
"env": {
"AUTHN8_API_KEY": "pat_your_token_here"
}
}
}
}
Claude Code (CLI)
Add to your Claude Code configuration file:
macOS: ~/.claude.json
Windows: %USERPROFILE%\.claude.json
{
"mcpServers": {
"authn8": {
"command": "npx",
"args": ["-y", "@authn8/mcp-server"],
"env": {
"AUTHN8_API_KEY": "pat_your_token_here"
}
}
}
}
Cursor
Add to your Cursor MCP settings:
{
"mcpServers": {
"authn8": {
"command": "npx",
"args": ["-y", "@authn8/mcp-server"],
"env": {
"AUTHN8_API_KEY": "pat_your_token_here"
}
}
}
}
Environment Variables
| Variable | Required | Default | Description |
|---|---|---|---|
AUTHN8_API_KEY | Yes | - | Your PAT token from Authn8 |
AUTHN8_API_URL | No | https://api.authn8.com | API endpoint URL |
Available Tools
All tools declare an output schema and return structuredContent alongside the
text block, so clients get typed results without re-parsing JSON out of text.
list_accounts
Returns all 2FA accounts accessible to this token.
Example response:
{
"accounts": [
{
"id": "924c52a6-4457-4970-a39f-4dc620217683",
"name": "AWS Production",
"issuerDomain": "amazon.com"
}
]
}
get_otp
Generates a TOTP code for a specific account.
Parameters:
account_id(string, optional) - UUID of the accountaccount_name(string, optional) - Name or issuer domain to search for (case-insensitive partial match)
Provide either account_id or account_name. If multiple accounts match the
name, the tool returns them in multipleMatches so you can retry with an
account_id.
Example response:
{
"name": "AWS Production",
"code": "483920",
"length": 6
}
Ambiguous match:
{
"error": "Multiple accounts match 'aws'. Please be more specific or use account_id.",
"length": 0,
"multipleMatches": [
{
"id": "924c52a6-4457-4970-a39f-4dc620217683",
"name": "AWS Production",
"issuerDomain": "amazon.com"
}
]
}
whoami
Returns information about the current token.
Example response:
{
"tokenName": "MCP Server 2",
"businessName": "Bytecode Solutions",
"scopedGroups": [
{ "id": "cfeba14a-e990-49e8-b6e5-61d63f7d68c8", "name": "HR" }
],
"expiresAt": "2025-12-25T23:59:59Z",
"accountCount": 1
}
Links
- Authn8 - Create an account and manage 2FA tokens
- GitHub Repository
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.