Skip to main content
Glama
mattferry

Stitch MCP Server

by mattferry

generate_dark_mode

Convert a light-mode screen into a dark-mode variant by analyzing its color palette, inverting brightness, adjusting contrast, and preserving brand accents.

Instructions

Takes a light-mode screen and generates a dark-mode variant. Analyses the existing color palette and instructs Stitch to regenerate with inverted brightness, adjusted contrast, and preserved brand accents.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
contrastNoContrast level for the dark variant.normal
screenIdYesThe source (light-mode) screen ID.
projectIdYesThe Stitch project ID.
deviceTypeNoTarget device type.MOBILE
preserveAccentsNoKeep accent/brand colors unchanged (only invert backgrounds and text).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.8/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. It discloses the behavior: analyzes the color palette, instructs Stitch to regenerate with inverted brightness, adjusted contrast, and preserved brand accents. This gives insight into the transformation logic. However, it doesn't disclose side effects (e.g., whether it modifies the original screen or creates a new one), output format, or failure modes. The description adds some behavioral context but not comprehensive transparency.

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?

The description is two sentences, front-loaded with the core purpose. The second sentence adds useful behavioral detail about the transformation logic. It's concise and every sentence earns its place, though the second sentence could be slightly more specific about the output.

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

Completeness3/5

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

For a tool with 5 parameters and no output schema, the description covers the core purpose and transformation logic but doesn't explain what the output looks like (e.g., whether it returns a new screen ID, modifies in place, or returns an image). It also doesn't clarify the relationship between deviceType and the generated variant. The description is adequate but has clear gaps.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all 5 parameters. The description adds context about the overall behavior (inverted brightness, adjusted contrast, preserved brand accents) which maps to the preserveAccents parameter, but it doesn't add specific parameter-level meaning beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description clearly states the tool's function: it takes a light-mode screen and generates a dark-mode variant. It specifies the resource (screen) and the action (generate dark-mode variant), and it distinguishes itself from siblings like generate_responsive_variant and generate_variants by focusing on dark mode from a light-mode source.

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

Usage Guidelines4/5

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

The description implies when to use this tool: when you have a light-mode screen and want a dark-mode variant. It doesn't explicitly state when not to use it or name alternatives, but the context is clear enough for an agent to select it over siblings like generate_responsive_variant. A clear exclusion or alternative mention would push it to 5.

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