Skip to main content
Glama

Get the Cultural Story of a Colour

colour_story
Read-only

Given a hex value, returns a rich narrative about that colour's cultural journey: where it has appeared in history, what it has meant to different civilisations, and what archive names it carries. Essential for image generation prompts, brand storytelling, and creative briefs. Example: '#DC143C' returns the story of crimson from Byzantine imperial courts through Tudor England to modern sport.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "hex": "<hex>"
    },
    "name": "colour_story"
  }
}

Input Schema

NameRequiredDescriptionDefault
hexYesHex value e.g. '#DC143C'
n_archivesNoNumber of archive sources to draw from (default 5)

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": true,
      +  "description": "Structured JSON response. Shape varies by tool; most return an 'ok' boolean plus a 'result' or 'results' field with the tool's data payload.",
      +  "type": "object"
      +}
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "error": {
      -      "type": "string"
      -    },
      -    "ok": {
      -      "type": "boolean"
      -    },
      -    "result": {
      -      "type": [
      -        "object",
      -        "array",
      -        "string",
      -        "null"
      -      ]
      -    }
      -  },
      -  "type": "object"
      -}New value: +null
  3. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "properties": {
      +    "error": {
      +      "type": "string"
      +    },
      +    "ok": {
      +      "type": "boolean"
      +    },
      +    "result": {
      +      "type": [
      +        "object",
      +        "array",
      +        "string",
      +        "null"
      +      ]
      +    }
      +  },
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "properties": {
      -    "archive_sources": {
      -      "items": {
      -        "type": "object"
      -      },
      -      "type": "array"
      -    },
      -    "hex": {
      -      "type": "string"
      -    },
      -    "image_gen_prompt": {
      -      "description": "Ready-to-use Midjourney/DALL-E prompt fragment",
      -      "type": "string"
      -    },
      -    "story": {
      -      "description": "Narrative cultural story of the colour",
      -      "type": "string"
      -    }
      -  },
      -  "type": "object"
      -}New value: +null
  5. Added

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered. The description adds that output is a narrative drawing on a configurable number of archive sources, but says nothing about whether stories are cached or generated fresh, latency, or how narrative length scales with n_archives — modest added value beyond the annotation.

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?

Front-loaded with what the tool returns, followed by use cases and a single illustrative example; no sentence is filler. The use-case sentence is the weakest link but still supports tool selection.

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

Completeness4/5

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

With only two fully documented parameters and an output schema covering return values, the description does what remains: states the resource scope and gives an example. A note on how n_archives shapes the response, or how this differs from other historical colour tools, would close the remaining gap.

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 both parameters are already documented, setting the baseline at 3. The description reinforces the hex format with a worked example and hints that archive names are part of the result, but adds no new semantics for n_archives beyond what the schema states.

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 gives a specific verb and resource — takes a hex value and returns a cultural narrative covering historical appearances, civilisational meanings, and archive names — and the crimson example makes the output concrete. It stops short of distinguishing itself from near-neighbours like colour_timeline or historical_colour_query, which also traffic in colour history, so an agent cannot fully disambiguate from the text alone.

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?

It names use cases (image generation prompts, brand storytelling, creative briefs), which implies when the tool is appropriate. However, it offers no exclusions and no comparison to alternatives such as colour_timeline or historical_colour_query, leaving the agent to infer which history-oriented sibling to pick.

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.

Resources