Skip to main content
Glama

Hash SM3

hash-sm3
Read-onlyIdempotent

Calcula el resumen SM3 (estándar chino GB/T 32905). Cuándo: se necesita el resumen exacto de un texto o de unos bytes dados, p. ej. para comparar contenido o cotejar un checksum publicado. No para: calcular el resumen SHA-256 (hash-sha256). Efectos secundarios: ninguno (solo lectura, sin red, sin estado guardado). Determinista: la misma entrada da la misma salida. Límites: entrada JSON de hasta 64 KB, 1 s por llamada, resultado de hasta 1 MB.

EN: Computes the SM3 digest (Chinese national standard GB/T 32905, 256-bit). When: an exact digest of given text or bytes is needed, e.g. to compare content or match a published checksum. Not for: computing the SHA-256 digest (hash-sha256). Side effects: none (read-only, no network access, no stored state). Deterministic: the same input gives the same output. Limits: JSON input up to 64 KB, 1 s per call, result up to 1 MB.

Input Schema

NameRequiredDescriptionDefault
dataYesInput data (string; required).
input_encodingNoHow `data` is encoded (optional; one of: utf8, hex, base64; default "utf8").utf8
output_encodingNoOutput encoding of the digest (optional; one of: hex, base64, base64url; default "hex").hex

Output Schema

NameRequiredDescriptionDefault
digestNo
encodingNo
algorithmNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / data / examples
      Added value: +[
      +  "abc"
      +]
  2. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive/no-open-world, yet the description still adds genuine value: determinism, no network, no stored state, and concrete limits (1 s per call, 1 MB result). One wrinkle: 'JSON input up to 64 KB' sits oddly against the schema's 1,048,576-char data maxLength, leaving the effective input ceiling slightly ambiguous.

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?

Labeled segments (Cuándo / No para / Efectos secundarios / Determinista / Límites) make it scannable and front-loaded with purpose. It is, however, fully duplicated in ES and EN, which roughly doubles length for an agent that reads only one language.

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?

With an output schema present the description needn't explain return values, and annotations cover the safety profile; what remains necessary — determinism, cost/time bounds, size limits, and the sibling boundary — is all present. Only the 64 KB vs 1 MB input-limit ambiguity keeps it from fully closing the loop.

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

Parameters3/5

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

Schema coverage is 100% with enum documentation for both encoding parameters, so the schema already carries the parameter burden. The description's phrase 'text or bytes' only loosely gestures at the input_encoding options and adds no format or fallback guidance, so baseline 3 applies.

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?

States a specific verb and resource ('Computes the SM3 digest'), pins the standard (GB/T 32905, 256-bit), and explicitly names the sibling it is not (hash-sha256). An agent can distinguish it from the ~20 other hash-* siblings without opening any schema.

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

Usage Guidelines5/5

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

Explicit 'When:' clause gives the triggering conditions (exact digest, content comparison, published checksum matching) and an explicit 'Not for:' clause routes SHA-256 work to hash-sha256. This is the when/when-not/alternative triad at full strength.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources