Authn8

official

Access your team's 2FA codes from AI agents without sharing secrets. List accounts, generate TOTP codes, and maintain full audit trails

What can you do with Authn8 MCP?

  • List 2FA accounts — Ask your assistant to call list_accounts to see all 2FA accounts accessible to the token.
  • Generate TOTP codes — Use get_otp with an account name or ID to get a current one-time code.
  • Resolve ambiguous matches — When get_otp returns multiple matches, retry with the account ID.
  • Check token details — Call whoami to see token name, business, scoped groups, expiry, and account count.

Documentation

@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

VariableRequiredDefaultDescription
AUTHN8_API_KEYYes-Your PAT token from Authn8
AUTHN8_API_URLNohttps://api.authn8.comAPI 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 account
  • account_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