lookunique

One-of-a-kind t-shirts from your words, a photo or a picture you made. Ordered on lookunique.eu.

Should I use this

Quality & Safety

A
Description quality
95%
Schema completeness
77%
Naming quality
90%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,371Tokens (tool definitions)
~839 BTypical response size
Moderate attention impact (1.07% 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": {
    "lookunique": {
      "url": "https://www.lookunique.eu/mcp"
    }
  }
}

Remote endpoints

https://www.lookunique.eu/mcpstreamable-http

What it can do

Tool inventory

Tools (8)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢shop_info

The shirts lookunique prints: the cuts with their prices, colours, sizes, print sizes, front or back printing, the countries it ships to, how long printing takes, and the returns rule.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪draw_shirt(prompt)

Draws a one-of-a-kind t-shirt design from a short idea in the person’s own words, in any language (3–140 characters), such as “a fox reading the morning paper”. For a shirt idea, a gift or merch. Makes four pictures in the shop’s dot-drawing style; returns the first as soon as it is ready, with the drawing’s id.

Input Schema

{
  "type": "object",
  "properties": {
    "prompt": {
      "type": "string",
      "minLength": 3,
      "maxLength": 140,
      "description": "What the drawing should show, in the person’s own words."
    }
  },
  "required": [
    "prompt"
  ],
  "additionalProperties": false
}
⚪draw_from_photo(photo, photo_url, made_by_assistant)

Turns an image into a t-shirt design in the shop’s dot-drawing style: a person’s photo, or a picture an AI assistant made in this conversation (“put this on a t-shirt”). Takes the image as a file (`photo`) or as an https link (`photo_url`). Makes three pictures; returns the first as soon as it is ready, with the drawing’s id.

Input Schema

{
  "type": "object",
  "properties": {
    "photo": {
      "type": "object",
      "description": "The image, as a file from this conversation.",
      "properties": {
        "download_url": {
          "type": "string"
        },
        "file_id": {
          "type": "string"
        },
        "mime_type": {
          "type": "string"
        },
        "file_name": {
          "type": "string"
        }
      },
      "required": [
        "download_url",
        "file_id"
      ]
    },
    "photo_url": {
      "type": "string",
      "description": "The image, as an https link."
    },
    "made_by_assistant": {
      "type": "boolean",
      "description": "true when the image was made by an AI assistant rather than being a photo."
    }
  },
  "additionalProperties": false
}
🟢photo_upload_link

A one-time lookunique.eu page, valid for 30 minutes, where the person can drop a photo or saved picture from their device. The drawing starts on that page and belongs to this conversation.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪print_words(lines)

Sets the person’s own words as lettering on a t-shirt — a name, a phrase, a team, a date — in one to three lines of up to 48 characters. Returns four layouts at once.

Input Schema

{
  "type": "object",
  "properties": {
    "lines": {
      "type": "array",
      "minItems": 1,
      "maxItems": 3,
      "items": {
        "type": "string",
        "maxLength": 48
      },
      "description": "One to three lines of text, as they should read."
    }
  },
  "required": [
    "lines"
  ],
  "additionalProperties": false
}
🟢check_drawing(drawing_id)

Where a drawing stands: its pictures so far, each with a design_id, what is still being drawn, and anything the shop’s own check found missing. Without drawing_id it reads this conversation’s newest drawing.

Input Schema

{
  "type": "object",
  "properties": {
    "drawing_id": {
      "type": "string",
      "pattern": "^custom-[0-9a-f]{8}$",
      "description": "A drawing id, such as custom-1a2b3c4d."
    }
  },
  "additionalProperties": false
}
🟢show_shirt(design_id, garment, colour, print_size, side)

A picture of one design on a real shirt, in the chosen cut (garment), colour, print size (s/m/l) and side, with its price and the colours this design can be printed on.

Input Schema

{
  "type": "object",
  "properties": {
    "design_id": {
      "type": "string",
      "description": "A design_id from a drawing."
    },
    "garment": {
      "type": "string",
      "description": "gildan (unisex, default), womens, bella, kids or premium."
    },
    "colour": {
      "type": "string",
      "description": "A colour name or id, e.g. \"Black\" or \"sand\". Default: the lightest it suits."
    },
    "print_size": {
      "type": "string",
      "enum": [
        "s",
        "m",
        "l"
      ]
    },
    "side": {
      "type": "string",
      "enum": [
        "front",
        "back"
      ]
    }
  },
  "required": [
    "design_id"
  ],
  "additionalProperties": false
}
🟢order_link(design_id, garment, colour, size, print_size, ...)

The link that opens exactly this shirt on lookunique.eu, ready to order, with its price, after checking that the colour suits the design and the size is in stock. The address, the payment and the terms are on lookunique.eu; nothing is bought here.

Input Schema

{
  "type": "object",
  "properties": {
    "design_id": {
      "type": "string"
    },
    "garment": {
      "type": "string",
      "description": "gildan (default), womens, bella, kids or premium."
    },
    "colour": {
      "type": "string"
    },
    "size": {
      "type": "string",
      "description": "The shirt size, such as M."
    },
    "print_size": {
      "type": "string",
      "enum": [
        "s",
        "m",
        "l"
      ]
    },
    "side": {
      "type": "string",
      "enum": [
        "front",
        "back"
      ]
    },
    "quantity": {
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    }
  },
  "required": [
    "design_id",
    "size"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded8 tools