Skip to main content
Glama

Generate Scheme

generate_scheme
Read-onlyIdempotent

Generate harmonious color palettes from a seed hex color (e.g., "#3498DB"). Returns complementary, analogous, triadic, or monochromatic schemes with hex codes.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
hexYesSeed hex color value without the # prefix (e.g. "FF5733").
modeNoColor scheme mode. One of: monochrome, analogic, complement, triad, quad. Defaults to "monochrome".
countNoNumber of colors to return (1-10, default 5).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeYesColor scheme mode used
countYesNumber of colors in scheme
colorsYesArray of formatted color objects
seed_hexYesSeed hex color with # prefix

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "colors": {
      +      "description": "Array of formatted color objects",
      +      "items": {
      +        "properties": {
      +          "closest_named_hex": {
      +            "description": "Hex code of closest named color",
      +            "type": "string"
      +          },
      +          "cmyk": {
      +            "description": "CMYK color format string",
      +            "type": "string"
      +          },
      +          "contrast": {
      +            "description": "WCAG contrast ratio value",
      +            "type": "string"
      +          },
      +          "exact_name_match": {
      +            "description": "Whether the name is an exact match",
      +            "type": "boolean"
      +          },
      +          "hex": {
      +            "description": "Hex color value",
      +            "type": "string"
      +          },
      +          "hsl": {
      +            "description": "HSL color format string",
      +            "type": "string"
      +          },
      +          "hsv": {
      +            "description": "HSV color format string",
      +            "type": "string"
      +          },
      +          "name": {
      +            "description": "Common color name",
      +            "type": "string"
      +          },
      +          "rgb": {
      +            "description": "RGB color format string",
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "name",
      +          "exact_name_match",
      +          "closest_named_hex",
      +          "hex",
      +          "rgb",
      +          "hsl",
      +          "hsv",
      +          "cmyk",
      +          "contrast"
      +        ],
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "count": {
      +      "description": "Number of colors in scheme",
      +      "type": "number"
      +    },
      +    "mode": {
      +      "description": "Color scheme mode used",
      +      "type": "string"
      +    },
      +    "seed_hex": {
      +      "description": "Seed hex color with # prefix",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "seed_hex",
      +    "mode",
      +    "count",
      +    "colors"
      +  ],
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • addedInput schema / examples
      Added value: +[
      +  {
      +    "hex": "3498DB"
      +  },
      +  {
      +    "count": 4,
      +    "hex": "E74C3C",
      +    "mode": "triad"
      +  }
      +]
  3. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the bar is lower. The description adds useful behavioral context by specifying that it returns complementary, analogous, triadic, or monochromatic schemes with hex codes. However, the example input with a '#' prefix conflicts with the schema's requirement, slightly undermining clarity.

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 single sentence that front-loads the purpose and includes a concrete example. Every word earns its place, with no redundant phrasing or unnecessary details.

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 simple tool with an output schema and good annotations, the description is mostly adequate. However, the input format mismatch regarding the '#' prefix and the inconsistent mode names create gaps that could lead to incorrect invocations.

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 100%, so baseline is 3. The description adds no extra semantic value and actually introduces conflicting terminology (e.g., 'monochromatic' vs the schema's 'monochrome', and the example '#3498DB' with a '#' even though the schema expects no '#'). This could mislead an agent into providing invalid parameters, warranting a below-baseline score.

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 with a specific verb ('Generate'), a defined resource ('harmonious color palettes'), and a required input ('seed hex color'). It distinguishes itself from sibling tools like convert_color and identify_color by focusing on palette generation.

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

Usage Guidelines3/5

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

The description implies the tool should be used for generating color schemes, but it provides no explicit guidelines on when to use this tool instead of alternatives such as convert_color or identify_color. No exclusions or alternative references are mentioned.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4/5.0
Disambiguation3/5

Some tools have distinct purposes (e.g., color tools, memory tools), but many data query tools (ask_pipeworx, ask_pipeworx_grounded, deep_research, entity_profile) overlap significantly, making it hard for an agent to choose the right one without deep knowledge of their nuances.

Naming Consistency4/5

Most tool names use snake_case with a verb_noun pattern (e.g., convert_color, identify_color, resolve_entity), but there is inconsistency in prefixes: some use 'ask_pipeworx', others 'pipeworx_', 'polymarket_', or 'scan_'. Overall, still readable and predictable.

Tool Count3/5

33 tools is on the high side for a single server, especially one named 'colorapi' which misleadingly suggests a focus on color only. The tool count is borderline appropriate for the actual broad data integration scope, but the mismatch with the server name is problematic.

Completeness4/5

The tool set covers a wide range of data sources and operations (SEC, FDA, patents, news, Polymarket, memory, subscriptions), with few obvious gaps. Minor lacks: no direct tool for updating stored memories or handling non-US companies, but overall comprehensive.