Skip to main content
Glama

Generate Colour Direction for Another AI

agent_brief
Read-only

Generate a complete colour direction package for another AI agent or image generation model. Fetches a historically grounded archive palette from the concept, then produces: an agent brief (colour direction in prose), colour tokens with hex values and roles, a model-specific image generation prompt, a negative prompt, and lighting notes. Supports midjourney, flux, dalle, stable_diffusion. Example: task='luxury hotel bedroom', concept='Ottoman winter luxury', model='midjourney'. Use this to make Colour Memory the colour layer for other AI systems. Archive-grounded retrieval is evidence-filtered: entries with claim_role='reject' (no primary source and no period connection), stub entries, blank-source entries, and entries below minimum_claim_strength are never selected. If fewer than palette_size colours pass these filters, the call returns an honest incomplete result (ok:false, error_code:INSUFFICIENT_EVIDENCE_ELIGIBLE_PALETTE) rather than padding the palette with rejected or weak evidence. Negative constraints (from 'avoid' or negation phrases in concept like 'must never', 'without', 'not') are also applied to retrieval, not just flagged afterward -- a brief that says a wedding must never feel funereal will not surface mourning-themed colours in the first place. locked_palette calls skip evidence filtering entirely since the caller is supplying colours directly, not requesting archive evidence.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
taskYesWhat the other AI needs to generate e.g. 'luxury hotel bedroom image'
avoidNoOptional: terms/associations to keep out of retrieval e.g. ['mourning', 'funeral black']. Affects retrieval directly, not just post-hoc flagging.
modelNoTarget model: midjourney, flux, dalle, stable_diffusionmidjourney
archiveNoOptional: restrict palette query to this archive e.g. georgianpleasures, japan, china
conceptYesColour concept to draw from e.g. 'Ottoman winter luxury', 'Victorian mourning'. Negation phrases ('must never', 'without', 'not X') are extracted and kept out of retrieval.
style_notesNoOptional: additional style direction e.g. 'matte surfaces only', 'no gold'
palette_sizeNoNumber of archive colours to include (default 5, max 8)
locked_paletteNoOptional: list of hex values to use exclusively. When provided, no archive query is run and no evidence filtering applies — these exact colours are used as-is. Prevents palette drift.
allowed_archivesNoOptional: list of allowed archive names. Query restricted to these archives only.
minimum_claim_strengthNoEvidence-grade floor for archive-grounded retrieval (default 'C'). Grade controls documentary strength; claim_role='reject' entries are excluded regardless of how low this is set. Not applied to locked_palette calls.C

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.7/5.0
Behavior5/5

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

The description goes far beyond the readOnlyHint annotation, detailing evidence-filtering rules (exclusion of reject/stub/blank-source entries), the honest incomplete-result behavior (ok:false, error_code), the application of negative constraints at retrieval time, and special handling for locked_palette. This gives the agent a strong behavioral model.

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 longer than minimal, but every sentence carries distinct information: purpose, deliverable components, supported models, example, use case, filtering rules, failure handling, negative constraints, and locked_palette behavior. It is well-structured and front-loaded, though some sentences paraphrase schema notes slightly.

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's complexity (10 params, multiple filtering behaviors, locked_palette mode, failure modes), the description is remarkably complete. It covers retrieval rules, evidence quality floors, negative constraints, special-case behavior, and model support. The presence of an output schema means return-value documentation is unnecessary, so no additional info is missing.

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

Parameters5/5

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

Although the schema already describes all 10 parameters at 100% coverage, the description adds significant cross-parameter semantics: how 'avoid' and negation phrases in 'concept' affect retrieval, how 'locked_palette' bypasses evidence filtering, how 'minimum_claim_strength' interacts with 'claim_role', and how palette_size relates to the honest failure mode. This goes beyond what the schema provides.

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 opens with a specific verb and resource: 'Generate a complete colour direction package for another AI agent or image generation model.' It clearly distinguishes itself from siblings like palette_generate or image_brief by specifying the cross-AI delivery format, including agent brief, tokens, prompt, negative prompt, and lighting notes.

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?

It provides a clear use case ('Use this to make Colour Memory the colour layer for other AI systems') and an explicit example ('task='luxury hotel bedroom', concept='Ottoman winter luxury', model='midjourney''). However, it does not name alternatives or explicitly say when not to use this tool, so it stops short of full exclusion guidance.

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

A3.8/5.0
Disambiguation2/5

With 88 tools, there is substantial overlap: colour_passport vs colour_dna vs colour_metrics vs colour_cultural_risk are explicit components of the same object; palette_concept vs palette_strict vs palette_generate vs palette_heritage overlap heavily; and four image extraction tools exist (extract_image_colours, image_palette, palette_extact, ingest_image). Although descriptions are detailed and tool_guide exists, an agent will frequently struggle to select the correct tool unambiguously.

Naming Consistency5/5

Nearly all tools follow a consistent snake_case noun_verb or domain-prefixed pattern (colour_*, palette_*, brand_*, archive_*, project_*, accessibility_*). The naming is uniform and predictable, with no mixing of styles or verb conventions across the set.

Tool Count1/5

88 tools is an extreme count for an MCP server. Even honoring the broad domain, the rubric places 50+ at the extreme end, and the high overlap between compound and individual tools suggests many could be consolidated or exposed as sub-resources rather than top-level tools.

Completeness5/5

The tool surface covers the full colour lifecycle: lookup, analysis, palettes, brand systems, accessibility, image extraction, interior design, archival research, reports, PDF generation, and project management. Workflows have clear entry points and few dead ends, and the presence of compound tools further closes integration gaps.

Resources