Skip to main content
Glama
andreax79

otp-mcp-server

by andreax79
README.md
# OTP-MCP-Server

[![MCP Server](https://badge.mcpx.dev?type=server)](https://glama.ai/mcp/servers/andreax79/otp-mcp)
[![Build Status](https://github.com/andreax79/otp-mcp/workflows/Tests/badge.svg)](https://github.com/andreax79/otp-mcp/actions)
[![PyPI version](https://badge.fury.io/py/otp-mcp-server.svg)](https://badge.fury.io/py/otp-mcp-server)
[![Python 3.11+](https://img.shields.io/badge/python-3.11+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json)](https://github.com/astral-sh/ruff)
<a href="https://glama.ai/mcp/servers/@andreax79/otp-mcp">
  <img width="380" height="200" src="https://glama.ai/mcp/servers/@andreax79/otp-mcp/badge" alt="otp-mcp-server MCP server" />
</a>

Model Context Protocol (MCP) server that provides OTP (One-Time Password) generation

A Model Context Protocol (MCP) server built with FastMCP
that provides secure OTP (One-Time Password) generation.
Supports TOTP (Time-based) and HOTP (HMAC-based) algorithms
and multiple transport options including stdio, SSE, and HTTP Stream
for seamless integration with AI assistants and applications.

## Quick Start

### Installation

```bash
# Use uvx for isolated execution
uvx otp-mcp-server

# Or install from PyPI
pip install otp-mcp-server
```

### Basic Usage

```bash
# Run with STDIO (default, for Claude Desktop)
otp-mcp-server

# Run with HTTP Stream transport
otp-mcp-server --http-stream --host 127.0.0.1 --port 8000

# Run with SSE transport
otp-mcp-server --sse --host 127.0.0.1 --port 8000
```

### Using with Claude Desktop

Add to your Claude Desktop configuration:

```json
{
  "mcpServers": {
    "otp": {
      "command": "uvx",
      "args": ["otp-mcp-server"]
    }
  }
}
```

### Configuration

You can configure the server using command-line arguments or environment variables.

| Environment Variable      | Description                                  |
|---------------------------|----------------------------------------------|
| `OTP_MCP_SERVER_DB`       | Path to the tokens database file             |
| `OTP_MCP_SERVER_HOST`     | Host to bind the server to                   |
| `OTP_MCP_SERVER_PORT`     | Port to bind the server to                   |
| `OTP_MCP_SERVER_TRANSPORT`| Transport protocol to use                    |
| `OTP_MCP_SERVER_PATH`     | Path for HTTP transport                      |
| `OTP_MCP_SERVER_LOG_LEVEL`| Logging level                                |

TDQS

B3.4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: add_token creates tokens, calculate_otp_codes generates codes, delete_token removes tokens, get_details retrieves token metadata, and list_otp_tokens enumerates available tokens. There is no functional overlap between these operations.

Naming Consistency4/5

Four tools follow a consistent verb_noun pattern (add_token, delete_token, get_details, list_otp_tokens), but calculate_otp_codes uses a verb_object format that slightly deviates from the pattern. The naming is still highly readable and predictable.

Tool Count5/5

With 5 tools, this server is well-scoped for OTP management. It covers the essential CRUD operations (add, delete, list, get details) plus code calculation, which is the core functionality. No tool feels redundant or missing for the domain.

Completeness5/5

The toolset provides complete coverage for OTP token management: creation (add_token), retrieval (list_otp_tokens, get_details), usage (calculate_otp_codes), and deletion (delete_token). There are no obvious gaps in the lifecycle or functionality for this domain.

Maintenance

ActivityInactive
ResponsivenessNo issues