Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

John's Essentials

REMOTE · API.JOHNSESSENTIALS.COM · SCANNED SEP 20

144 deterministic file tools: PDF, image, media, convert, analyze. Connect in one click (OAuth).

+3 this week 87 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security97
Transport & Reachability100
Schema Quality & AI Usability79
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 26447 tokens (~175/item across 151 items; 148 tools + 3 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management46
  • Stability check failed: schema churn in the 14 days we've observed: 0 tool removals, 1 breaking changes, 0 auth/transport breaks, 4 additions. See how to fix → Fail
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • All 6 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
  • An AI judge read all 150 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Install

How do I install the John's Essentials MCP server?

John's Essentials is a hosted endpoint at https://api.johnsessentials.com/mcp/messages, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · api.johnsessentials.com

# add to Claude Code
claude mcp add --transport http com-johnsessentials-johns-essentials 'https://api.johnsessentials.com/mcp/messages'
// .cursor/mcp.json
{
  "mcpServers": {
    "com-johnsessentials-johns-essentials": {
      "url": "https://api.johnsessentials.com/mcp/messages"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-johnsessentials-johns-essentials": {
      "type": "http",
      "url": "https://api.johnsessentials.com/mcp/messages"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.com-johnsessentials-johns-essentials]
url = "https://api.johnsessentials.com/mcp/messages"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-johnsessentials-johns-essentials": {
      "type": "remote",
      "url": "https://api.johnsessentials.com/mcp/messages",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-johnsessentials-johns-essentials --url 'https://api.johnsessentials.com/mcp/messages' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-johnsessentials-johns-essentials:
    url: "https://api.johnsessentials.com/mcp/messages"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-johnsessentials-johns-essentials": {
      "Transport": "http",
      "Url": "https://api.johnsessentials.com/mcp/messages"
    }
  }
}
# add to Vellum
assistant mcp add com-johnsessentials-johns-essentials -t streamable-http -u 'https://api.johnsessentials.com/mcp/messages'
// mcp.json
{
  "mcpServers": {
    "com-johnsessentials-johns-essentials": {
      "type": "http",
      "url": "https://api.johnsessentials.com/mcp/messages"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 18 Sept 26 +1
    • Tool “email_file” rewrote its description, which is the text the model reads security
  • 17 Sept 26 0
    • The server rewrote its instructions, which are the text every model session reads security
    • New tool “drive_upload” functional
  • 16 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 30 to 33.

  • 14 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 26.

  • 12 Sept 26 0

    We did not load change detail this far back for this component, so this day may have recorded more than is shown.

    • Stability: 0.17 → fail security
    • A breaking change shipped without a version bump: still 1.2.0 security
    • Tool “pdf_extract_pages” rewrote its description, which is the text the model reads security
    • “convert_geo” changed the type of “strict”: string → boolean functional
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkColor” cosmetic
    • “photo_watermark” added an optional parameter “stroke_width” cosmetic
    • “pdf_images_to_pdf” added an optional parameter “autoOrient” cosmetic
    • “pdf_excel_to_pdf” added an optional parameter “watermarkScale” cosmetic
    • “pdf_reverse” added an optional parameter “outputName” cosmetic
    • “photo_to_text” added an optional parameter “binarize_threshold” cosmetic
    • “pdf_excel_to_pdf” added an optional parameter “watermarkRotation” cosmetic
    • “pdf_grayscale” added an optional parameter “pages” cosmetic
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkFont” cosmetic
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkOpacity” cosmetic
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkRotation” cosmetic
    • “convert_file” added an optional parameter “gif_width” cosmetic
    • “generate_barcode” added an optional parameter “showText” cosmetic
    • “photo_bg_remover” added an optional parameter “alpha_matting_erode_size” cosmetic
    • “photo_bg_remover” added an optional parameter “alpha_matting” cosmetic
    • “pdf_grayscale” added an optional parameter “outputName” cosmetic
    • “pdf_grayscale” added an optional parameter “strict” cosmetic
    • “pdf_reverse” added an optional parameter “reverseTarget” cosmetic
    • “photo_bg_remover” added an optional parameter “alpha_matting_background_threshold” cosmetic
    • “pdf_remove_watermark” added an optional parameter “passthrough” cosmetic
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkScale” cosmetic
    • “pdf_excel_to_pdf” added an optional parameter “watermarkOpacity” cosmetic
    • “convert_sqlite” added an optional parameter “strict” cosmetic
    • “photo_watermark” added an optional parameter “color” cosmetic
    • “photo_bg_remover” added an optional parameter “alpha_matting_foreground_threshold” cosmetic
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkPosition” cosmetic
    • “generate_favicon” added an optional parameter “background” cosmetic
    • “convert_video” added an optional parameter “crf” cosmetic
    • “pdf_images_to_pdf” added an optional parameter “fitMode” cosmetic
    • “convert_file” added an optional parameter “gif_fps” cosmetic
    • “pdf_excel_to_pdf_batch” added an optional parameter “watermarkFontSize” cosmetic
    • “photo_to_text” added an optional parameter “binarize” cosmetic
    • “pdf_grayscale” added an optional parameter “mode” cosmetic
    • “pdf_excel_to_pdf” added an optional parameter “watermarkPosition” cosmetic
    • “pdf_crop” reworded the description of “bottom” cosmetic
    • “pdf_protect” reworded the description of “encryption” cosmetic
    • “pdf_flatten” reworded the description of “signatureMode” cosmetic
    • “pdf_excel_to_pdf_batch” reworded the description of “scale” cosmetic
    • “pdf_to_images” reworded the description of “backgroundColor” cosmetic
    • “analyze_color_palette” reworded the description of “colors” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “gridlines” cosmetic
    • “analyze_ssl” reworded the description of “hostname” cosmetic
    • “pdf_to_excel_batch” reworded the description of “ocrLang” cosmetic
    • “web_extract_table” reworded the description of “user_agent” cosmetic
    • “analyze_hash” reworded the description of “file” cosmetic
    • “pdf_to_images_batch” reworded the description of “watermarkPosition” cosmetic
    • “web_extract_table” reworded the description of “acknowledge_robots” cosmetic
    • “web_scrape_page” reworded the description of “selectors” cosmetic
    • “pdf_merge” reworded the description of “pageRanges” cosmetic
    • “convert_file” reworded the description of “from” cosmetic
    • “generate_password” reworded the description of “uppercase” cosmetic
    • “pdf_to_images” reworded the description of “jpegQuality” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “permPassword” cosmetic
    • “generate_ascii_art” reworded the description of “text” cosmetic
    • “photo_collage” reworded the description of “template” cosmetic
    • “media_extract_frames” reworded the description of “max” cosmetic
    • “pdf_header_footer” reworded the description of “headerAlign” cosmetic
    • “photo_face_blur” reworded the description of “manual_faces” cosmetic
    • “pdf_page_numbers” reworded the description of “format” cosmetic
    • “pdf_watermark” reworded the description of “text” cosmetic
    • “pdf_header_footer” reworded the description of “fontSize” cosmetic
    • “web_extract_table” reworded the description of “timeout_ms” cosmetic
    • “pdf_header_footer” reworded the description of “pageNumberPosition” cosmetic
    • “photo_resize” reworded the description of “percentage” cosmetic
    • “generate_ascii_art” reworded the description of “mode” cosmetic
    • “pdf_excel_to_pdf_batch” reworded the description of “gridlines” cosmetic
    • “pdf_header_footer” reworded the description of “margin” cosmetic
    • “web_scrape_page” reworded the description of “mode” cosmetic
    • “pdf_to_images_batch” reworded the description of “tiffCompression” cosmetic
    • “generate_invoice” reworded the description of “discountPercent” cosmetic
    • “pdf_to_images_batch” reworded the description of “webpQuality” cosmetic
    • “pdf_to_images_batch” reworded the description of “watermarkScale” cosmetic
    • “convert_video” reworded the description of “preset_name” cosmetic
    • “web_extract_table” reworded the description of “table_index” cosmetic
    • “pdf_to_images” reworded the description of “preset” cosmetic
    • “pdf_to_images_batch” reworded the description of “sheetBackground” cosmetic
    • “convert_parquet” reworded the description of “sheet” cosmetic
    • “pdf_flatten_batch” reworded the description of “signatureMode” cosmetic
    • “analyze_word_frequency” reworded the description of “topN” cosmetic
    • “pdf_to_images” reworded the description of “avifQuality” cosmetic
    • “photo_to_text” reworded the description of “languages” cosmetic
    • “media_add_watermark” reworded the description of “opacity” cosmetic
    • “pdf_excel_to_pdf_batch” reworded the description of “sheets” cosmetic
    • “pdf_to_images_batch” reworded the description of “maxWidth” cosmetic
    • “pdf_header_footer” reworded the description of “footerAlign” cosmetic
    • “generate_password” reworded the description of “lowercase” cosmetic
    • “convert_archive” reworded the description of “to” cosmetic
    • “convert_video” reworded the description of “to” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “sheets” cosmetic
    • “convert_unit_convert” reworded the description of “value” cosmetic
    • “pdf_to_images_batch” reworded the description of “avifQuality” cosmetic
    • “generate_ascii_art” reworded the description of “font” cosmetic
    • “analyze_grammar_check” reworded the description of “include_llm” cosmetic
    • “analyze_word_frequency” reworded the description of “exclude” cosmetic
    • “pdf_excel_to_pdf_batch” reworded the description of “pdfa” cosmetic
    • “generate_password” reworded the description of “length” cosmetic
    • “convert_chain” reworded the description of “from” cosmetic
    • “pdf_to_excel” reworded the description of “ocrLang” cosmetic
    • “pdf_flatten” reworded the description of “watermarkPosition” cosmetic
    • “convert_document” reworded the description of “from” cosmetic
    • “convert_sqlite” reworded the description of “to” cosmetic
    • “pdf_to_excel_inspect” reworded the description of “ocrLang” cosmetic
    • “pdf_crop” reworded the description of “left” cosmetic
    • “convert_text” reworded the description of “from” cosmetic
    • “pdf_flatten_batch” reworded the description of “compressPreset” cosmetic
    • “pdf_flatten_batch” reworded the description of “ocrLang” cosmetic
    • “analyze_hash” reworded the description of “text” cosmetic
    • “analyze_file_diff” reworded the description of “text_b” cosmetic
    • “generate_ascii_art” reworded the description of “width” cosmetic
    • “pdf_to_images” reworded the description of “watermarkScale” cosmetic
    • “photo_face_blur” reworded the description of “block_size” cosmetic
    • “pdf_to_images” reworded the description of “sheetColumns” cosmetic
    • “octopus_list” reworded the description of “folder” cosmetic
    • “data_to_file” reworded the description of “name” cosmetic
    • “convert_data” reworded the description of “to” cosmetic
    • “pdf_to_images” reworded the description of “maxWidth” cosmetic
    • “pdf_to_images” reworded the description of “transparent” cosmetic
    • “pdf_page_numbers” reworded the description of “position” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “showHeaders” cosmetic
    • “analyze_word_count” reworded the description of “text” cosmetic
    • “media_extract_audio” reworded the description of “format” cosmetic
    • “analyze_link_extractor” reworded the description of “file” cosmetic
    • “pdf_to_excel” reworded the description of “sheetMode” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “pdfa” cosmetic
    • “pdf_to_images” reworded the description of “watermarkTile” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “quality” cosmetic
    • “web_scrape_page” reworded the description of “user_agent” cosmetic
    • “email_file” reworded the description of “subject” cosmetic
    • “pdf_to_images” reworded the description of “tiffCompression” cosmetic
    • “generate_barcode” reworded the description of “type” cosmetic
    • “generate_qr_code” reworded the description of “size” cosmetic
    • “photo_resize” reworded the description of “bg_color” cosmetic
    • “web_fetch” reworded the description of “acknowledge_robots” cosmetic
    • “pdf_to_images” reworded the description of “webpQuality” cosmetic
    • “pdf_excel_to_pdf” reworded the description of “scale” cosmetic
    • “pdf_to_excel_inspect” reworded the description of “ocrFirst” cosmetic
    • “pdf_rotate” reworded the description of “rotation” cosmetic
    • “pdf_flatten” reworded the description of “compressPreset” cosmetic
    • “generate_barcode” reworded the description of “height” cosmetic
    • “pdf_rotate” reworded the description of “pages” cosmetic
    • “photo_collage” reworded the description of “output_width” cosmetic
    • “analyze_readability” reworded the description of “text” cosmetic
    • “pdf_ocr” reworded the description of “lang” cosmetic
    • “pdf_to_images” reworded the description of “sheetBackground” cosmetic
    • “data_to_file” reworded the description of “format” cosmetic
    • “pdf_compress” reworded the description of “metadataOnly” cosmetic
    • “describe_image” reworded the description of “question” cosmetic
    • “pdf_compress” reworded the description of “targetSize” cosmetic
    • “pdf_images_to_pdf” reworded the description of “files” cosmetic
    • “pdf_crop” reworded the description of “top” cosmetic
    • “pdf_flatten_batch” reworded the description of “exportData” cosmetic
    • “pdf_split” reworded the description of “chunkSize” cosmetic
    • “photo_collage_animated” reworded the description of “output_width” cosmetic
    • “pdf_to_images_batch” reworded the description of “watermarkTile” cosmetic
    • “chatwithyourpdf” reworded the description of “max_chars” cosmetic
    • “photo_compress_to_size” reworded the description of “output_format” cosmetic
    • “photo_resize” reworded the description of “width” cosmetic
    • “pdf_watermark” reworded the description of “color” cosmetic
    • “generate_password” reworded the description of “symbols” cosmetic
    • “pdf_to_images” reworded the description of “sheetGap” cosmetic
    • “convert_video” reworded the description of “resolution” cosmetic
    • “pdf_to_images_batch” reworded the description of “sheetGap” cosmetic
    • “convert_file” reworded the description of “to” cosmetic
    • “pdf_page_numbers” reworded the description of “start” cosmetic
    • “web_scrape_page” reworded the description of “timeout_ms” cosmetic
    • “pdf_watermark” reworded the description of “fontSize” cosmetic
    • “pdf_header_footer” reworded the description of “fontFamily” cosmetic
    • “photo_face_blur” reworded the description of “selected_faces” cosmetic
    • “convert_text” reworded the description of “to” cosmetic
    • “web_scrape_page” reworded the description of “acknowledge_robots” cosmetic
    • “web_fetch” reworded the description of “timeout_ms” cosmetic
    • “convert_chain” reworded the description of “steps” cosmetic
    • “pdf_protect” reworded the description of “password” cosmetic
    • “generate_ascii_art” reworded the description of “file” cosmetic
    • “convert_batch” reworded the description of “filenames” cosmetic
    • “pdf_crop” reworded the description of “right” cosmetic
    • “pdf_split” reworded the description of “pages” cosmetic
    • “convert_geo” reworded the description of “strict” cosmetic
    • “pdf_to_images_batch” reworded the description of “transparent” cosmetic
    • “pdf_watermark” reworded the description of “fontFamily” cosmetic
    • “pdf_to_images” reworded the description of “watermarkPosition” cosmetic
    • “analyze_link_extractor” reworded the description of “text” cosmetic
    • “analyze_file_diff” reworded the description of “text_a” cosmetic
    • “generate_hash” reworded the description of “text” cosmetic
    • “pdf_flatten_batch” dropped the optional parameter “watermarkTile” cosmetic
    • “pdf_flatten” dropped the optional parameter “watermarkTile” cosmetic
    • “analyze_link_extractor” made “file” optional cosmetic
    • “generate_hash” made “text” optional cosmetic
    • “analyze_hash” made “file” optional cosmetic
    • “analyze_readability” made “text” optional cosmetic
  • 11 Sept 26 +1

    We did not load change detail this far back for this component, so this day may have recorded more than is shown.

  • 9 Sept 26 +1

    We did not load change detail this far back for this component, so this day may have recorded more than is shown.

  • 7 Sept 26 +1

    We did not load change detail this far back for this component, so this day may have recorded more than is shown.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 20 Sept 2026 · Probed https://api.johnsessentials.com/mcp/messages

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=johnsessentials.com CN=YE2,O=Let's Encrypt,C=US 5 Aug 2026 3 Nov 2026 ECDSA 256 ECDSA-SHA384 515533c64147486b08640e2b39ce24251a1
SANs: *.johnsessentials.com, johnsessentials.com
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of api.johnsessentials.com. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
johnsessentials.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Enforced and verified

The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.

Result Enforced and verified
Enforced On connection
HTTP status 401

WWW-Authenticate challenge Bearer resource_metadata="https://api.johnsessentials.com/.well-known/oauth-protected-resource", scope="read write"

Bearer resource_metadata="https://api.johnsessentials.com/.well-known/oauth-protected-resource", scope="read write"
Header Value
strict-transport-security max-age=63072000; includeSubDomains; preload
x-content-type-options nosniff
x-frame-options DENY
referrer-policy strict-origin-when-cross-origin
www-authenticate Bearer resource_metadata="https://api.johnsessentials.com/.well-known/oauth-protected-resource", scope="read write"

Protected resource metadata

Document https://api.johnsessentials.com/.well-known/oauth-protected-resource
Retrieved Yes
Resource https://api.johnsessentials.com/mcp/messages
Authorisation server https://api.johnsessentials.com

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.johnsessentials.com/mcp/messages Verified 200
http (plaintext) http://api.johnsessentials.com/mcp/messages HTTPS enforced 301 https://api.johnsessentials.com/mcp/messages
MCP tools · 148 exposed · ~26,189 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
analyze_audio ~58

Audio Analyzer — Analyse an audio file: duration, sample rate, bit rate, channels, codec, waveform data. [category: analyze]

NameTypeReqDescription
filestringyesInput file (MP3, WAV, AAC, FLAC, OGG)

No output schema declared.

No examples provided.

analyze_color_palette ~61

Color Palette Extractor — Extract the dominant colour palette from an image. [category: analyze]

NameTypeReqDescription
colorsintegerHow many dominant colours to pull out of the image.
filestringyesImage (JPG, PNG, WebP)

No output schema declared.

No examples provided.

analyze_csv ~90

CSV Analyzer — Analyse a CSV file: row/column count, data types, null counts, min/max/mean per column. [category: analyze]

NameTypeReqDescription
filestringyesInput file (CSV)
strictbooleanFiles over 10,000 rows are analysed from the first 10,000 only. Switch on to get an error instead of statistics that cover part of the file.

No output schema declared.

No examples provided.

analyze_duplicate_detector ~60

Duplicate Detector — Identify duplicate or near-duplicate files in a batch upload using perceptual hashing. [category: analyze]

NameTypeReqDescription
filesarrayyes2-20 files to compare (any type). Files beyond the first 20 are silently ignored.

No output schema declared.

No examples provided.

analyze_encoding_detector ~112

Encoding Detector — Detect the character encoding of a text or HTML file. Use when accented letters, apostrophes or quotation marks arrive as garbled symbols: it identifies which character set the file was saved in (UTF-8, Windows-1252, ISO-8859-1, UTF-16 and so on). It REPORTS the encoding only — it does not convert or rewrite the file. [category: analyze]

NameTypeReqDescription
filestringyesInput file (TXT, HTML, CSV, XML)

No output schema declared.

No examples provided.

analyze_file ~48

File Analyzer — Analyse a file and return type, encoding, size, MIME type, magic bytes, and structure summary. [category: analyze]

NameTypeReqDescription
filestringyesInput file (any)

No output schema declared.

No examples provided.

analyze_file_diff ~168

File Diff — Show a line-by-line diff between two text files (file_a + file_b) or two pasted texts (text_a + text_b). Provide one complete pair. [category: analyze]

NameTypeReqDescription
file_astringFirst file — TXT, CSV, JSON, XML. Send file_a AND file_b together (file mode).
file_bstringSecond file.
strictbooleanOnly the first 2,000 lines of each side are compared. Switch on to get an error instead of a comparison that covers part of the files.
text_astringThe BEFORE version. Anything that appears only here is reported as removed.
text_bstringThe AFTER version. Anything that appears only here is reported as added.

No output schema declared.

No examples provided.

analyze_font_detector ~47

Font Detector — Detect fonts used in a PDF or DOCX document. Images are not supported. [category: analyze]

NameTypeReqDescription
filestringyesInput file (PDF, DOCX)

No output schema declared.

No examples provided.

analyze_grammar_check ~183

Grammar Checker — Hybrid LanguageTool + Grok grammar checker with rule citations, style-guide awareness (APA/MLA/Chicago/AP/IEEE), dialect enforcement (US/UK/CA/AU), and per-issue severity. [category: analyze]

NameTypeReqDescription
dialectstringEnglish dialect for spelling and grammar rules.
include_llmbooleanAdds a second pass that catches wording and context problems the rule checker cannot see. Turn off for rule-based results only, which is faster.
modestringKeep my voice leaves your phrasing alone; Strict also flags casual or loose wording.
stylestringStyle-guide conventions to enforce (e.g. Oxford comma for APA/MLA/IEEE/Chicago, dropped for AP).
textstringyesThe text to check (max 50,000 characters).

No output schema declared.

No examples provided.

analyze_grammar_check_batch ~76

Grammar Checker (Batch) — Run the hybrid grammar checker across up to 20 texts in one call; per-item style, dialect, and mode supported. [category: analyze]

NameTypeReqDescription
itemsarrayyesUp to 20 texts to check. Each item carries its own style / dialect / mode / include_llm.

No output schema declared.

No examples provided.

analyze_hash ~87

Hash Generator (File) — Compute MD5, SHA-1, SHA-256, and SHA-512 hashes of an uploaded file. [category: analyze]

NameTypeReqDescription
filestringThe file to hash. Any type, of any size we accept.
textstringHash typed text instead of a file. Ignored if a file is attached — the file wins.

No output schema declared.

No examples provided.

analyze_image_quality ~56

Image Quality Analyzer — Measure sharpness, noise level, compression artefacts, and BRISQUE quality score of an image. [category: analyze]

NameTypeReqDescription
filestringyesInput file (JPG, PNG, WebP)

No output schema declared.

No examples provided.

analyze_image_similarity ~76

Image Similarity — Compute a perceptual similarity score between two images (pHash distance). Takes two separately-named uploads: 'file_a' and 'file_b'. [category: analyze]

NameTypeReqDescription
file_astringyesFirst image — JPG, PNG
file_bstringyesSecond image — JPG, PNG

No output schema declared.

No examples provided.

analyze_link_extractor ~98

Link Extractor — Extract all hyperlinks from a PDF or HTML file, or from pasted text. Other file types are scanned as raw text. [category: analyze]

NameTypeReqDescription
filestringA PDF or HTML file to pull the links out of. Any other type is read as plain text.
textstringPaste text or HTML to pull links out of. Ignored if a file is attached — the file wins.

No output schema declared.

No examples provided.

analyze_metadata ~48

Metadata Viewer — Extract and display all metadata from a file (EXIF, PDF info, document properties, audio tags). [category: analyze]

NameTypeReqDescription
filestringyesInput file (any)

No output schema declared.

No examples provided.

analyze_pdf_inspector ~49

PDF Inspector — Deep inspection of a PDF: page count, fonts used, annotations, form fields, embedded files. [category: analyze]

NameTypeReqDescription
filestringyesInput file (PDF)

No output schema declared.

No examples provided.

analyze_readability ~92

Readability Scorer — Calculate Flesch Reading Ease and Flesch-Kincaid Grade Level for a text. [category: analyze]

NameTypeReqDescription
filestringAlternative: upload a .txt, .pdf, or .docx document (max 25MB).
textstringPaste the text to score — about five words minimum. Leave blank if you are uploading a document instead.

No output schema declared.

No examples provided.

analyze_ssl ~77

SSL Checker — Check an SSL certificate for a hostname: expiry, issuer, validity, cipher suite. [category: analyze]

NameTypeReqDescription
hostnamestringyesThe site to check, e.g. example.com — just the address, with no https:// in front and no page path. A port number is ignored; 443 is always used.

No output schema declared.

No examples provided.

analyze_video ~56

Video Inspector — Inspect a video: duration, resolution, frame rate, codec, audio tracks, bitrate. [category: analyze]

NameTypeReqDescription
filestringyesInput file (MP4, MOV, AVI, MKV, WebM)

No output schema declared.

No examples provided.

analyze_word_count ~92

Word Counter — Count words, characters, sentences, paragraphs, and reading time in a text or uploaded document (.txt/.pdf/.docx). [category: analyze]

NameTypeReqDescription
filestringAlternative: upload a .txt, .pdf, or .docx document (max 25MB).
textstringPaste the text to count. Leave blank if you are uploading a document instead.

No output schema declared.

No examples provided.

analyze_word_frequency ~110

Word Frequency Analyzer — Analyse word frequency distribution in a text or document file. [category: analyze]

NameTypeReqDescription
excludestringComma-separated, e.g. the, and, of. Capitals and spacing do not matter. Words under two letters are always ignored.
filestringText or document file
textstringDirect text input. Provide either file or text.
topNintegerShow this many of the most common words, most frequent first.

No output schema declared.

No examples provided.

chatwithyourpdf ~140

Chat With Your PDF — Read the text of the user's document — PDFs first and foremost, plus TXT/CSV/Markdown/JSON — so you can chat about it: answer questions, summarize it, or use facts from it in later steps. Business plan only. Returns up to max_chars characters. For Word files: convert with word_to_pdf first, then chat with the PDF. [category: content] [requires the business plan]

NameTypeReqDescription
filestringyesThe document to read
max_charsintegerHow much of the document to read, in characters. Anything past this is left out, and the step says so.

No output schema declared.

No examples provided.

convert_archive ~155

Archive Converter — Convert between archive formats. Input: ZIP, RAR, 7Z, GZ/TAR.GZ, TAR.BZ2, TAR.XZ, TAR, CAB, ISO — recognized by filename extension or file signature, so misnamed uploads work. Output: ZIP, TAR, TAR.GZ, TAR.BZ2, TAR.XZ, 7Z. [category: convert]

NameTypeReqDescription
filestringyesArchive to convert — ZIP, RAR, 7Z, GZ, TAR, TAR.BZ2, TAR.XZ, CAB, ISO (max 200MB)
tostringyesThe archive format you want back. ZIP opens on every computer without extra software.

No output schema declared.

No examples provided.

convert_batch ~209

Batch Converter — Convert many files in one request and download a ZIP of the results. Auto-target rules pick a sensible output format per file (docx→pdf, heic→jpg, mov→mp4, etc.) or specify a global target like 'pdf' or a per-extension override map. Free tier supports up to 5 files; Business tier up to 50. [category: convert]

NameTypeReqDescription
filenamesarrayNot used by this tool — the names come from the uploaded files themselves. Leave it empty.
filesarrayyes200 MB combined cap. Rows that can't convert are skipped, not fatal — check _manifest.txt in the ZIP for per-row status.
targetstringWhat to turn every file into. Leave it on 'auto' and we pick a sensible result for each one (Word becomes PDF, HEIC photos become JPG, MOV becomes MP4). Type a single format, like pdf, to force them…

No output schema declared.

No examples provided.

convert_chain ~235

Conversion Chain — Run a 1-5 step conversion pipeline in one job, e.g. docx → pdf → epub. Each step's engine is auto-picked from the conversion graph. Input format comes from the 'from' field when given, else magic-byte detection — ALWAYS pass 'from' for text-based inputs (csv, md, html, json): they have no magic bytes and detect as plain txt. Business tier only. [category: convert] [requires the business plan]

NameTypeReqDescription
filestringyesMax 100 MB — tighter than single-tool caps because chains amplify temp disk.
fromstringWhat the file is now. Usually read from the file itself — but text files (CSV, Markdown, HTML, JSON) all look alike inside, so say which one it is.
stepsstringyesThe formats to pass the file through, in order — 1 to 5 of them. Each hop is written as {"to":"pdf"}; we choose the right engine for it. A Word file to PDF to EPUB is [{"to":"pdf"},{"to":"epub"}].

No output schema declared.

No examples provided.

convert_contact ~162

Contact Converter — Convert contact/calendar/email formats: vCard↔CSV, vCard→XLSX (vcf to excel), ICS→JSON/CSV, MSG→EML, EML→PDF. [category: convert]

NameTypeReqDescription
filestringyesParsed as the declared 'from' — bytes are never sniffed. Size caps vary by pair: 10 MB vcf/csv/ics, 25 MB eml, 50 MB msg.
fromstringyesSource format.
tostringyesTarget format. Only these pairs are valid: vcf→csv, vcf→xlsx, csv→vcf, ics→json, ics→csv, msg→eml, eml→pdf.

No output schema declared.

No examples provided.

convert_data ~171

Data Converter — Convert a data file between formats (JSON, NDJSON/JSONL, CSV, TSV, XML, YAML, TOML, INI). Upload the data file and pick a target format; the result comes back as a downloadable file (so it chains in workflows). Inline text is also accepted via a JSON-body 'input' string instead of a file. [category: convert]

NameTypeReqDescription
filestringyesThe data file to convert (max 5MB).
fromstringSource format. Optional — inferred from the file extension when omitted. 'ndjson' (aka jsonl) is newline-delimited JSON; 'tsv' is tab-separated values.
tostringyesThe format you want back. It has to be different from what you put in.

No output schema declared.

No examples provided.

convert_document ~413

Document Converter — Office & document converter — DOCX/DOC/ODT/RTF/XLSX/XLS/ODS/CSV/PPTX/PPT/ODP/HTML/EPUB/TXT → PDF plus office round-trips (csv→xlsx, docx→odt, epub→pdf) via LibreOffice; MARKDOWN → pdf/docx/html/epub/txt via pandoc with real GFM semantics (headings, lists, tables, code fences); and DOCX/HTML/PDF → MARKDOWN (the LLM-ingestion direction — turn a document into clean GFM an agent can read; PDF via text-layer extraction); plus Jupyter notebooks (.ipynb) → pdf/html/docx/md via pandoc. Pass 'from' so the converter knows the source format. For images/audio/video use convert_file; for data-text transforms use convert_data. Capability envelope: a PDF source extracts to text/markdown only (to=md) — for editable output from a PDF use pdf_to_word / pdf_to_excel / pdf_to_text / pdf_to_images. Office conversions are same-category only (Word↔Word, Sheet↔Sheet, Slides↔Slides) plus any→pdf; cross-category conversions (e.g. Word→slides, Sheet→Word) are not supported. [category: convert]

NameTypeReqDescription
filestringyesMax 25 MB. Routed by filename extension first; the 'from' field is the fallback for synthetic/extensionless names.
fromstringyesWhat the file is now. We normally read this from the file name; set it when the file has no name or an odd one. Markdown and Jupyter notebooks always take their own route, so say so here for those tw…
tostringyesWhat you want back. PDF works from every source. Word stays Word, spreadsheets stay spreadsheets, slides stay slides — a Word file cannot become slides. A PDF source can only come back as Markdown.

No output schema declared.

No examples provided.

convert_ebook ~203

eBook Converter — Convert ebooks between formats with calibre: mobi, azw3, fb2, lit and pdf → EPUB, plus epub → mobi/azw3 for older devices. EPUB is the format modern Kindles accept for send-to-device, so →epub is the recommended direction. DRM-protected books cannot be converted. pdf→epub reflows fixed pages, so quality varies with layout complexity; epub→pdf is handled by convert_document (LibreOffice). [category: convert]

NameTypeReqDescription
filestringyesThe ebook itself. Bytes are sniffed and must match 'from' (mismatch = 400). DRM-protected books always fail.
fromstringyesSource ebook format — REQUIRED.
tostringyesThe format you want back. EPUB is what a modern Kindle accepts when you send a book to it, so it is the usual answer. Pick MOBI or AZW3 only for an older device.

No output schema declared.

No examples provided.

convert_file ~407

Universal File Converter — Convert a file between formats: image↔image (jpg/png/webp/bmp/tiff/gif/avif/ico, plus heic/svg/psd as inputs), audio↔audio (mp3/wav/ogg/opus/flac/aac/m4a/wma/aiff, plus alac=Apple Lossless delivered as .m4a), video↔video/GIF (Business gate on some edges) plus legacy flv/wmv/3gp/mpg/vob/ts/m2ts → mp4, extract audio from video (mp4/mov/mkv/webm/avi → mp3/wav/aac/m4a/ogg/flac/opus/aiff/alac), subtitles (srt↔vtt, and srt/vtt→txt), DOC/DOCX/TXT→PDF, image→PDF, comic archive CBZ→PDF. Office/document conversions (xlsx, pptx, csv→xlsx, epub, html) live in convert_document; archives in convert_archive; data formats in convert_data. [category: convert]

NameTypeReqDescription
filestringyesThe file to convert. We read its current format from the file itself, so you only need to say what you want back.
fromstringLeave blank and we read the format from the file itself. Only set it if the file has no name or an odd one.
gif_fpsintegerFrames per second. Higher is smoother and bigger. If the width and frame rate together are too heavy we keep the width and ease this down.
gif_widthintegerHow wide the GIF should be, in pixels. Height follows automatically. Very wide plus very smooth is capped - we keep the width you asked for and ease the frame rate down.
tostringyesThe format you want back. Apple Lossless (alac) is delivered as a .m4a file.

No output schema declared.

No examples provided.

convert_geo ~227

GPS & Map Converter — Convert between GPX, KML, KMZ and GeoJSON — the GPS-track and mapping formats used by Garmin, Strava, Google Earth and every GIS tool. Track segments, per-point timestamps, elevations and polygon holes all survive the trip. Anything that cannot survive (a polygon becoming a GPX track, an unlocated feature) is reported in the X-Conversion-Notes header rather than dropped quietly; pass strict=true to refuse instead. [category: convert]

NameTypeReqDescription
filestringyesA .gpx, .kml, .kmz or .geojson file.
fromstringOptional. Detected from content; declare it only when the upload has no meaningful filename.
strictbooleanStop the conversion rather than hand back a file that has lost something. Off by default: you get the result plus a note about anything that could not be carried over.
tostringyesMust differ from the detected source — gpx→gpx is a 400; format-version upgrades happen implicitly on read.

No output schema declared.

No examples provided.

convert_jpg_to_pdf ~47

JPG to PDF — Convert one or more JPG/PNG images to a PDF document. [category: convert]

NameTypeReqDescription
filesarrayyesInput files (JPG, PNG)

No output schema declared.

No examples provided.

convert_parquet ~216

Parquet Converter — Convert Apache Parquet to CSV, TSV, JSON, NDJSON or Excel — and back. Types are preserved in both directions: numbers stay numbers in JSON, blank cells become real nulls in Parquet, and identifier columns like '01924' stay text instead of losing their leading zero. Flat schemas only; nested or repeated columns are reported rather than silently flattened. [category: convert]

NameTypeReqDescription
filestringyesA .parquet file, or a .csv/.tsv/.json/.ndjson/.xlsx table to turn into Parquet.
fromstringOptional but recommended when uploading csv/tsv/json/ndjson: those are indistinguishable by content, so declare which one it is.
sheetstringWhich worksheet to read. Leave it blank for the first one.
tostringyes'jsonl' is accepted as an alias for ndjson. One side of the pair must be parquet — table→table pairs belong to convert_data.

No output schema declared.

No examples provided.

convert_sqlite ~222

SQLite Converter — Export a SQLite database (.db/.sqlite) to CSV, JSON or Excel. A database holds many tables, so the output adapts: CSV gives one file per table (zipped when there are several), JSON gives rows as objects (keyed by table when there are several), and Excel gives ONE workbook with one worksheet per table. Pass an optional 'table' to export just one. [category: convert]

NameTypeReqDescription
filestringyesSQLite database file.
strictbooleanStop rather than hand back a partial export. Off by default: a very large database comes back with whatever we could reach, and a note saying what was left out.
tablestringOptional: export only this table (must match a table in the database).
tostringyesWhat you want back. A database holds several tables, so the shape follows: CSV gives one file per table (zipped if there is more than one), Excel gives one workbook with a sheet per table, JSON gives…

No output schema declared.

No examples provided.

convert_text ~174

Text Converter — Convert text/data formats: Markdown↔HTML, CSV↔JSON, JSON↔XML/YAML, Base64 and URL encode/decode. Takes 'text' + 'from' + 'to' — there is no 'conversion_type' field. [category: convert]

NameTypeReqDescription
fromstringyesWhat the text is now — or the encoding job to run (Base64 / URL encode and decode ride in this field).
textstringyesThe text/data to convert. Field name is 'text' — not 'content'.
tostringyesWhat you want back. Must differ from the source. For a Base64 or URL encode/decode, leave this on the format you want the result read as — do NOT pick plain text, which currently returns the input un…

No output schema declared.

No examples provided.

convert_unit_convert ~154

Unit Converter — Convert between units of measurement: length, weight, temperature, volume, area, speed, time, and data sizes. [category: convert]

NameTypeReqDescription
categorystringyesWhat kind of measurement this is. Pick this first — it decides which units are available.
fromstringyesThe unit you have. It must belong to the kind of measurement chosen above. Data sizes are the computing kind (1 kilobyte = 1024 bytes).
tostringyesThe unit you want. It must belong to the same kind of measurement as the one you have.
valuenumberyesThe amount to convert. Negative numbers are fine (below-zero temperatures, drops in weight).

No output schema declared.

No examples provided.

convert_url_to_pdf ~102

Webpage to PDF — Convert a live web page (URL) to PDF. Fetches the page and every asset server-side through an SSRF-guarded fetcher, inlines them, and renders offline — pass a JSON-body 'url'. JavaScript is NOT executed (static rendering), so SPAs may render sparsely. [category: convert]

NameTypeReqDescription
urlstringyesThe http(s) URL of the web page to render to PDF.

No output schema declared.

No examples provided.

convert_video ~523

Video Converter — Convert a video so it PLAYS or IMPORTS where it currently will not: a camera, phone or camcorder recording that your editing software, media player, website or social platform refuses to accept, open or upload. Converts between mp4, mov, webm, mkv, avi, and animated GIF with codec/resolution/bitrate control and TikTok/Reels/Shorts/Twitter/WhatsApp presets. Also converts legacy formats (flv, wmv, 3gp, mpg, vob, ts, m2ts) to mp4. Free tier covers mp4/mov/webm at ≤720p; mkv, avi, gif, 1080p+ and AV1 require Business. [category: convert]

NameTypeReqDescription
bitrate_kbpsintegerAim for a file size instead of a quality level. Setting this overrides the quality slider. Leave it alone unless you have a size you must hit.
codecstringHow the picture is compressed. Leave it on Automatic unless you know you need otherwise — a compression method the chosen format cannot carry (H.265 in a WebM, say) will fail during conversion. H.265…
crfintegerPicture quality. Lower is better-looking and bigger; higher is smaller and rougher. 23 is the everyday setting for H.264. Each compression method reads this scale differently - left alone we pick the…
filestringyesMax 500 MB; duration ≤5 min on Free, 30 min on Business. Format is sniffed from bytes; the filename extension is the fallback when sniffing fails.
preset_namestringMake it ready for one place in particular. Picking one sets the format, size, compression and data rate for you and ignores your choices above. Business only.
resolutionstringHow big the picture should be. 'Source' keeps the original size. Height is set and the shape is kept. 1080p and 4K need Business.
tostringyesThe format you want back. MP4 plays almost everywhere. MKV, AVI and animated GIF need Business. A GIF is made at 480p unless you set the size below.

No output schema declared.

No examples provided.

convert_word_to_pdf ~50

Word to PDF — Convert a Word document (.docx, .doc) to PDF using LibreOffice. [category: convert]

NameTypeReqDescription
filestringyesInput file (DOCX, DOC)

No output schema declared.

No examples provided.

data_to_file ~247

Save as File — Write the result of an earlier step to a real, downloadable file: .txt, .csv, .json or .md. Use after any step that produces text or data rather than a file — Colour Palette Extractor, Password Generator, Photo to Text (OCR), EXIF Viewer, Scrape Page, Word Frequency, Describe Image, PDF to Text — so the result can be downloaded, emailed, zipped or converted. A list of values saved as CSV becomes a spreadsheet with a header row. [category: utility]

NameTypeReqDescription
formatstringWhat kind of file to write. csv turns a list of values into a spreadsheet — a header row and one row per value — and anything it cannot tabulate becomes a single column. json is pretty-printed, and d…
namestringFile name without the extension — the extension comes from the format above. Anything over 80 characters is shortened.
textstringyesThe result to save. Point this at the earlier step whose text or data you want in the file — the colour palette, the password, the extracted text.

No output schema declared.

No examples provided.

describe_image ~102

Describe Image — Look at an image with a vision model and answer a question about it — what it shows, whether it's blurry or usable, visible text, etc. Business plan only. [category: content] [requires the business plan]

NameTypeReqDescription
filestringyesThe image to look at
questionstringWhat to ask about the image. Left as it is, you get the subject, the notable details and any text visible in the picture.

No output schema declared.

No examples provided.

drive_upload ~202

Save to Google Drive — Save a finished file into the signed-in user's own Google Drive. Use as the last step of a workflow when the user asks for the result to be put in, saved to, or uploaded to their Drive. Needs their Google account to be connected on the Integrations page. Only ever writes: it cannot read, list or search anything already in their Drive. [category: utility] [requires the starter plan]

NameTypeReqDescription
filestringyesThe file to save — usually the previous step's output.
filenamestringOptional. The name the file gets in Drive, extension included. Leave blank to keep the name it already has.
folder_namestringOptional. We create this folder the first time and put later files in the same one. We cannot see folders you made yourself, so if you already have one with this name you will end up with two — leave…

No output schema declared.

No examples provided.

email_file ~163

Email My File — Email a finished file to the user themselves, with the file attached. It goes to the Google account they connected, so it appears in both their Sent folder and their inbox. The recipient is ALWAYS the current user — this tool cannot email anyone else and cannot send custom or user-authored content. Use ONLY when the user explicitly asks to have a result emailed to them. [category: utility]

NameTypeReqDescription
filestringyesThe file to email — a file_id, typically the previous step's output.
notestringOptional one-line note to put in the email body. The mail is sent from your own connected Google account, to you — files up to 5 MB.
subjectstringSubject line of the email.

No output schema declared.

No examples provided.

esign_place ~157

PDF E-Signature — Place signature, initial, date or text fields onto a PDF — draw or type a signature — and (Pro+) append a cryptographic ed25519 audit trail. Free tier: 3 signed documents per month. [category: sign]

NameTypeReqDescription
fieldsstringyesWhere each signature, initial, date or text box sits on the page. Build these on the PDF E-Signature page — it draws them on the document and gives you this value — then paste it here. Up to 100 plac…
filestringyesPDF to sign

No output schema declared.

No examples provided.

esign_prepare ~52

E-Sign: Prepare — Return page count and per-page point dimensions for a PDF so signature fields can be positioned by the editor. [category: sign]

NameTypeReqDescription
filestringyesInput file (PDF)

No output schema declared.

No examples provided.

files_unzip ~112

Open Archive — Open a .zip archive and hand the files inside it to the next step, as a list. Use when an earlier step produced a ZIP (PDF Thumbnails, PDF to Images, Split PDF, Extract Frames, the batch converters) and the next step works on the individual files. Converts nothing. Up to 200 files. [category: utility]

NameTypeReqDescription
filestringyesThe archive to open — normally the previous step's output, e.g. {{step_1.file_id}}.

No output schema declared.

No examples provided.

files_zip ~159

Zip Files — Bundle several files — uploads or the results of earlier steps — into ONE .zip archive, unchanged. Use when the user says zip / bundle / archive / put them all in one file, or wants several results delivered as one attachment. Converts nothing (for converting many files use convert_batch). 1-50 files. [category: utility]

NameTypeReqDescription
filesarrayyesThe files to bundle: uploaded file ids, {{step_N.files}} (everything a step that ran once per file made), or {{file_ids}} (every upload). 1-50 files.
namestringName for the archive, without .zip. Leave it blank and the archive is named johns-essentials- plus today's date.

No output schema declared.

No examples provided.

generate_ascii_art ~140

ASCII Art Generator — Convert text or an image to ASCII art. Mode 'text' (default) requires 'text'; mode 'image' requires 'file'. [category: generate]

NameTypeReqDescription
filestringThe picture to convert (max 10 MB).
fontstringLettering style.
modestringDraw your words as big letters, or turn a picture into characters. If you attach a picture and type nothing, picture mode is used automatically.
textstringThe words to draw. Longer than 100 characters is trimmed.
widthintegerHow many characters wide the picture is.

No output schema declared.

No examples provided.

generate_barcode ~198

Barcode Generator — Generate a barcode (Code128, EAN-13, DataMatrix, PDF417, etc.) as a PNG image. [category: generate]

NameTypeReqDescription
contentstringyesThe data to encode
heightintegerHow tall the bars are, in pixels. The width follows automatically.
showTextbooleanPrint the encoded digits underneath the bars, so a cashier can key them in if a scan fails.
typestringWhich barcode standard to make. Code 128 takes any text or number; EAN-13 needs 12-13 digits and EAN-8 needs 7-8; UPC-A needs 11-12; Code 39 takes capitals and digits; ITF-14 needs 13-14 digits; Data…

No output schema declared.

No examples provided.

generate_business_card ~267

Business Card Generator — Generate a printable business card (PDF or PNG) from name, job title, company, and contact details. [category: generate]

NameTypeReqDescription
companystringPrinted under the name; omitted entirely when empty. Latin-1 only — CJK/emoji glyphs render as '.'.
emailstringPrinted verbatim in the contact block — no validation, no mailto link; empty = line omitted.
formatstring'pdf' (default) or 'png' (300 DPI Ghostscript raster, 1050x600). Any other value silently returns the PDF.
fullNamestringyesFull name printed on the card. Field name is 'fullName' — not 'name'.
jobTitlestringJob title. Field name is 'jobTitle' — not 'title'.
phonestringPrinted verbatim in the contact block; empty = line omitted. No formatting applied.
primaryColorstringHex color WITHOUT the leading '#'.
secondaryColorstringHex color WITHOUT the leading '#'.
templatestringCard layout.
websitestringPrinted exactly as sent — strip 'https://' yourself if unwanted; empty = line omitted.

No output schema declared.

No examples provided.

Common questions

What is the John's Essentials MCP server?

John's Essentials is an MCP server listed in the public MCP registry as com.johnsessentials/johns-essentials. 144 deterministic file tools: PDF, image, media, convert, analyze. Connect in one click (OAuth). This page covers its hosted endpoint (https://api.johnsessentials.com/mcp/messages).

Is the John's Essentials MCP server safe to use?

John's Essentials scores 87 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the John's Essentials MCP server expose?

John's Essentials exposes 148 tools: pdf_compress, pdf_merge, pdf_split, pdf_rotate, pdf_protect, and 143 more. Their descriptions and schemas cost roughly 26,189 tokens of context every time the server is loaded.

Does the John's Essentials MCP server require authentication?

Yes. John's Essentials asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.

Is the John's Essentials MCP server still maintained?

John's Essentials is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.