Skip to main content
Glama

Hash / HMAC

hash

FREE. Compute a cryptographic digest: sha256, sha512, sha384, sha1, md5, sha3-256, keccak256, ripemd160. Optional HMAC via hmac_key. Output hex (default), base64, or base64url. keccak256 also returns a 0x-form (handy for Ethereum). Args: algorithm, text (+ input_encoding utf8|hex|base64, output_encoding, hmac_key).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesInput to hash.
hmac_keyNoIf set, compute HMAC with this key (not for keccak256/sha3-256).
algorithmYessha256 | sha512 | sha384 | sha1 | md5 | sha3-256 | keccak256 | ripemd160
input_encodingNoHow `text` is encoded: utf8 (default) | hex | base64 | base64url.
output_encodingNoDigest encoding: hex (default) | base64 | base64url.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations, the description carries the burden and discloses key behaviors: free to use, supported algorithms, optional HMAC, output encodings, and the special 0x-form for keccak256. It does not detail error handling or restrictions beyond the schema's HMAC caveat, but for a pure compute tool this is reasonably transparent.

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

Conciseness5/5

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

The description is compact and front-loaded with the key action and cost, using a few efficient sentences that cover algorithms, HMAC, encodings, and a special case. No wasted words or unnecessary repetition.

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

Completeness5/5

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

Given the tool's moderate complexity and absence of an output schema, the description covers the full range of behaviors: algorithm choices, optional HMAC, input/output encodings, and the Ethereum-friendly 0x form. It is sufficiently complete for an agent to invoke the tool correctly.

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?

The input schema already describes all parameters with 100% coverage, so the description adds little beyond summarizing the parameter list. It restates the parameter names and output options but does not enrich semantics beyond what the schema provides, warranting the baseline score.

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 clearly states it computes cryptographic digests and lists all supported algorithms, distinguishing it from sibling tools like encode and convert. The verb 'compute' and resource 'cryptographic digest' are specific and unambiguous.

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

Usage Guidelines3/5

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

The description conveys the tool's purpose and options but does not explicitly state when to use this tool over alternatives such as encode or convert. Usage context is implied rather than directly contrasted.

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.

TDQS

A4.1/5.0
Disambiguation5/5

Each tool targets a distinct operation: unit conversion, cron parsing, currency conversion, date math, diff, encoding, hashing, ID generation, JSON schema validation, regex, RRULE expansion, text transforms, and timezone conversion. Even related tools like convert, currency, and timezone are clearly separated by domain, with descriptions that eliminate ambiguity.

Naming Consistency5/5

All tool names are lowercase single-word identifiers without separators or camelCase, forming a clean and predictable pattern. While some are verbs (convert, diff, encode) and others nouns (cron, currency, id), the uniform naming style ensures consistency.

Tool Count5/5

13 tools is well-scoped for a general-purpose utility belt. Each tool covers a common utility without redundancy, fitting comfortably within the ideal 3-15 range.

Completeness5/5

The tool surface covers a broad range of utilities: unit and currency conversion, date/time handling (datemath, timezone, cron, rrule), text processing (text, encode, regex, diff), cryptography (hash), ID generation, and schema validation. No obvious gaps exist for the stated purpose.