developer-tools

All Your Base64

by skullzarmy

All Your Base64 offers fast base64 decoding and encoding, supports 8 output formats, and includes smart file change dete

Provides base64 encoding and decoding with 8 output formats, automatic MIME type detection, data URI generation, and intelligent job memory with checksums for file change detection and LRU caching.

github stars

2

8 output formats including TypeScript and CSSIntelligent caching with file change detectionCross-platform CLI utility

best for

  • / Web developers embedding assets in code
  • / CLI automation and build scripts
  • / Data URI generation for CSS/HTML
  • / File conversion in development workflows

capabilities

  • / Encode files to base64 in 8 output formats
  • / Decode base64 strings back to files
  • / Generate data URIs with MIME type detection
  • / Process files from command line or stdin
  • / Cache processed files with checksum validation
  • / Extract metadata and file information

what it does

Converts files to base64 format with 8 different output options (JSON, TypeScript, CSS, HTML, etc.) and includes automatic MIME type detection. Also decodes base64 back to files.

about

All Your Base64 is a community-built MCP server published by skullzarmy that provides AI assistants with tools and capabilities via the Model Context Protocol. All Your Base64 offers fast base64 decoding and encoding, supports 8 output formats, and includes smart file change dete It is categorized under developer tools.

how to install

You can install All Your Base64 in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

license

MIT

All Your Base64 is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

readme

All Your Base64

"All your base64 are belong to us!"

all your base are belong to us

A modern, efficient, purpose-built CLI utility to convert any possible input file into a base64 string with comprehensive output options. Built with TypeScript and designed for both performance and developer experience.

npm version License: MIT CI

CLI output sample

Quick Navigation

🚀 Installation • 🎯 Quick Start • 🤖 MCP Server • 📖 Commands • 🎨 Output Formats • ⚡ Advanced Usage • 🔧 Troubleshooting • 🧪 API Reference

Features

Modern & Fast - Built with TypeScript and optimized for performance
🔍 Smart Detection - Industry-leading MIME type detection via file-type + mime-types
📁 Versatile Input - Files, stdin, strings
🎨 Multiple Outputs - Raw, JSON, JS, TS, CSS, HTML, XML, YAML, Markdown
🔄 Bidirectional - Both encoding and decoding support
🛡️ Robust - Comprehensive error handling and validation
📊 Metadata - File information, hashing, and processing stats
🎯 Data URIs - Generate data URIs with proper MIME types
🌍 Cross-Platform - macOS, Linux, Windows, Docker, Cloud ready

Why Choose ayb64?

While basic base64 tools simply convert files to strings, ayb64 provides a complete modern solution:

🎨 8 Output Formats - Raw, JSON, JavaScript, TypeScript, CSS, HTML, XML, YAML, Markdown
🤖 AI Integration - Built-in MCP server with memory and job recall for AI workflows
🔍 Smart Detection - Industry-leading MIME type detection (100+ file types)
📋 Rich Metadata - File info, hashing, processing stats, timestamps
🎯 Web-Ready - Generate data URIs for immediate use in web development
Performance - TypeScript-built with optimized memory usage and benchmarked speed
🔄 Versatile Input - Files, stdin, strings with automatic detection
🛡️ Production Ready - Comprehensive error handling, validation, and testing
📊 Developer Experience - Modern CLI with helpful output and examples

Perfect for developers who need more than just basic file-to-base64 conversion.

Installation

Global Installation (Recommended)

npm install -g ayb64

Local Installation

npm install ayb64

Using npx (No Installation)

npx ayb64 --help
# or use the shorter command
npx ayb64 --help

Quick Start

# Encode a file
ayb64 encode myfile.jpg

# Encode with wrapped output
ayb64 encode myfile.jpg --wrap 76

# Generate data URI
ayb64 encode image.png --data-uri

# Output to file with metadata
ayb64 encode document.pdf -o output.b64 --metadata

# Decode base64 back to file
ayb64 decode SGVsbG8sIFdvcmxkIQ== -o hello.txt

# Pipe from stdin
echo "Hello, World!" | ayb64 encode

# Get file information
ayb64 info myfile.jpg --json

MCP Server for AI Agents

All Your Base64 includes a powerful Model Context Protocol (MCP) server optimized for AI agents and coding tasks. The MCP server provides memory, job recall, checksums for change detection, and specialized tools for AI workflows.

MCP Server Features

🧠 Smart Memory - LRU cache with job recall by ID
🔍 Change Detection - SHA256 checksums detect file modifications
🤖 AI Optimized - Tools designed for coding and development workflows
📋 Job History - Track and recall previous encoding operations
🔗 Data URIs - Generate web-ready data URIs for images and assets
Performance - Lightweight, extensible, and robust

MCP Server Tools

  • encode - Encode files/data with format options and job tracking
  • decode - Decode base64 with auto-detection and file output
  • recall - Retrieve previous jobs by ID with full context
  • jobs - List recent operations with metadata
  • datauri - Generate data URIs optimized for web development
  • memory - Manage job cache (stats, clear)

Using the MCP Server

Start the MCP Server

# Using the CLI command (recommended)
ayb64 mcp

# Direct binary
ayb64-mcp

# Development mode
npm run mcp

# Or via npx with source
npx tsx src/mcp-server.ts

Configure in Your MCP Client

VS Code/Cursor/Cline (add to mcp.json):

{
  "mcpServers": {
    "ayb64": {
      "command": "ayb64",
      "args": ["mcp"]
    }
  }
}

Claude Desktop:

{
  "mcpServers": {
    "ayb64": {
      "command": "ayb64-mcp"
    }
  }
}

Example MCP Workflows

Encode an image for web use:

Tool: encode
Input: {
  "data": "/path/to/logo.png",
  "isFile": true,
  "format": "js",
  "dataUri": true
}
Output: Job ID + JavaScript const with data URI

Recall a previous job:

Tool: recall
Input: {"jobId": "job_1234567890_abc123"}
Output: Full original result with metadata

Generate data URI for CSS:

Tool: datauri
Input: {"input": "/path/to/background.jpg"}
Output: data:image/jpeg;base64,... (ready for CSS)

Commands

encode / e

Convert input to base64 format.

ayb64 encode [input] [options]

Arguments:

  • input - Input file path (use - for stdin)

Options:

  • -o, --output <path> - Output file path (default: stdout)
  • -f, --format <format> - Output format: raw, json, js, ts, css, html, xml, yaml, md
  • -w, --wrap <columns> - Wrap base64 output at specified column width
  • -d, --data-uri - Generate data URI with MIME type
  • -m, --metadata - Include file metadata in output
  • --no-mime - Disable MIME type detection
  • --quiet - Suppress non-essential output

decode / d

Decode base64 input back to original format.

ayb64 decode [input] [options]

Arguments:

  • input - Input file path or base64 string (use - for stdin)

Options:

  • -o, --output <path> - Output file path (default: stdout)
  • -m, --metadata - Show metadata if available
  • --quiet - Suppress non-essential output

info / i

Display file information and metadata without conversion.

ayb64 info <input> [options]

Arguments:

  • input - Input file path

Options:

  • -j, --json - Output as JSON

mcp

Start the Model Context Protocol server for AI agents.

ayb64 mcp

This command starts the MCP server which provides base64 conversion tools optimized for AI agents and coding workflows. The server includes memory, job recall, checksums, and specialized tools.

No options - The MCP server runs as a standalone process communicating via stdio.

batch / b

Process multiple files in batch (coming soon).

ayb64 batch <pattern> [options]

Output Formats

Raw Format (default)

ayb64 encode file.txt
# SGVsbG8sIFdvcmxkIQ==

JSON Format

ayb64 encode file.txt --format json --metadata
{
  "data": "SGVsbG8sIFdvcmxkIQ==",
  "size": 22,
  "metadata": {
    "filename": "file.txt",
    "mimeType": "text/plain",
    "size": 13,
    "hash": "abc123...",
    "processingTime": 2
  }
}

JavaScript/TypeScript Module

ayb64 encode file.txt --format js --metadata
const base64Data = 'SGVsbG8sIFdvcmxkIQ==';

const metadata = {
  filename: 'file.txt',
  mimeType: 'text/plain',
  size: 13,
};

module.exports = { base64Data, metadata };

Data URI

ayb64 encode image.png --data-uri
# data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...

HTML Document

ayb64 encode file.txt --format html --metadata
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Base64 Data</title>
  </head>
  <body>
    <div class="base64-data" data-content="SGVsbG8sIFdvcmxkIQ=="></div>
    <div class="metadata">
      <h3>File Information</h3>
      <p><strong>Filename:</strong> file.txt</p>
      <p><strong>MIME Type:</strong> text/plain</p>
      <p><strong>Size:</strong> 13 bytes</p>
    </div>
  </body>
</html>

CSS Custom Properties

ayb64 encode file.txt --format css
.base64-data {
  --base64-content: 'SGVsbG8sIFdvcmxkIQ==';
}

.base64-data::before {
  content: var(--base64-content);
}

Advanced Usage

Line Wrapping

Wrap base64 output for better readability:

ayb64 encode file.txt --wrap 64    # 64 characters per line
ayb64 encode file.txt --wrap 76    # RFC 2045 compliant

Processing Multiple Files

# Using shell globbing
for file in *.jpg; do
  ayb64 encode "$file" -o "${file}.b64"
done

# Using find
find . -name "*.png" -exec ayb64 encode {} -o {}.b64 \;

Piping and Redirection

# Pipe from curl
curl -s https://example.com/image.jpg | ayb64 encode --data-uri

# Chain operations
ayb64 encode file.txt | ayb64 decode -o restored.txt

# Use with other tools
base64 -d encoded.txt | ayb64 encode --format json

Error Handling

All Your Base64 provides comprehensive error handling with helpful suggestions:

$ ayb64 encode nonexistent.txt
Error: File not found: nonexistent.txt
Suggestions:
  • Check that the file path is correct
  • Ensure the file exists
  Path: nonexistent.txt

Common error types:

  • File not found - Check file path and permissions
  • Invalid base64 - Verify input format when decoding
  • Permission denied - Check file/directory permissions
  • Invalid format - Use --help to see supported formats

API Reference

File Information Output

When using --metadata, you'll get comprehensive file inf


FAQ

What is the All Your Base64 MCP server?
All Your Base64 is a Model Context Protocol (MCP) server profile on explainx.ai. MCP lets AI hosts (e.g. Claude Desktop, Cursor) call tools and resources through a standard interface; this page summarizes categories, install hints, and community ratings.
How do MCP servers relate to agent skills?
Skills are reusable instruction packages (often SKILL.md); MCP servers expose live capabilities. Teams frequently combine both—skills for workflows, MCP for APIs and data. See explainx.ai/skills and explainx.ai/mcp-servers for parallel directories.
How are reviews shown for All Your Base64?
This profile displays 10 aggregated ratings (sample rows for discoverability plus signed-in user reviews). Average score is about 4.5 out of 5—verify behavior in your own environment before production use.
MCP server reviews

Ratings

4.510 reviews
  • Shikha Mishra· Oct 10, 2024

    All Your Base64 is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.

  • Piyush G· Sep 9, 2024

    We evaluated All Your Base64 against two servers with overlapping tools; this profile had the clearer scope statement.

  • Chaitanya Patil· Aug 8, 2024

    Useful MCP listing: All Your Base64 is the kind of server we cite when onboarding engineers to host + tool permissions.

  • Sakshi Patil· Jul 7, 2024

    All Your Base64 reduced integration guesswork — categories and install configs on the listing matched the upstream repo.

  • Ganesh Mohane· Jun 6, 2024

    I recommend All Your Base64 for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.

  • Oshnikdeep· May 5, 2024

    Strong directory entry: All Your Base64 surfaces stars and publisher context so we could sanity-check maintenance before adopting.

  • Dhruvi Jain· Apr 4, 2024

    All Your Base64 has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.

  • Rahul Santra· Mar 3, 2024

    According to our notes, All Your Base64 benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.

  • Pratham Ware· Feb 2, 2024

    We wired All Your Base64 into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.

  • Yash Thakker· Jan 1, 2024

    All Your Base64 is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.