Enigma Python MCP logo

Enigma Python MCP

by denismaggior8

Encrypts and decrypts Enigma messages with configurable historical machine models, rotors, reflectors, and plugboards.

Install Enigma Python MCP

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "denismaggior8-enigma-python-mcp": {
      "command": "uvx",
      "args": [
        "enigmapython-mcp"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Install not yet sandbox-tested— the server itself is confirmed live (we called its tools/list endpoint). The stdio install command is a separate, ongoing check.

Overview

The denismaggior8/enigma-python-mcp MCP server exposes the enigmapython library for encrypting and decrypting messages with historically accurate Enigma machine emulators. Its single `encrypt_message` tool accepts a machine model, ordered rotor configuration, reflector, message, and optional plugboard pairs. It supports local stdio connections and network SSE transport, with Python and Docker deployment options. Reach for it when an MCP client needs configurable Enigma simulations rather than general-purpose cryptography.

Use cases

  • Encrypt messages with historically configured Enigma machines
  • Decrypt ciphertext using supplied rotor and reflector settings
  • Experiment with M3, M4, commercial, and specialized Enigma models
  • Test MCP-based cryptography workflows locally or over SSE

Key features

  • Supports 11 Enigma machine model names
  • Configures rotors, ring settings, positions, and reflectors
  • Accepts optional plugboard connections
  • Provides stdio and SSE transports
  • Runs with Python or Docker

Tools1

What Enigma Python MCP lets your agent do. Expand a tool for its parameters.

Verified live~808 tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

8/8 checks healthy over the last 87d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 14h ago via OSV.dev · enigmapython-mcp (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars5Stargazers on the source repository.
Last commit3mo agoMost recent push to the default branch.
Tools exposed1Callable tools this server registers over MCP.
Directory activity4 viewsConfig copies, upvotes, and views on AllMCPs.

How Enigma Python MCP works

What denismaggior8/enigma-python-mcp does

The denismaggior8/enigma-python-mcp MCP server connects an MCP-compatible client to the enigmapython library. It exposes Enigma emulators for the M3, M4, I, I_Norway, I_Sondermaschine, K, K_Swiss, D, Z, B_A133, and T models. The available operation can process either plaintext for encryption or ciphertext for decryption, provided the machine settings are supplied correctly.

The server is intended for historical Enigma configurations and controlled message processing. It is not described as a general-purpose encryption service, and the input rules vary by machine. Enigma Z accepts digits only, B_A133 accepts its specified Swedish character set, and the other models require standard A–Z letters. Spaces, punctuation, and other special characters are not accepted.

How it works

An MCP client calls encrypt_message with a model name, message, rotor list, reflector object, and, where applicable, plugboard mappings. Encryption and decryption use the same operation; the direction depends on whether the supplied message is plaintext or ciphertext and whether the settings match the original machine configuration.

Rotor entries include a rotor type, ring setting, and initial position. Their order is significant: provide them from the fastest or rightmost rotor to the slowest or leftmost rotor, followed by the Greek rotor for M4. The reflector must match the selected machine. For example, M3 and I use UKWA, UKWB, or UKWC, while M4 uses UKWBThin or UKWCThin. Other models have their own required reflector families.

Setup and configuration

The denismaggior8/enigma-python-mcp package requires Python 3.11 or newer. Install it from PyPI with pip install enigmapython-mcp, or run it through uvx enigmapython-mcp. Local clients can start the server over stdio with enigmapython-mcp --transport stdio.

For network access, start the SSE transport with a host and port, such as --transport sse --host 0.0.0.0 --port 8000. Docker is also supported: build the image from the repository and run it interactively for stdio, or publish port 8000 for SSE.

Claude Desktop can use either a Python/uvx command or a Docker command in its MCP configuration. Release bundles are also provided for Claude Desktop, including Docker-based and Python-based packages. The README additionally documents a local OpenCode configuration.

Tools and capabilities

The server provides one MCP tool:

  • encrypt_message: Encrypts or decrypts a message using a selected Enigma model and complete machine settings.
  • Supports rotor types, ring settings, initial positions, reflectors, and optional plugboard pairs.
  • Handles rotating reflector fields where the selected reflector requires them.
  • Supports stdio for local integrations and SSE for network connections.

Limitations and notes

Correct rotor ordering, reflector selection, character set, and initial settings are required. Plugboard pairs are optional and are ignored for machines without a plugboard. The README’s M4 example contains spaces in its prompt, but the tool specification states that spaces and special characters are forbidden, so input should follow the stricter tool constraint.

The repository includes tests covering encryption and decryption reversibility across the supported models. SSE calls require the MCP initialization handshake; the README recommends MCP Inspector rather than direct, unauthenticated curl requests for interactive testing.

The denismaggior8/enigma-python-mcp project is licensed under MIT.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Enigma Python MCP

denismaggior8/enigma-python-mcp is an MCP server that connects AI clients to the enigmapython library and its historical Enigma emulators. Its main `encrypt_message` tool encrypts or decrypts messages using selected machine models, rotors, reflectors, ring settings, initial positions, and optional plugboard pairs.

Install it with Python 3.11 or newer using `pip install enigmapython-mcp`, or run it with `uvx enigmapython-mcp`. You can also build and run the repository’s Docker image.

Configure Claude Desktop to launch `uvx enigmapython-mcp --transport stdio`, or run the Docker image with an interactive command. The project also provides Docker and Python `.mcpb` bundles for Claude Desktop.

Yes, it supports SSE for network access. Start it with the SSE transport, host, and port options, then connect an MCP client or MCP Inspector to the server’s `/sse` endpoint.

The tool requires a supported model name, message, ordered rotor list, and reflector, with optional plugboard pairs. Messages must contain only the characters allowed by the selected machine, and spaces, punctuation, and special characters are forbidden.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewEnigma Python MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/denismaggior8-enigma-python-mcp?style=directory)](https://allmcps.com/mcp/denismaggior8-enigma-python-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/denismaggior8-enigma-python-mcp"><img src="https://allmcps.com/api/badge/denismaggior8-enigma-python-mcp?style=directory" alt="Enigma Python MCP on AllMCPs" /></a>