Skip to main content
Glama

Benchline

Encode or decode Base64

base64_codec
Read-onlyIdempotent

Encode UTF-8 text as Base64, or decode Base64 and data URIs. URL-safe output uses - and _ and omits padding. Decode reports the sniffed media type and whether the bytes are UTF-8 text.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
mimeNotext/plain;charset=utf-8
textYesText to encode, or Base64 or a data URI to decode.
actionNoencode
dataUriNo
urlSafeNoEncode with the URL-safe alphabet and no padding. Data URIs stay on the standard alphabet.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes
mimeYes
errorYes
binaryYes
outputYes
filenameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint and openWorldHint=false, so the safety profile is covered. The description adds genuinely new behavior: URL-safe output uses '-'/'_' and omits padding, and decode reports the sniffed media type plus whether bytes are UTF-8 text. It does not discuss error behavior on invalid input, but the added context is solid.

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?

Three short sentences, front-loaded with the core encode/decode capability, then the two behavioral nuances. Every sentence carries information; no padding.

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?

An output schema exists so return values need not be explained, and the description still helpfully notes what decode surfaces (media type, UTF-8 status). It is nearly complete for a 5-param codec, with the only gap being the unmentioned mime parameter.

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 description coverage is only 40% (mime, action and dataUri have no schema descriptions), so the description must compensate. It does cover data-URI decoding and URL-safe semantics, but never mentions the mime parameter or the interaction between action and dataUri, leaving some parameters underspecified.

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 specific verbs (encode, decode) and the exact resource (Base64 / data URIs), and it is easily distinguished from nearby siblings like url_codec or convert_data_format. An agent knows immediately what this tool is for.

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?

Usage is only implied: 'Encode ... or decode ...' plus the default action=encode. There is no explicit when-to-use or when-not-to-use guidance, and no mention of an alternative (e.g. url_codec) for related work.

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