Pure-Python MCP server for encoding, hashing, and crypto-primitives — computed for real, locally.
Project description
mcp-bytesmith
A pure-Python Model Context Protocol server, built on the official MCP SDK (FastMCP), exposing a toolbox of byte-wrangling utilities — encoding, hashing, number crunching, and Ethereum primitives — all computed locally and for real, with no network calls or remote APIs.
Distribution name: mcp-bytesmith · import package: mcp_bytesmith.
Tools
mcp-bytesmith ships an always-on core toolset built entirely on the Python
standard library, so it works out of the box with no extra dependencies. This
covers the everyday primitives: encode and decode move data between a wide
set of schemes (hex, the Base64/Base32 family, Base58/Base58check, Base45, and
more), hash computes cryptographic, CRC, and fast non-cryptographic digests,
and num_convert translates integers between bases. Rounding out the core are
bytes_edit (pad/trim/slice/concat byte glue), data_uri (build and parse
data: URIs), unicode_normalize and charset_transcode for text and
character-set work, string_escape/string_unescape for JSON/JS/Python/C
escaping, and random for CSPRNG-backed bytes, tokens, and passphrases.
An opt-in Ethereum/EVM toolset (enabled via the ethereum extra) adds the
primitives you reach for when working on-chain: eth_hash for keccak-256,
EIP-191, and EIP-712 typed-data hashing, abi_codec and rlp_codec for ABI and
RLP encode/decode, eth_selector for function and event selectors, eth_tx_codec
for transactions, eth_storage_slot for storage layout, and eth_address_case
for EIP-55 checksums. An always-available info tool reports which toolsets are
active along with version information.
Further toolsets (crypto, IDs, validation) are on the roadmap — see TODO.
Development
uv sync # create venv + install (incl. dev extras)
uv run mcp-bytesmith # start the server over stdio
uv run pytest # run the test suite
Sponsoring
mcp-bytesmith is free, open-source software developed in my spare time. Sponsorships are what keep the project alive and actively maintained — they fund new toolsets, bug fixes, and ongoing support, and they're a direct signal that the work is worth continuing.
If the project is useful to you, please consider sponsoring it through GitHub Sponsors. Click the Sponsor button at the top of the repository, or visit the link directly, and pick a one-time or recurring tier. Every contribution, large or small, is hugely appreciated and goes straight back into keeping mcp-bytesmith healthy.
License
GPLv3 — see LICENSE.
The bundled passphrase wordlist
(src/mcp_bytesmith/wordlists/eff_large.txt,
used by the random tool's passphrase kind) is the EFF "large" wordlist by the
Electronic Frontier Foundation, licensed
CC BY 3.0 US.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_bytesmith-0.1.0.tar.gz.
File metadata
- Download URL: mcp_bytesmith-0.1.0.tar.gz
- Upload date:
- Size: 220.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
220a4cd3d3d23b23a3469418c5a973c44cf428117f8bd5688af9c9645cbda861
|
|
| MD5 |
078ac95bee7ed29fce37d1f71bc6211b
|
|
| BLAKE2b-256 |
706e8280ca0c98dafef7100438369dade97769abc821d7753cb8ae92f3f8ba67
|
Provenance
The following attestation bundles were made for mcp_bytesmith-0.1.0.tar.gz:
Publisher:
release.yml on laszlopere/mcp-bytesmith
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_bytesmith-0.1.0.tar.gz -
Subject digest:
220a4cd3d3d23b23a3469418c5a973c44cf428117f8bd5688af9c9645cbda861 - Sigstore transparency entry: 1803787797
- Sigstore integration time:
-
Permalink:
laszlopere/mcp-bytesmith@79253b1bcc0c057bfc29a660174154bcf8915ad3 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/laszlopere
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@79253b1bcc0c057bfc29a660174154bcf8915ad3 -
Trigger Event:
push
-
Statement type:
File details
Details for the file mcp_bytesmith-0.1.0-py3-none-any.whl.
File metadata
- Download URL: mcp_bytesmith-0.1.0-py3-none-any.whl
- Upload date:
- Size: 72.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7beb8ca5d8685fcf2cb59b616670f31ec24bc9c545349c9f2ee33965a7fa7c11
|
|
| MD5 |
d940144e0c1cbc52c54cd398b929e11e
|
|
| BLAKE2b-256 |
9a2de71f989837e656618bc5729278d37747fc3a7987aada8b8651b239f7821f
|
Provenance
The following attestation bundles were made for mcp_bytesmith-0.1.0-py3-none-any.whl:
Publisher:
release.yml on laszlopere/mcp-bytesmith
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_bytesmith-0.1.0-py3-none-any.whl -
Subject digest:
7beb8ca5d8685fcf2cb59b616670f31ec24bc9c545349c9f2ee33965a7fa7c11 - Sigstore transparency entry: 1803787812
- Sigstore integration time:
-
Permalink:
laszlopere/mcp-bytesmith@79253b1bcc0c057bfc29a660174154bcf8915ad3 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/laszlopere
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@79253b1bcc0c057bfc29a660174154bcf8915ad3 -
Trigger Event:
push
-
Statement type: