$npx skillfedfor your agent

mutf8

Fast MUTF-8 encoder & decoder

With conditionsPyPI Python ModulesReleased Jul 20262.1M downloads / moMITPlatform wheel

Decision gist · record as of 2026-08-14

platform wheels — mutf8-1.1.0-cp310-cp310-macosx_10_9_x86_64.whl · mutf8-1.1.0-cp310-cp310-macosx_11_0_arm64.whl · mutf8-1.1.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
v1.1.0 · released 2026-07-10 · Python >=3.9

Yes, if you work with JVM artifacts or JNI. The package is actively maintained, has no known vulnerabilities, and offers both performance (C extension) and portability (pure-Python fallback). Install friction is moderate but manageable via prebuilt wheels. MIT license carries no restrictions.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.9 or later; C extension is optional and falls back to pure-Python if compilation fails.
  • Medium install friction due to C extension compilation, but prebuilt wheels are available for Python 3.9–3.14 on common platforms (macOS, Linux, Windows).
  • Package is actively maintained with a recent release.

License · maintenance · safety

MIT (permissive) — MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects.

last release 2026-07-10 (35 days) · last repo commit 2026-07-11 · 12 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 2,078,907 downloads/mo, #3,309 on PyPI

Verify before relying

pip install mutf8

from mutf8 import encode_modified_utf8, decode_modified_utf8

unicode = decode_modified_utf8(b'\xED\xA1\x80\xED\xB0\x80')
bytes_out = encode_modified_utf8(unicode)
  • Whether the pure-Python fallback is automatically selected on all platforms where C compilation is unavailable.
  • Performance characteristics of the pure-Python implementation on real-world payloads outside the benchmark scenarios.
Same gist for agents: .md · .json

What it is and what it does

mutf8 is a codec library for Modified UTF-8, the variant used by the Java Virtual Machine for encoding strings in class files, JNI interfaces, and object serialization. It provides both a C extension and a pure-Python fallback, allowing developers to encode Unicode strings to MUTF-8 bytes and decode MUTF-8 bytes back to Unicode. The library does not register itself as a global codec, keeping imports side-effect-free.

The C extension is significantly faster than the pure-Python version, with speedups ranging from around 10× on tiny strings to over 1000× on large ASCII payloads. The package supports Python 3.9 through 3.14 and is distributed as prebuilt wheels for most platforms, minimizing installation friction.

Use it for

  • Parse and manipulate Java .class files by decoding MUTF-8 strings embedded in the bytecode.
  • Handle string data passed through JNI (Java Native Interface) boundaries in Python-Java interoperability.
  • Deserialize objects exported by Java's object serialization format, which uses MUTF-8 for string encoding.
  • Build tools or analyzers that work with JVM bytecode or class file metadata.
  • Implement protocol handlers that communicate with Java systems using MUTF-8-encoded strings.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you work with JVM artifacts or JNI.

The package is actively maintained, has no known vulnerabilities, and offers both performance (C extension) and portability (pure-Python fallback). Install friction is moderate but manageable via prebuilt wheels. MIT license carries no restrictions.

Install

mutf8 on PyPI

Before you install

Medium install friction due to C extension compilation, but prebuilt wheels are available for Python 3.9–3.14 on common platforms (macOS, Linux, Windows). Package is actively maintained with a recent release.

Requires Python 3.9 or later; C extension is optional and falls back to pure-Python if compilation fails.

License in practice

MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and proprietary projects.

Quickstart

pip install mutf8

from mutf8 import encode_modified_utf8, decode_modified_utf8

unicode = decode_modified_utf8(b'\xED\xA1\x80\xED\xB0\x80')
bytes_out = encode_modified_utf8(unicode)

Verify before relying

  • Whether the pure-Python fallback is automatically selected on all platforms where C compilation is unavailable.
  • Performance characteristics of the pure-Python implementation on real-world payloads outside the benchmark scenarios.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release >=3.9
Install frictionMedium. Platform-specific wheel
Runtime dependenciesNone
MaintenanceActively maintained 35 days since the last release
Last repo commit
First released
Downloads2,078,907 / month, #3,309 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 5 - Production/StableIntended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: CProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Libraries :: Python Modules

Evidence: mutf8-1.1.0-cp310-cp310-macosx_10_9_x86_64.whl; mutf8-1.1.0-cp310-cp310-macosx_11_0_arm64.whl; mutf8-1.1.0-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; mutf8-1.1.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; mutf8-1.1.0-cp310-cp310-musllinux_1_2_aarch64.whl; mutf8-1.1.0-cp310-cp310-musllinux_1_2_x86_64.whl; mutf8-1.1.0-cp310-cp310-win32.whl; mutf8-1.1.0-cp310-cp310-win_amd64.whl; mutf8-1.1.0-cp311-cp311-macosx_11_0_arm64.whl; mutf8-1.1.0-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; mutf8-1.1.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; mutf8-1.1.0-cp311-cp311-musllinux_1_2_aarch64.whl; mutf8-1.1.0-cp311-cp311-musllinux_1_2_x86_64.whl; mutf8-1.1.0-cp311-cp311-win32.whl; mutf8-1.1.0-cp311-cp311-win_amd64.whl; mutf8-1.1.0-cp312-cp312-macosx_11_0_arm64.whl; mutf8-1.1.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl; mutf8-1.1.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl; mutf8-1.1.0-cp312-cp312-musllinux_1_2_aarch64.whl; mutf8-1.1.0-cp312-cp312-musllinux_1_2_x86_64.whl

Tags

Capabilities
mutf-8 encoder decoderjava class file encodingjni string encodingmodified utf-8 pythonjvm string serializationcesu-8 alternativejava bytecode strings
Topics
jvm-interopcharacter-encodingjava-bytecode
PyPI keywords
mutf-8cesu-8jvm

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “mutf-8 encoder decoder”

  • mutf8Encodes and decodes MUTF-8 (Modified UTF-8), a variant used in Java…
  • x-transformersx-transformers provides modular transformer building blocks—encoder,…
  • pylsqpackpylsqpack provides Python Decoder and Encoder objects for reading and…

Give your agent the search over MCP, or paste the wish link into any chat.

More Python Modules packages

idna Worth it
PyPI · Python Modules · released Jun 2026

Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.

Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.

BSD-3-Clausepure Python · 3.9+
1.8Bdownloads / mo
setuptools Worth it
PyPI · Python Modules · released Aug 2026

Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.

MITpure Python · 3.10+
1.6Bdownloads / mo
PyYAML Worth it
PyPI · Python Modules · released Sep 2025

PyYAML parses and emits YAML 1.1 data format, enabling serialization and deserialization of configuration files and Python objects to and from human-readable YAML text.

MITcompiled wheel · 3.8+
1.2Bdownloads / mo
pydantic Worth it
PyPI · Python Modules · released May 2026

Pydantic validates Python data structures against type hints, coercing and checking input at runtime to ensure it matches a declared schema.

MITpure Python · 3.9+
1.1Bdownloads / mo
annotated-types Worth it
PyPI · Python Modules · released Jul 2026

Provides reusable metadata objects for use with PEP-593 `typing.Annotated` to express common constraints like bounds, collection sizes, and predicates on types.

Install it if you use or build libraries that need to express type constraints in a standardized, inspectable way—or if you want to annotate your own types with…

MITpure Python · 3.10+
871.3Mdownloads / mo
typing-inspection Worth it
PyPI · Python Modules · released Aug 2026

Provides runtime tools to inspect and introspect Python type annotations, enabling programmatic examination of type hints at execution time.

MITpure Python · 3.10+
783.0Mdownloads / mo

See also charset-normalizer · rtfunicode · mbstrdecoder · pyvcd · pyjnius · anyascii · base2048 · asn1 · fold-to-ascii · ecoji