Skip to main content
Glama
Jambozx

OnlineCyberTools MCP (280+ filterable tools)

by Jambozx

encoding_decoding_xxencode

Read-onlyIdempotent

Encode binary data into alphanumeric XXEncode text for safe transmission over 7-bit systems, or decode XXEncode back to original data.

Instructions

XXEncode / XXDecode Binary-to-Text Converter. Encode text or binary data to XXEncode, or decode XXEncode back to text. XXEncode is a classic Unix binary-to-text format like uuencode, but uses a fully alphanumeric alphabet (plus, minus, digits, A-Z, a-z) that survives EBCDIC and 7-bit mail gateways where uuencode's punctuation gets mangled. Output is optionally wrapped in a begin/end envelope. Use encoding_decoding_uuencode for the more common Unix tooling default, encoding_decoding_binhex for Macintosh files with resource forks, or encoding_decoding_base64 for the ubiquitous web/MIME format. Runs locally on the input you provide: read-only, non-destructive, contacts no external service, and is rate-limited (60 requests/minute for anonymous callers). Returns the converted string plus decoded-file metadata (filename, permissions, size) when decoding.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
textYesInput to convert: plaintext/hex/base64 (per input_format) when encoding, or an XXEncoded block when decoding. Must not be blank.
operationYesDirection: encode turns input into XXEncode; decode turns an XXEncode block back into text.
filenameNoFilename written into the begin header on encode (ignored on decode). Used only when options.includeHeaders is true.document.txt
permissionsNoThree octal digits for the Unix file mode in the begin header on encode. Ignored on decode.644
input_formatNoHow to interpret text when encoding: text (UTF-8), hex string, or base64. Ignored on decode.text
optionsNoOptional encode/decode settings.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
successNoWhether the conversion succeeded.
inputNoThe submitted text, echoed back.
operationNoThe operation performed (encode or decode).
filenameNoThe filename argument echoed back.
permissionsNoThe permissions argument echoed back.
input_formatNoThe input_format argument echoed back.
optionsNoThe effective options after defaults were applied.
resultNoThe XXEncode block (encode) or decoded text (decode).
decoded_infoNoMetadata parsed from the XXEncode header on decode (empty on encode).

Schema Changelog

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

  1. Changed26 schema fields changedv0.5.1
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / filename / default
      Added value: +"document.txt"
    • addedInput schema / properties / filename / description
      Added value: +"Filename written into the begin header on encode (ignored on decode). Used only when options.includeHeaders is true."
    • addedInput schema / properties / filename / maxLength
      Added value: +255
    • addedInput schema / properties / filename / minLength
      Added value: +1
    • addedInput schema / properties / input_format / default
      Added value: +"text"
    • addedInput schema / properties / input_format / description
      Added value: +"How to interpret text when encoding: text (UTF-8), hex string, or base64. Ignored on decode."
    • addedInput schema / properties / input_format / enum
      Added value: +[
      +  "text",
      +  "hex",
      +  "base64"
      +]
    • addedInput schema / properties / operation / description
      Added value: +"Direction: encode turns input into XXEncode; decode turns an XXEncode block back into text."
    • addedInput schema / properties / operation / enum
      Added value: +[
      +  "encode",
      +  "decode"
      +]
    • addedInput schema / properties / options / additionalProperties
      Added value: +false
    • addedInput schema / properties / options / description
      Added value: +"Optional encode/decode settings."
    • addedInput schema / properties / options / properties / includeHeaders / default
      Added value: +true
    • addedInput schema / properties / options / properties / includeHeaders / description
      Added value: +"On encode, wrap output in begin/end lines."
    • addedInput schema / properties / options / properties / lineLength / default
      Added value: +45
    • addedInput schema / properties / options / properties / lineLength / description
      Added value: +"On encode, max characters of source data per output line (chunked as floor(lineLength*3/4) bytes)."
    • addedInput schema / properties / options / properties / lineLength / minimum
      Added value: +1
    • addedInput schema / properties / options / properties / strictMode / default
      Added value: +false
    • addedInput schema / properties / options / properties / strictMode / description
      Added value: +"On decode, throw on any malformed line instead of skipping it."
    • removedInput schema / properties / options / required
      Removed value: -[
      -  "includeHeaders",
      -  "strictMode",
      -  "lineLength"
      -]
    • addedInput schema / properties / permissions / default
      Added value: +"644"
    • addedInput schema / properties / permissions / description
      Added value: +"Three octal digits for the Unix file mode in the begin header on encode. Ignored on decode."
    • addedInput schema / properties / permissions / pattern
      Added value: +"^[0-7]{3}$"
    • addedInput schema / properties / text / description
      Added value: +"Input to convert: plaintext/hex/base64 (per input_format) when encoding, or an XXEncoded block when decoding. Must not be blank."
    • changedInput schema / required
      Previous value: -[
      -  "text",
      -  "operation",
      -  "filename",
      -  "permissions",
      -  "input_format",
      -  "options"
      -]New value: +[
      +  "text",
      +  "operation"
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "decoded_info": {
      +      "description": "Metadata parsed from the XXEncode header on decode (empty on encode).",
      +      "properties": {
      +        "filename": {
      +          "description": "Filename parsed from the begin line (decode).",
      +          "type": "string"
      +        },
      +        "isText": {
      +          "description": "Whether the decoded output was treated as text.",
      +          "type": "boolean"
      +        },
      +        "permissions": {
      +          "description": "Octal permissions parsed from the begin line (decode).",
      +          "type": "string"
      +        },
      +        "size": {
      +          "description": "Number of decoded bytes (decode).",
      +          "type": "integer"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "filename": {
      +      "description": "The filename argument echoed back.",
      +      "type": "string"
      +    },
      +    "input": {
      +      "description": "The submitted text, echoed back.",
      +      "type": "string"
      +    },
      +    "input_format": {
      +      "description": "The input_format argument echoed back.",
      +      "type": "string"
      +    },
      +    "operation": {
      +      "description": "The operation performed (encode or decode).",
      +      "type": "string"
      +    },
      +    "options": {
      +      "description": "The effective options after defaults were applied.",
      +      "properties": {
      +        "includeHeaders": {
      +          "description": "Whether begin/end headers were emitted.",
      +          "type": "boolean"
      +        },
      +        "lineLength": {
      +          "description": "Source bytes-per-line setting used on encode.",
      +          "type": "integer"
      +        },
      +        "strictMode": {
      +          "description": "Whether strict decoding was enabled.",
      +          "type": "boolean"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "permissions": {
      +      "description": "The permissions argument echoed back.",
      +      "type": "string"
      +    },
      +    "result": {
      +      "description": "The XXEncode block (encode) or decoded text (decode).",
      +      "type": "string"
      +    },
      +    "success": {
      +      "description": "Whether the conversion succeeded.",
      +      "type": "boolean"
      +    }
      +  },
      +  "type": "object"
      +}
  2. First observedv0.1.0

TDQS

A5/5.0
Behavior5/5

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

Goes beyond annotations by specifying local execution, non-destructiveness, no external service contact, rate limits, and return metadata. No contradiction with annotations.

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?

Well-structured and concise: starts with name and purpose, then context, usage guidance, behavioral notes. No redundant or missing information.

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 6 parameters, nested options, and output schema, the description covers purpose, usage, behavior, and limitations completely. Output schema existing reduces need for return value explanation.

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

Parameters5/5

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

Schema coverage is 100%, but description adds meaning by explaining the alphabet, envelope, and effects of options like includeHeaders and strictMode, as well as the rationale for the format.

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?

Clearly states it is an XXEncode/XXDecode binary-to-text converter, describes encoding and decoding, and distinguishes from siblings like uuencode, binhex, and base64.

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?

Explicitly provides when to use this tool versus alternatives, including specific sibling names and contexts (EBCDIC, mail gateways, Macintosh files, web/MIME).

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/Jambozx/onlinecybertools-mcp-server'

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