Skip to content

PrintSanity

by chartsmartdev · remote · no sign-in to list tools · v1.0.1 · published by GitHub user chartsmartdev

Checks AI-made flyers, cards and posters will print right. Fixes proportions and broken QR codes.

Changes · 3

4 tools: 3 change things and 1 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http printsanity https://printsanity.com/mcp

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

4 tools

Changes things 3Claude Code: ask
  • check_print_fileCheck whether artwork will print correctly at the given size.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Check whether artwork will print correctly at the given size. Give the artwork as file_url (public https link) or file_base64. `size` is required for images. Returns the verdict, what is wrong, whether repair reaches a printable file, and the prompt to regenerate with when it cannot.

    Annotations the server declares

    • openWorldHint: true
    • readOnlyHint: true
    • title: Check a file will print
  • fix_print_fileRepair what can be repaired and return download links for the print-ready file.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    Description, as the server wrote it
    Repair what can be repaired and return download links for the print-ready file. Rebuilds QR codes so they scan, fixes proportions by adding paper rather than cropping, and returns a PDF the size of the paper (inside a border a home printer can reach, where the paper is one a home printer takes) plus a PNG and, where it differs, an edge-to-edge PDF for print shops. For small pieces such as business cards and invitations it also returns letter and A4 sheets with several copies and cut marks. Links last 30 minutes. Resolution is never faked: when that is the problem the result carries the prompt to regenerate with. `qr_url` is the link a QR code should carry when the one on the artwork was drawn by an image model and decodes to nothing.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: false
    • title: Fix a file for printing
  • plan_artworkWhat to ask an image model for, before generating artwork for this print size.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    What to ask an image model for, before generating artwork for this print size. Returns the pixel dimensions to generate at, the floor below which it will look soft, the proportions, the smallest QR code that scans from where this piece is read, and a line to paste into the image prompt.

    Annotations the server declares

    • openWorldHint: false
    • readOnlyHint: true
    • title: Plan artwork for a print size
Only reads 1Claude Code: allow
  • list_print_sizesThe named print sizes `size` accepts, with their dimensions.No findings

    Why it is in this group

    • The name "list_print_sizes" says "list": a word for reading.
    Description, as the server wrote it
    The named print sizes `size` accepts, with their dimensions.

    Annotations the server declares

    • openWorldHint: false
    • readOnlyHint: true
    • title: List print sizes

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http printsanity https://printsanity.com/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__printsanity__list_print_sizes"
    ],
    "ask": [
      "mcp__printsanity__plan_artwork",
      "mcp__printsanity__check_print_file",
      "mcp__printsanity__fix_print_file"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as printsanity. Review it before you use it.