PatchDesign.AI

Design custom embroidered, woven, chenille, printed and PVC patches, price them, and link to order.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
84%
Naming quality
80%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,331Tokens (tool definitions)
~1.4 KBTypical response size
Moderate attention impact (1.04% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "patch-designer": {
      "url": "https://patchdesign.ai/api/mcp"
    }
  }
}

Remote endpoints

https://patchdesign.ai/api/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢quote_patch(patchType, widthIn, heightIn, quantity)

Price a custom patch from the live PatchDesign.AI production price table: type, size and quantity in, the per-patch and total price in USD out, with the next quantity breaks and what the price already includes (artwork, a pre-production sample, worldwide shipping). Quantity 1 returns the single-patch (sample) prices. Use it when the user asks about a price or the minimum quantity.

Input Schema

{
  "type": "object",
  "properties": {
    "patchType": {
      "type": "string",
      "description": "Patch type: embroidered (default), woven, chenille, printed, pvc-2d or pvc-3d. Iron-on, velcro and sew-on are backings on an embroidered patch, so use embroidered for those.",
      "enum": [
        "embroidered",
        "woven",
        "chenille",
        "printed",
        "pvc-2d",
        "pvc-3d"
      ]
    },
    "widthIn": {
      "type": "number",
      "description": "Width in inches, 1 to 12.5. Default 3.",
      "minimum": 1,
      "maximum": 12.5
    },
    "heightIn": {
      "type": "number",
      "description": "Height in inches, 1 to 12.5. Default 3.",
      "minimum": 1,
      "maximum": 12.5
    },
    "quantity": {
      "type": "integer",
      "description": "How many patches. Default 100. Use 1 for a single patch.",
      "minimum": 1,
      "maximum": 100000
    }
  }
}
🟡design_patch(description, patchType, widthIn, heightIn, referenceImageUrl)

Generate a production-ready custom patch design from a description (and optionally a reference image URL). Takes about 15 to 30 seconds and returns the design as an image plus a design id for edits and an order link. Previews carry a light PatchDesign.AI watermark; the clean file comes with an order. Say what the patch shows and any text on it, spelled exactly. To change a design already made in this chat, use edit_patch with its id. A chat gets 10 free designs, then the user signs in with the link from sign_in_link. If the result says the service was busy, call it once more with the same input.

Input Schema

{
  "type": "object",
  "properties": {
    "description": {
      "type": "string",
      "description": "What the patch should show: subject, colors, mood, and any lettering spelled exactly as it should appear. 3 to 1500 characters.",
      "minLength": 1,
      "maxLength": 1500
    },
    "patchType": {
      "type": "string",
      "description": "Patch type: embroidered (default), woven, chenille, printed, pvc-2d or pvc-3d. Iron-on, velcro and sew-on are backings on an embroidered patch, so use embroidered for those.",
      "enum": [
        "embroidered",
        "woven",
        "chenille",
        "printed",
        "pvc-2d",
        "pvc-3d"
      ]
    },
    "widthIn": {
      "type": "number",
      "description": "Width in inches, 1 to 12.5. Default 3.",
      "minimum": 1,
      "maximum": 12.5
    },
    "heightIn": {
      "type": "number",
      "description": "Height in inches, 1 to 12.5. Default 3.",
      "minimum": 1,
      "maximum": 12.5
    },
    "referenceImageUrl": {
      "type": "string",
      "description": "Optional https URL of a logo, sketch or photo to base the patch on. With a reference, the description is guidance about how to adapt it."
    }
  },
  "required": [
    "description"
  ]
}
🟡edit_patch(designId, instruction)

Make a change to a design from this chat: pass its design id (d_...) and the change in plain words ("make the border gold", "change TROOP 42 to TROOP 24"). Use it for a change the user asks for later in the chat too, so the original artwork is kept. Returns a new design with its own id; the original stays. Counts as one design.

Input Schema

{
  "type": "object",
  "properties": {
    "designId": {
      "type": "string",
      "description": "The design id from the design_patch or edit_patch result for that design, e.g. d_1a2b3c4d5e6f7a8b, not its D- number. It works in any later turn of the chat."
    },
    "instruction": {
      "type": "string",
      "description": "The change, in plain words. 2 to 800 characters.",
      "minLength": 2,
      "maxLength": 800
    }
  },
  "required": [
    "designId",
    "instruction"
  ]
}
🟢order_link(designId, quantity)

The link where the user orders a design from this chat, with the type, size and quantity set, plus the price for that quantity. Nothing is ordered or charged by this call; the user reviews and pays on patchdesign.ai. Use it when the user wants to buy, get a quote by email, or adjust size and quantity on the site.

Input Schema

{
  "type": "object",
  "properties": {
    "designId": {
      "type": "string",
      "description": "The design id (d_...) from the result of that design, not its D- number."
    },
    "quantity": {
      "type": "integer",
      "description": "How many patches they want. Default: the minimum run for the type.",
      "minimum": 1,
      "maximum": 100000
    }
  },
  "required": [
    "designId"
  ]
}
⚪sign_in_link

A link that connects this chat to the user's PatchDesign.AI account (free), lifting the 10-design limit to the account allowance of 25 designs a day and 150 a month, and saving the designs to their account. The link expires in 15 minutes. Give it to the user, then continue once they say they have connected.

Input Schema

{
  "type": "object",
  "properties": {}
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools