Skip to main content
Glama
Jambozx

OnlineCyberTools MCP (280+ filterable tools)

by Jambozx

webdev_color_palette

Read-only

Generate a color palette from a base hex color using complementary, analogous, triadic, tetradic, monochromatic, or random schemes. Output includes hex, RGB, HSL, contrast ratio, and light/dark flag.

Instructions

Color Palette Generator. Generate a harmonious color palette from a base hex color using a chosen color-theory scheme (complementary, analogous, triadic, tetradic, monochromatic, or random). Use this when you want a multi-color scheme derived from one seed color; use webdev_css_gradient_generator instead when you need CSS gradient code, or webdev_hex_color to inspect or convert a single color. Runs locally on the values you provide: read-only, non-destructive, contacts no external service, and is rate-limited (60 requests/minute for anonymous callers). The random scheme draws fresh colors each call, so output is not idempotent. Returns each color as hex, RGB, and HSL plus its nearest name, white-background contrast ratio, and light/dark flag.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
paletteTypeYesColor-theory scheme that determines how the other colors are derived from baseColor. Required; an unrecognized value is rejected with HTTP 400.
baseColorNoSeed color as a 3- or 6-digit hex string (formats #RGB or #RRGGBB). Defaults to #3498db.#3498db
colorCountNoTotal number of colors to return, including the base color. Must be an integer from 2 to 12.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
baseColorNoNormalized lowercase 6-digit base hex color used.
paletteTypeNoThe scheme applied to derive the palette.
colorCountNoNumber of colors returned.
colorsNoThe generated colors in scheme order; the first is the base color.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed11 schema fields changedv0.5.1
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / baseColor / default
      Added value: +"#3498db"
    • addedInput schema / properties / baseColor / description
      Added value: +"Seed color as a 3- or 6-digit hex string (formats #RGB or #RRGGBB). Defaults to #3498db."
    • addedInput schema / properties / colorCount / default
      Added value: +5
    • addedInput schema / properties / colorCount / description
      Added value: +"Total number of colors to return, including the base color. Must be an integer from 2 to 12."
    • addedInput schema / properties / colorCount / maximum
      Added value: +12
    • addedInput schema / properties / colorCount / minimum
      Added value: +2
    • addedInput schema / properties / paletteType / description
      Added value: +"Color-theory scheme that determines how the other colors are derived from baseColor. Required; an unrecognized value is rejected with HTTP 400."
    • addedInput schema / properties / paletteType / enum
      Added value: +[
      +  "complementary",
      +  "analogous",
      +  "triadic",
      +  "tetradic",
      +  "monochromatic",
      +  "random"
      +]
    • changedInput schema / required
      Previous value: -[
      -  "baseColor",
      -  "paletteType",
      -  "colorCount"
      -]New value: +[
      +  "paletteType"
      +]
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "baseColor": {
      +      "description": "Normalized lowercase 6-digit base hex color used.",
      +      "type": "string"
      +    },
      +    "colorCount": {
      +      "description": "Number of colors returned.",
      +      "type": "integer"
      +    },
      +    "colors": {
      +      "description": "The generated colors in scheme order; the first is the base color.",
      +      "items": {
      +        "properties": {
      +          "contrast": {
      +            "description": "WCAG contrast ratio of this color against a white background.",
      +            "type": "number"
      +          },
      +          "hex": {
      +            "description": "Color as a 6-digit hex string.",
      +            "type": "string"
      +          },
      +          "hsl": {
      +            "description": "Color in HSL (hue degrees, saturation and lightness percent).",
      +            "properties": {
      +              "h": {
      +                "description": "Hue in degrees (0-360).",
      +                "type": "number"
      +              },
      +              "l": {
      +                "description": "Lightness as a percentage (0-100).",
      +                "type": "number"
      +              },
      +              "s": {
      +                "description": "Saturation as a percentage (0-100).",
      +                "type": "number"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "isBase": {
      +            "description": "True only for the original base color (first entry).",
      +            "type": "boolean"
      +          },
      +          "isLight": {
      +            "description": "True when relative luminance exceeds 0.5.",
      +            "type": "boolean"
      +          },
      +          "name": {
      +            "description": "Nearest named color, or Custom when none is close.",
      +            "type": "string"
      +          },
      +          "rgb": {
      +            "description": "Color in RGB channels (0-255).",
      +            "properties": {
      +              "b": {
      +                "description": "Blue channel (0-255).",
      +                "type": "integer"
      +              },
      +              "g": {
      +                "description": "Green channel (0-255).",
      +                "type": "integer"
      +              },
      +              "r": {
      +                "description": "Red channel (0-255).",
      +                "type": "integer"
      +              }
      +            },
      +            "type": "object"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "paletteType": {
      +      "description": "The scheme applied to derive the palette.",
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  2. First observedv0.1.0

TDQS

A4.7/5.0
Behavior5/5

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

Beyond annotations, description discloses local execution, read-only nature, rate limits, non-idempotence of random scheme, and output details (hex, RGB, HSL, contrast). No contradiction with annotations.

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?

The description is a concise paragraph with front-loaded purpose, every sentence adds value, no redundancy.

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

Completeness5/5

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

Given the tool complexity (3 params, output schema exists), the description covers purpose, usage, behavior, parameters, and output, making it complete.

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 coverage is 100%, so description adds limited input info beyond schema. It notes random scheme non-idempotence (relevant to paletteType) but otherwise the schema fully documents parameters.

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 it generates a harmonious color palette from a base hex color using a chosen scheme, distinguishing it from sibling tools like webdev_css_gradient_generator and webdev_hex_color.

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

Usage Guidelines5/5

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

Explicitly provides when to use this tool (multi-color scheme from one seed) and when to use alternatives (gradient, single color).

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

Deploy Server

Other Tools