Skip to main content
Glama
745,045 tools. Updated 2026-11-05 03:01

"Information about Base64 Encoding" matching MCP tools:

  • Read the contents of a file from a site's container. Max file size: 512KB. Binary files are rejected — use the site's file manager or SSH for binary files. Requires: API key with read scope. Args: slug: Site identifier path: Relative path to the file Returns: {"path": "wp-config.php", "content": "<?php ...", "size": 1234, "encoding": "utf-8"} Errors: NOT_FOUND: File doesn't exist VALIDATION_ERROR: File is binary or exceeds 512KB
    ConnectorNo auth
  • Upload a base64-encoded file to a site's container. Use this for binary files (images, archives, fonts, etc.). For text files, prefer write_file(). Requires: API key with write scope. Args: slug: Site identifier path: Relative path including filename (e.g. "images/logo.png") content_b64: Base64-encoded file content Returns: {"success": true, "path": "images/logo.png", "size": 45678} Errors: VALIDATION_ERROR: Invalid base64 encoding FORBIDDEN: Protected system path
    ConnectorNo auth
  • Read attached evidence through MCP without changing its format. Pass evidenceId from goal-get. Text (text/plain, JSON, NDJSON) returns newline-preserving redacted lines; offset/limit are zero-based line pagination. Images return a native MCP image with original MIME and bytes. For a complete video, PDF, ZIP or other binary, binaryDelivery=link (default) returns a resource_link to the authenticated original download — no base64 and no conversion. If the client cannot open external links, binaryDelivery=base64 embeds the exact original bytes in a resource blob; this expands data by about 33% plus JSON overhead and can consume the client context window, so use it only when needed. byteOffset/byteLimit require binaryDelivery=base64. Text secrets are redacted; binary evidence is unmodified.
    ConnectorNo auth
  • Read attached evidence through MCP without changing its format. Pass evidenceId from goal-get. Text (text/plain, JSON, NDJSON) returns newline-preserving redacted lines; offset/limit are zero-based line pagination. Images return a native MCP image with original MIME and bytes. For a complete video, PDF, ZIP or other binary, binaryDelivery=link (default) returns a resource_link to the authenticated original download — no base64 and no conversion. If the client cannot open external links, binaryDelivery=base64 embeds the exact original bytes in a resource blob; this expands data by about 33% plus JSON overhead and can consume the client context window, so use it only when needed. byteOffset/byteLimit require binaryDelivery=base64. Text secrets are redacted; binary evidence is unmodified.
    ConnectorNo auth
  • Reverse percent-encoding with decodeURIComponent, turning %20-style escapes back into the characters they stand for. Returns JSON { decoded }. A malformed or truncated escape sequence is rejected with an error rather than passed through. Note that '+' is left as a literal plus, not converted to a space. It understands percent-escapes and nothing else: Base64 text and JWTs pass through unchanged or fail, rather than being decoded. It is the exact inverse of encode_url.
    ConnectorNo auth
  • Reverse percent-encoding with decodeURIComponent, turning %20-style escapes back into the characters they stand for. Returns JSON { decoded }. A malformed or truncated escape sequence is rejected with an error rather than passed through. Note that '+' is left as a literal plus, not converted to a space. It understands percent-escapes and nothing else: Base64 text and JWTs pass through unchanged or fail, rather than being decoded. It is the exact inverse of encode_url.
    ConnectorNo auth

Matching MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Enables reading, searching, editing, and writing files in legacy encodings such as GBK, Big5, Shift-JIS, and Windows codepages, with automatic detection and preservation of the original encoding.
    4
    46 npm
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Provides tools to encode files to Base64 strings and decode Base64 content back to files, supporting both text and binary formats.
    2
    Apache 2.0

Matching MCP Connectors

  • Encoding MCP — Base64 / Base64URL / Base32 / Hex.

  • About Bureau, the self-hosted office for AI agents: overview, FAQ search, roadmap, install.

  • Parse a base64-encoded PDF bank/credit-card/loan statement and return the extracted fields WITHOUT saving anything. Premium-only. This is step 1 of a two-step flow: the extracted values are reviewed with the user, and a separate apply step writes the confirmed values to a specific account. Nothing is persisted by this tool. Args: pdf_base64: The PDF file encoded as a base64 string (<= 5 MB decoded). Image-only/scanned PDFs aren't supported. Returns: ``{"success": True, "fields": {...}, "fields_found": N, "account_type_hint": "credit_card"|"mortgage"|...|None}`` where each entry in ``fields`` is ``{"value": "1234.56", "confidence": 0.9, "source_text": "...", "source": "regex"}`` (the same shape the REST parse returns). The ``value`` strings are the inputs the apply step accepts. On failure: ``{"error": "..."}`` (not Premium, bad base64, not a PDF, too large, or unparseable).
    ConnectorAPI key
  • Retrieve The Hill Kinabalu’s official public wedding venue and 2026/2027 package information, including capacity, event sizes, starting package prices, key inclusions, add-ons without prices, payment structures, and enquiry links. Use this when someone asks about weddings, wedding packages, the event venue, guest capacity, package pricing, or how to enquire. This tool does not check date availability or submit an enquiry.
    ConnectorNo auth
  • Change files on an existing site. Default mode 'patch' writes only the listed files and keeps the rest; `delete: [paths]` removes files. mode:'replace' deletes every file not listed. Preview with dryRun:true. Use deploy_site instead to create a new site. A 100-250 KB text file fits in one call with encoding:'gzip+base64' (gzip locally, then base64); prefer that over begin_deploy plus add_file_chunk. Fails with SITE_NOT_FOUND when the site does not exist.
    Connector
    Destructive
    No auth
  • Stage a Trial Balance spreadsheet (xlsx or csv, max 4 MB) for an entity by INLINING its bytes as base64. This path is ONLY for programmatic callers (a script, Claude Code, an automation) that already have the raw file on disk. If a HUMAN has the file — e.g. they attached it to this chat — do NOT use this tool and do NOT base64-encode the file: call create_upload_link instead and give them the link to upload it in their browser. File size does not change this: even a small attached file goes through create_upload_link — inlining a human-supplied file is unreliable and its bytes routinely truncate. Even for a file you hold on disk, prefer create_upload_link once the file is larger than about 10 KB: base64 through a model context mutates a token often enough that the damage lands as a PLAUSIBLE trial balance, not as an obvious error. VERIFY THE HASH BEFORE YOU CONFIRM ANYTHING: this tool returns received_file_hash, the sha256 of the bytes the server actually received. Compute the sha256 of the file on your disk and compare the two. If they differ, the bytes changed in transit — do NOT call confirm_column_mapping on this session; re-send the file with create_upload_link instead. A mismatched file can still parse cleanly and still show sensible columns, so the hash is the only reliable check. Returns the upload session with detected columns and mapping SUGGESTIONS — nothing is ingested yet. Next: verify received_file_hash, then review the suggested column mapping with your user, then call confirm_column_mapping.
    ConnectorNo auth
  • Render a Markdown resume to a finished PDF using a ResumeMD template (default: classic — see list_resume_templates for all 32 ids). Returns JSON with a base64-encoded PDF and a suggested filename; decode the base64 to give the user the file. The PDF is generated in memory and never stored. For interactive editing, template switching, and color choices, send the user to resumemd.pro/editor instead.
    ConnectorNo auth
  • Order a formatted, downloadable financial report (Excel or PDF) for a Norwegian company — the same multi-source-fused figures, layout and source note as the report a customer would download in the Firmaradar portal, ready to file or forward. Returns a short-lived download link + metadata (years covered, source, currency), NOT the file itself and NOT base64 data — fetch the download_url separately, no further auth required, within expires_in seconds. Use `get_company_financials` instead when you need the raw figures to reason about, not a document to hand off. Requires the Excel-export or PDF-export add-on (matching the requested format) on the caller's account. Charges 1 credit per financial year included in the report.
    ConnectorNo auth
  • Get the status of a UGC generation job by its `ugc_job` id (a hashid returned by generate_ugc). Returns `status`, one of: queued, rendering (in-flight -- keep polling) or completed, failed (terminal -- stop polling). Always returns `progress` (0-100) and `progress_step` (the current render stage, e.g. `start_frame`, `rendering`, `encoding`), updated live from the worker while rendering, so you can report a real percentage to the user between polls. When `completed` it returns `video_url` (a downloadable GET URL for the generated clip), `share_url` (a short, stable openclip.app/c/<id> link that redirects to the clip and never expires -- give this to a human to share), and `result_meta` (e.g. duration, dims, fps, seed). When `failed` it returns `error`. Poll about every 10-15s; UGC renders are heavy and can take a couple of minutes.
    ConnectorOAuth
  • Uploads a small base64-encoded object to S3-compatible storage. ~$1/GB, $0.01 minimum, capped at 4MB (larger files: use HTTP PUT /store instead). Returns a key for retrieve_object.
    ConnectorNo auth
  • Encode PlantUML source into a URL token and ready-to-use share/render URLs (svg + png). The result carries url_ok: GET URLs only work while the token is at most 16000 characters; when url_ok is false do not share the URLs - render with render_diagram instead (it uses the POST API, no size limit up to 5 MB). Tokens use PlantUML's own 64-character alphabet ("0-9 A-Z a-z - _") over raw DEFLATE. This is NOT base64 - never encode or decode tokens with a base64 codec; use encode_source / decode_token.
    ConnectorNo auth
  • Download a generated media file (video, frame) and return its bytes, base64-encoded, so the file can be saved or shown even though the media endpoint isn't publicly reachable with your MCP key. THIS IS THE EXPENSIVE PATH — prefer `download_url` from the job result. Bytes returned here travel as TEXT, and text is where context dies: a 480 KB audio stem is ~640 thousand base64 characters, roughly 160 000 tokens, in ONE tool result. The same file behind `download_url` costs about twenty. An inline image preview is cheap by comparison (it travels as an image, ~450 tokens) — it is base64 in a text field that hurts. Because of that this tool REFUSES big files by default and hands back a download link instead. Pass force_bytes=True only when you genuinely need the bytes inside the conversation and know what it costs. path: the `download_path` / `first_frame_path` / `last_frame_path` value from a job result (e.g. "/v1/media/<id>.mp4"), or just the bare filename. max_kb: size ceiling for an in-band answer (default 64 KB ≈ 21 000 tokens). Returns {"filename", "media_type", "base64"}. The download is scoped to your own account group — you can only fetch media your key produced. Note videos can be several MB, so the base64 payload is large; fetch only when you actually need the bytes (to save/display), not to check status (use check_job for that). On storage: the server keeps a local cache of results and, when it runs short of disk, drops the OLDEST files first, whether fetched or not. A dropped file is fetched back from the Google account that made it on the next request; if that takes a while you get `retry_after_s` — call again then. If that account is disconnected, the error names it and gives `reconnect_url`: tell the user to reconnect it, then retry. Only when the original cannot be fetched back does it answer 410 with the date. Saving the bytes locally is still the way to keep something for good.
    ConnectorNo auth
  • Fetch complete, structured information about a single Amazon product: title, brand, images, feature bullets, description, Buy Box price and availability, Prime eligibility, rating and review count, Best Sellers Rank, category path, variants, specifications, and top reviews. This is the primary tool for product analysis, listing enrichment, and price monitoring. Use this tool when you need a full product profile. If you only need competing seller prices, use get_product_offers instead (cheaper context). If you only need the sales rank, use get_bestseller_rank. If you only need shipping dimensions or the FBA fee category, use get_package_dimensions. Provide EITHER the identifier field OR url — never both. Costs 1 credit; set a_plus_content to true only when the user explicitly asks about enhanced brand content, as it costs 1 extra credit.
    ConnectorNo auth
  • Attach an image you produced locally to a shot as a continuity reference. A continuity reference is fed into this shot's next clip generation as a layout, prop, wardrobe and screen-direction guide — it is NOT used as the shot's opening frame or exact composition. Attaching one changes nothing until the clip is generated again. Send the image as base64 — keep it small (a 720x1280 JPEG is roughly 40-130KB of base64). PNG, JPEG and WebP only; the bytes are sniffed, so the filename extension alone will not get a non-image through. If the image is already an asset in this project, use attach_shot_continuity_reference instead and send no bytes.
    ConnectorNo auth
  • Percent-encode a string with encodeURIComponent so reserved characters survive transport inside a URL. Returns JSON { encoded }. It escapes the structural characters too — : / ? # & = all become %XX — so it is for a single query-string value or path segment, NOT for a whole address you still want to be clickable. This is escaping for URLs only. It is the wrong transform for making binary-unsafe content fit in JSON, an HTTP header or a data URI, which call for Base64 rather than percent-encoding. Reverse it with decode_url.
    ConnectorNo auth
  • Percent-encode a string with encodeURIComponent so reserved characters survive transport inside a URL. Returns JSON { encoded }. It escapes the structural characters too — : / ? # & = all become %XX — so it is for a single query-string value or path segment, NOT for a whole address you still want to be clickable. This is escaping for URLs only. It is the wrong transform for making binary-unsafe content fit in JSON, an HTTP header or a data URI, which call for Base64 rather than percent-encoding. Reverse it with decode_url.
    ConnectorNo auth
  • Write WHOLE files DIRECTLY — YOUR model generates the code, Kleap stores, builds and deploys it as-is. To change something in a file that ALREADY EXISTS, use edit_files instead (read_files → edit_files): it replaces just the lines you name, while write_files makes you retype the entire file and silently drops whatever you leave out — on a 30KB shared layout that is how headers and footers get wiped. No Kleap-AI step, so what ships is byte-for-byte what you wrote — the right choice when a phrase, a URL or a schema must be exact. Publishing still audits the result (see publish_app). Best for scaffolding exact pages/components — e.g. programmatic-SEO routes. Astro paths (src/pages/*.astro, src/data/*.json, src/components/*.astro, public/*). Overwrites by path. NPM PACKAGES: do not write package.json (the build replaces it) — the build installs whatever your code IMPORTS, so `import { jsPDF } from "jspdf";` is all it takes. Supported on import: @tiptap/*, jspdf, pdf-lib, html2canvas, papaparse, file-saver, jszip, @ffmpeg/*, howler, wavesurfer.js, browser-image-compression, react-dropzone, recharts, chart.js, d3, @tanstack/*, react-hook-form, three, @react-three/*, leaflet, maplibre-gl, gsap, framer-motion, zustand, date-fns, react-markdown, axios, socket.io-client, radix-ui/*, next-themes, lucide-react, @tabler/*, openai, @ai-sdk/*; anything else is refused at build with a message naming it. A client-side router is never the answer — a route is a FILE (src/pages/about.astro → /about). IMAGES AND BINARIES: set encoding:"base64" on the file and send the bytes — that is how you put a logo, a photo, an OG image, a favicon or a font on the site (png/jpg/webp/svg/ico/mp4/woff2/pdf, 512KB max each decoded). Without it you can only write text, and a site with no images looks unfinished. To ADD an image from a text prompt WITHOUT sending any bytes (a real photo's base64 is too big to emit reliably), use generate_image — Kleap generates it and stores it for you. To REMOVE a page or asset, use delete_files — overwriting it with empty content leaves a URL that answers 200 with nothing, which is worse than a 404. DATA & ACCOUNTS: write_files only STORES files — it cannot provision the Kleap Database, so DB or auth code pushed here has no backend and silently does nothing. Stand the feature up with modify_app first, then edit those pages here. After writing, call publish_app to build & go live.
    Connector
    Destructive
    OAuth