Skip to main content

Parseltongue MCP Server 🐍

A Model Context Protocol (MCP) server providing 40+ text encoding, cipher, and transformation tools inspired by P4RS3LT0NGV3.

Features

📦 Basic Encodings (22 tools)

  • Base64: Encode/decode Base64
  • Base64URL: Encode/decode Base64 URL-safe format
  • Base32: Encode/decode Base32
  • Base58: Encode/decode Base58 (Bitcoin-style)
  • Base62: Encode/decode Base62
  • Base45: Encode/decode Base45
  • ASCII85: Encode/decode ASCII85
  • Hexadecimal: Encode/decode hex
  • Binary: Encode/decode 8-bit binary
  • URL Encoding: Percent encoding for URLs
  • HTML Entities: Encode/decode HTML entities

🔐 Ciphers (8 tools)

  • ROT13: Classic rotation cipher (encode/decode)
  • Caesar Cipher: Custom shift cipher (encode/decode)
  • Atbash: Reverse alphabet substitution (encode/decode)
  • Morse Code: Encode/decode to Morse code

🎨 Unicode Transformations (6 tools)

  • Zalgo Text: Glitch effect with combining marks
  • Upside Down: Flip text using Unicode
  • Bubble Text: Circle-enclosed letters (Ⓐⓑⓒ)
  • Full Width: Vaporwave aesthetic (full width)
  • Strikethrough: S̶t̶r̶i̶k̶e̶t̶h̶r̶o̶u̶g̶h̶
  • Underline: U̲n̲d̲e̲r̲l̲i̲n̲e̲d̲

🕵️ Steganography (3 tools)

  • Zero-Width Encoding: Hide text using invisible Unicode characters (encode/decode)
  • Invisible Ink: Hide messages within cover text

🔧 Utilities (2 tools)

  • Reverse Text: Simple string reversal
  • Pig Latin: Classic word game transformation

Installation

# Clone the repository
git clone <your-repo-url>
cd parseltongue_mcp

# Install dependencies using uv
uv sync

# Or using pip
pip install -e .

Usage

As an MCP Server

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "parseltongue": {
      "command": "uv",
      "args": [
        "--directory",
        "(Full path)/parseltongue_mcp",
        "run",
        "parseltongue-mcp"
      ]
    }
  }
}

Running Directly

# Using uv
uv run parseltongue-mcp

# Or with python
python main.py

Available Tools

Encoding Examples

# Base64
encode_base64(text="Hello World")
# Returns: "SGVsbG8gV29ybGQ="

# Base64URL (URL-safe)
encode_base64url(text="Hello World")
# Returns: "SGVsbG8gV29ybGQ="

# Base58 (Bitcoin-style)
encode_base58(text="Hello")
# Returns: "9Ajdvzr"

# Base62
encode_base62(text="Hello")
# Returns: "5TP3P3v"

# Base45
encode_base45(text="Hello")
# Returns: "JBSWY3DP"

# ASCII85
encode_ascii85(text="Hello")
# Returns: "87cURD]i"

# Morse Code
encode_morse(text="SOS")
# Returns: "... --- ..."

# Binary
encode_binary(text="Hi")
# Returns: "01001000 01101001"

# Hexadecimal
encode_hex(text="Hi")
# Returns: "4869"

# Zero-Width (Steganography)
encode_zero_width(text="secret")
# Returns invisible Unicode characters

Cipher Examples

# ROT13
encode_rot13(text="Hello World")
# Returns: "Uryyb Jbeyq"

# Caesar Cipher with custom shift
encode_caesar(text="Attack at dawn", shift=5)
# Returns: "Fyyfhp fy ifbs"

# Atbash
encode_atbash(text="SECRET")
# Returns: "HVXIVG"

Unicode Transformation Examples

# Zalgo Text
encode_zalgo(text="Chaos", intensity="high")
# Returns: C̴̢̛͇̽h̵͎̓a̸̰͊ö̶́̚s̸̰̈

# Upside Down
encode_upside_down(text="Hello")
# Returns: "olləH"

# Bubble Text
encode_bubble_text(text="Hello")
# Returns: "Ⓗⓔⓛⓛⓞ"

# Full Width
encode_fullwidth(text="Wave")
# Returns: "Wave"

# Strikethrough
encode_strikethrough(text="Cancelled")
# Returns: "C̶a̶n̶c̶e̶l̶l̶e̶d̶"

# Underline
encode_underline(text="Important")
# Returns: "I̲m̲p̲o̲r̲t̲a̲n̲t̲"

Tool Categories

All tools are exposed as MCP tools with detailed descriptions and type hints:

Category Count Examples
Basic Encodings 22 Base64, Base58, Base62, Base45, ASCII85, Hex, Binary, URL
Ciphers 8 ROT13, Caesar, Atbash, Morse
Unicode Transformations 6 Zalgo, Upside Down, Bubble, Full Width, Strikethrough, Underline
Steganography 3 Zero-Width, Invisible Ink
Utilities 2 Reverse, Pig Latin

Development

# Install development dependencies
uv sync

# Run the server in development mode
uv run python main.py

# Test with MCP inspector
npx @modelcontextprotocol/inspector uv run python main.py

Technical Details

  • Framework: FastMCP (MCP Python SDK)
  • Python Version: 3.12+
  • Dependencies:
    • mcp[cli]>=1.16.0 - MCP server framework
    • httpx>=0.28.1 - HTTP client (for potential future features)

Credits

Inspired by P4RS3LT0NGV3 by elder-plinius.

License

Open source. See LICENSE file for details.

Contributing

Contributions welcome! Areas to expand:

  • More cipher algorithms (Vigenère, Rail Fence, Playfair)
  • Fantasy language encodings (Elvish, Klingon, etc.)
  • Ancient scripts (Runes, Hieroglyphics)
  • Additional Unicode styles
  • Batch encoding/decoding operations

Examples in Action

Hiding Messages

# Create invisible message
hidden = encode_zero_width(text="TOP SECRET")
visible = f"This is a normal message{hidden}"
# Looks like: "This is a normal message"
# But contains hidden text!

# Decode it
decode_zero_width(encoded_text=hidden)
# Returns: "TOP SECRET"

Text Styling

# Create stylized text for social media
normal = "AWESOME"
bubble = encode_bubble_text(text=normal)      # ⒶⓌⒺⓈⓄⓂⒺ
wide = encode_fullwidth(text=normal)          # AWESOME
zalgo = encode_zalgo(text=normal)             # A̴W̸E̵S̶O̴M̵E̸
strike = encode_strikethrough(text=normal)    # A̶W̶E̶S̶O̶M̶E̶
underline = encode_underline(text=normal)     # A̲W̲E̲S̲O̲M̲E̲
upside = encode_upside_down(text=normal)      # ƎWOSƎפ∀

Classic Ciphers

# Encode a message with Caesar cipher
message = "Meet at the park"
encoded = encode_caesar(text=message, shift=7)
# Returns: "Tlla ha aol whyr"

# Decode it
decode_caesar(text=encoded, shift=7)
# Returns: "Meet at the park"

Made with 🐍 and MCP

Metadata

Release files for iflow-mcp_joaodunas-parseltongue_mcp 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iflow-mcp_joaodunas-parseltongue_mcp 0.1.3
File Size Uploaded
iflow_mcp_joaodunas_parseltongue_mcp-0.1.3.tar.gz 19.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for iflow-mcp_joaodunas-parseltongue_mcp 0.1.3
File Interpreter ABI Platform
iflow_mcp_joaodunas_parseltongue_mcp-0.1.3-py3-none-any.whl Python 3 none any Details

Total release size: 44.4 kB

Release files / iflow_mcp_joaodunas_parseltongue_mcp-0.1.3.tar.gz

Download URL iflow_mcp_joaodunas_parseltongue_mcp-0.1.3.tar.gz
Size 19.7 kB
Tags Source
SHA-256 checksum
How to use checksums
a3c225c63923215530e57e9958fcaa2407830a797bd80f41e629f396a9869bdf
BLAKE2b-256 checksum
How to use checksums
5b44ae154355f84ca406611f5089e174fe745ef00fbca1d173340f82b01166f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / iflow_mcp_joaodunas_parseltongue_mcp-0.1.3-py3-none-any.whl

Download URL iflow_mcp_joaodunas_parseltongue_mcp-0.1.3-py3-none-any.whl
Size 24.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
82ff7c8aaf8e9fc3f7b163ac25ee445e97671e430bb1f59b00b19c9ac6adff13
BLAKE2b-256 checksum
How to use checksums
939a9f31b5c753443c1e37b561d80c00f7ae1ec10b7bb99b1bb4b6e09e21eb89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.3 This release

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page