Skip to main content
Glama
laszlopere

mcp-bytesmith

hash

Compute cryptographic, CRC, or fast non-crypto digests from input bytes. Supports algorithms like SHA-256, CRC32, xxHash, and BLAKE2 with configurable input and output formats.

Instructions

Compute a cryptographic, CRC, or fast non-crypto digest of bytes.

length (output bytes) is required for shake_*; key keys blake2b/blake2s (decoded with input_format); seed reseeds xxh*/fnv1a_*. Returns {algorithm, digest, output_format, bits}; CRC and fast hashes additionally report their integer value as int. Example: hash("abc", "sha256") -> digest "ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad"

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataYesInput to hash, decoded to bytes via `input_format`.
algorithmYesDigest algorithm: crypto (md5/sha1/sha2/sha3/blake2*), shake_128/shake_256 (need `length`), CRC (crc8/16/32/32c/64), xxhash (xxh32/64/3_64/3_128), or fnv1a_32/fnv1a_64.
input_formatNoHow `data` (and `key`) are decoded; default 'text'.text
output_formatNoHow the digest is rendered (bare hex, no 0x); default 'hex'.hex
lengthNoOutput length in bytes, required for shake_128/shake_256 and invalid otherwise. Default None.
keyNoKey for blake2b/blake2s only, decoded with `input_format`. Default None.
seedNoSeed reseeding xxh*/fnv1a_* only. Default None.
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

In the absence of annotations, the description discloses the return object structure (algorithm, digest, output_format, bits) and additional int field for CRC/fast hashes. It explains parameter effects (length, key, seed) and algorithm-specific requirements. No side effects or rate limits are mentioned, but these are not expected for a hash function.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, using backticks for parameter names and a compact example. Each sentence adds value: purpose, parameter usage, return format, and example. No fluff, though it could be slightly shorter. Good structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given 7 parameters with 100% schema coverage and no output schema, the description covers return values, parameter usage for algorithm families, and gives an example. It is complete enough for a hash tool, though error handling or default behavior clarification (e.g., output_format default) is not explained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline 3. The description adds significant meaning: it explains which parameters are required for specific algorithms (length for shake_*, key for blake2*, seed for xxh*/fnv1a_*), describes the return value with examples, and clarifies decoding behavior via input_format. This goes beyond schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states 'Compute a cryptographic, CRC, or fast non-crypto digest of bytes,' which is a specific verb-resource pair. It distinguishes from siblings like hash_file (file hashing) and hmac (keyed hashing) by listing algorithm categories and noting parameter requirements for specific algorithms.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description specifies when certain parameters are required (e.g., length for shake_*, key for blake2*, seed for xxh*/fnv1a_*). It does not explicitly state when to use this tool vs siblings like hash_file or hmac, but the context of sibling tools and the clear algorithm list implies usage scope. An example is provided, aiding understanding.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/laszlopere/mcp-bytesmith'

If you have feedback or need assistance with the MCP directory API, please join our Discord server