Skip to main content
Glama
MazzaWill

tattoo-brief-mcp

by MazzaWill

tattoo-brief-mcp

Official MCP Registry: io.github.MazzaWill/tattoo-brief-mcp · Also on Smithery and Glama.

Related Tatany assets: website · AI tattoo generator · YouTube · itch.io flash pack · Hugging Face probes · Pinterest board

A small Model Context Protocol server that helps you plan a tattoo before you talk to an artist. It runs locally over stdio, needs no API keys, and every tool is deterministic (same input, same output).

Maintained by Lena Hart (ZheLogic, LLC). Homepage: https://tatany.app

Tools

Tool

What it does

build_tattoo_brief

idea, style, placement, size_cm (+ optional color, must_include, avoid) → a Markdown brief with placement notes and questions to ask your artist.

check_small_size_legibility

size_cm + details (e.g. fine_lines, small_text, dotwork, dense_shading, tiny_negative_space, faces_portrait, color_gradients, white_ink, many_small_elements, bold_outline) → per-detail blur risk and a suggested minimum size.

line_art_prompt

subject (+ optional style, line_weight, composition, extra) → a clean line-art prompt and negative prompt for an AI tattoo generator.

Important: the legibility check uses simple rules of thumb. It is not a guarantee about how a tattoo will heal or age, and nothing here is medical advice. Your tattoo artist has the final say.

Related MCP server: Mollie's Stitch Studio

Install

npm install && npm run build

Claude Desktop / Cursor config:

{ "mcpServers": { "tattoo-brief": { "command": "node", "args": ["/path/to/tattoo-brief-mcp/dist/index.js"] } } }

Test all three tools: npm test. Or inspect interactively: npx @modelcontextprotocol/inspector node dist/index.js.

License

MIT

Available Tools

3 tools
build_tattoo_briefC

Turn a tattoo idea, style, placement and size into a structured brief to bring to a tattoo artist.

NameRequiredDescriptionDefault
ideaYes
avoidNo
colorNo
styleYes
size_cmYes
placementYes
must_includeNo

TDQS

C2.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full disclosure burden. It never says whether the brief is persisted or purely returned, whether any inputs are rejected, or what the output looks like, leaving an agent guessing about the tool's side effects and result shape.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single well-formed sentence with the inputs front-loaded and the output named last. It earns its place without padding, though it is arguably undersized for a 7-parameter tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, no output schema, and 0% parameter documentation, the description is the only source of behavioral information and it supplies almost none. It should at minimum explain the optional parameters and what the resulting brief contains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% across 7 parameters. The description names four of them (idea, style, placement, size) matching the required set, but says nothing about the three optional ones (avoid, color, must_include) or about constraints such as the 200 cm size ceiling.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a clear transformation ('turn a tattoo idea, style, placement and size into a structured brief'), so the verb and resource are unambiguous and an agent can tell it produces a brief rather than a check or a prompt. It does not differentiate itself from the siblings check_small_size_legibility or line_art_prompt, which keeps it out of 5 territory.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisites, and no mention of the sibling tools that could be used instead or in addition. 'To bring to a tattoo artist' hints at the downstream consumer but says nothing about when this tool is the right choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

check_small_size_legibilityB

Heuristic blur-risk check for tattoo details at a given size. Rules of thumb only, not a guarantee.

NameRequiredDescriptionDefault
detailsYes
size_cmYes

TDQS

B3/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full behavioral burden. It does disclose a genuinely useful trait — that results are heuristic rules of thumb and not a guarantee — which sets expectations about reliability. However, it says nothing about what the tool returns, how risk is graded, or whether it is a pure read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight sentences, front-loaded with the core purpose and followed immediately by the key caveat. Every sentence earns its place with no filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, no annotations, and 0% parameter description coverage, the description is too thin for the tool it documents. An agent still cannot tell what a result looks like or how to interpret the detail categories, which the description should have covered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must compensate for the two undocumented parameters. It loosely gestures at 'size' and 'tattoo details', but never explains the size_cm unit/limits or the meaning of the ten enum categories (fine_lines, dotwork, white_ink, etc.), leaving the most consequential input semantics unexplained.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource: a heuristic blur-risk check on tattoo details at a given size. It is clearly an assessment/diagnostic tool, distinct in kind from build_tattoo_brief and line_art_prompt, though it never names or explicitly distinguishes itself from those siblings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no when-to-use guidance, no prerequisite or condition, and no mention of alternatives. The agent can infer it is used before committing to an undersized design, but that inference is left entirely to the reader.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

line_art_promptC

Write a clean line-art prompt (plus negative prompt) for an AI tattoo generator.

NameRequiredDescriptionDefault
extraNo
styleNo
subjectYes
compositionNo
line_weightNo

TDQS

C2.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full behavioral burden. It discloses one useful trait — that a negative prompt is generated alongside the main prompt — but says nothing about whether an external AI is invoked, determinism, cost, or failure modes, which matters for a prompt-generation tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One front-loaded sentence with zero padding, which is structurally clean. However, it is under-sized for a five-parameter tool, so brevity here is more omission than efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations, no output schema, and 0% schema description coverage across five parameters, the description is expected to compensate heavily and instead supplies a single sentence. An agent could not reliably populate 'style', 'composition', or 'line_weight' semantics from it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Five parameters with 0% schema description coverage, and the description mentions none of them. It never explains 'subject', 'style', 'composition', the 'line_weight' enum values, or what 'extra' accepts, leaving the agent to infer all input semantics from bare names.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb ('Write') and resource ('line-art prompt ... for an AI tattoo generator'), so the agent knows what is produced. It does not explicitly distinguish itself from siblings build_tattoo_brief or check_small_size_legibility, but the resource is distinct enough to infer separation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No when-to-use guidance, no prerequisites, and no mention of the sibling tools or when one should be preferred over another. The agent must guess whether this replaces or complements build_tattoo_brief.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv0.1.0
    • First observedbuild_tattoo_brief
    • First observedcheck_small_size_legibility
    • First observedline_art_prompt

TDQS

B3/5.0

Scored across 3 tools

Disambiguation4/5

line_art_prompt and build_tattoo_brief both take a tattoo idea and return text, so an agent could momentarily hesitate over which produces the AI prompt versus the human-facing brief. Their descriptions do clarify the distinction (generator prompt + negative prompt vs. structured artist brief), and check_small_size_legibility is clearly separate.

Naming Consistency4/5

All three names use snake_case, and two follow a verb_noun/verb_phrase pattern (build_tattoo_brief, check_small_size_legibility). line_art_prompt is a noun phrase rather than a verb-led name, a minor deviation from an otherwise consistent convention.

Tool Count4/5

Three focused tools fit a narrow, well-defined pipeline (idea → brief → prompt → legibility check) with no filler. It sits at the thin end of the suggested range, but each tool has a distinct role, so it is not under-scoped.

Completeness3/5

The surface covers generating a prompt, building a brief, and a size-legibility heuristic, but there is no way to refine or update an existing brief/prompt after feedback, and no style or placement reference lookup. Agents can work around this by re-calling tools from scratch, but iteration is a real gap.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables ChatGPT to queue validated embroidery designs, compile constrained one-color designs, describe Brother SE700 limits, list queued jobs, and request phone-side transfers to a Brother SE700 after explicit user approval.
    -
  • A
    license
    B
    quality
    C
    maintenance
    Enables planning of a tattoo before consulting an artist by generating a Markdown brief with placement notes and artist questions, assessing per-detail blur risk and minimum suggested sizes for small tattoos, and producing line-art and negative prompts for AI tattoo generators. All three tools run locally over stdio, need no API keys, and return deterministic results.
    3
    MIT