Tattoo size minimums, body-area comparison, line-spacing check and a pre-booking checklist.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use when the user describes a specific tattoo idea and asks whether it will hold up at a given size and body placement. Compares the design with published minimum sizes for its kind of design and returns the placement's fade, sun, friction, stretch and curvature estimates, style notes, things to look at and questions for the artist. Lettering is sized by capital letter height (letter_height_mm); everything else by the longest side (size_cm). It does not generate designs, look at images, or give medical advice.
Kind of design: block_capitals (capital letters), script_lettering, eye, bold_symbol_or_short_word (silhouette, simple symbol), fine_botanical (flower or plant with veins/stamens), moderate_detail (two line weights, simple shading), realistic_face, realism_japanese_or_dense_floral.
Tattoo style, if the user has one in mind.
Longest side of the whole design in centimetres. Use for every design_type except block_capitals and script_lettering.
Body area, if the user has one in mind.
Height of a capital letter in millimetres. Use for block_capitals and script_lettering.
Use when the user describes a specific tattoo idea and asks whether it will hold up at a given size and body placement. Compares the design with published minimum sizes for its kind of design and returns the placement's fade, sun, friction, stretch and curvature estimates, style notes, things to look at and questions for the artist. Lettering is sized by capital letter height (letter_height_mm); everything else by the longest side (size_cm). It does not generate designs, look at images, or give medical advice.
| Argument | Type | Description |
|---|---|---|
| style | string | Tattoo style, if the user has one in mind. |
| size_cm | number | Longest side of the whole design in centimetres. Use for every design_type except block_capitals and script_lettering. |
| placement | string | Body area, if the user has one in mind. |
| design_type* | string | Kind of design: block_capitals (capital letters), script_lettering, eye, bold_symbol_or_short_word (silhouette, simple symbol), fine_botanical (flower or plant with veins/stamens), moderate_detail (two line weights, simple shading), realistic_face, realism_japanese_or_dense_floral. |
| letter_height_mm | number | Height of a capital letter in millimetres. Use for block_capitals and script_lettering. |
{
"type": "object",
"required": [
"design_type"
],
"properties": {
"style": {
"enum": [
"fine-line",
"watercolor",
"realism",
"blackwork",
"minimalist"
],
"type": "string",
"description": "Tattoo style, if the user has one in mind."
},
"size_cm": {
"type": "number",
"maximum": 500,
"description": "Longest side of the whole design in centimetres. Use for every design_type except block_capitals and script_lettering.",
"exclusiveMinimum": 0
},
"placement": {
"enum": [
"upper-arm",
"forearm",
"back",
"shoulder",
"leg",
"hand",
"neck",
"chest",
"ribs",
"wrist"
],
"type": "string",
"description": "Body area, if the user has one in mind."
},
"design_type": {
"enum": [
"block_capitals",
"script_lettering",
"eye",
"bold_symbol_or_short_word",
"fine_botanical",
"moderate_detail",
"realistic_face",
"realism_japanese_or_dense_floral"
],
"type": "string",
"description": "Kind of design: block_capitals (capital letters), script_lettering, eye, bold_symbol_or_short_word (silhouette, simple symbol), fine_botanical (flower or plant with veins/stamens), moderate_detail (two line weights, simple shading), realistic_face, realism_japanese_or_dense_floral."
},
"letter_height_mm": {
"type": "number",
"maximum": 500,
"description": "Height of a capital letter in millimetres. Use for block_capitals and script_lettering.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Use when the user gives a line width and the gap between two lines or letters in millimetres and asks whether the gap will stay open as the tattoo ages. Applies the published rule of thumb that a line widens by about 0.1 mm per decade: returns the line width and gap after the given number of years (default 20), whether the gap meets the guides' 'at least as wide as the line' rule, and what the guide's worked example would do to it. Illustrative arithmetic, not a measurement.
| Argument | Type | Description |
|---|---|---|
| years | number | Years to project. Defaults to 20. |
| gap_mm* | number | Width of the space between the two lines or letters, in millimetres. |
| line_width_mm* | number | Width of the line in millimetres, as drawn today (for example 0.3 fine line, 1.5 bold outline). |
{
"type": "object",
"required": [
"line_width_mm",
"gap_mm"
],
"properties": {
"years": {
"type": "number",
"maximum": 60,
"minimum": 1,
"description": "Years to project. Defaults to 20."
},
"gap_mm": {
"type": "number",
"maximum": 50,
"description": "Width of the space between the two lines or letters, in millimetres.",
"exclusiveMinimum": 0
},
"line_width_mm": {
"type": "number",
"maximum": 10,
"description": "Width of the line in millimetres, as drawn today (for example 0.3 fine line, 1.5 bold outline).",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}Use when the user asks how body areas compare for pain, fading, sun, friction, stretch or curvature, or which areas hold ink longest. Returns the ten common areas (or the ones requested), ordered by fade by default. Estimates are coarse 0-100 comparisons, not measurements.
| Argument | Type | Description |
|---|---|---|
| sort_by | string | Order, lowest first. Defaults to fade. |
| placements | array | Areas to compare. Omit for all ten. |
{
"type": "object",
"properties": {
"sort_by": {
"enum": [
"fade",
"pain",
"sun",
"friction"
],
"type": "string",
"description": "Order, lowest first. Defaults to fade."
},
"placements": {
"type": "array",
"items": {
"enum": [
"upper-arm",
"forearm",
"back",
"shoulder",
"leg",
"hand",
"neck",
"chest",
"ribs",
"wrist"
],
"type": "string"
},
"description": "Areas to compare. Omit for all ten."
}
},
"additionalProperties": false
}Use when the user asks how to decide whether they are ready to book a tattoo, what to ask an artist, or what red flags to watch for in a consultation. Returns a short ordered checklist, the one question to ask when an artist pushes back, how to judge healed work, and consultation red flags.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Use when the user asks how big or how small a kind of tattoo can be, or what fits at a given size. Returns the smallest and better size for eight kinds of design (letters by height, other designs by longest side), real-world size comparisons and the small/medium/large ranges. Optional size_cm marks which designs meet their minimum at that size.
| Argument | Type | Description |
|---|---|---|
| size_cm | number | Optional size in centimetres to look up what fits. |
{
"type": "object",
"properties": {
"size_cm": {
"type": "number",
"maximum": 500,
"description": "Optional size in centimetres to look up what fits.",
"exclusiveMinimum": 0
}
},
"additionalProperties": false
}