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.6/5.0
Behavior5/5

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

Annotations provide readOnlyHint=true, and the description adds extensive behavioral detail: evidence filtering with claim_role='reject', exclusion of weak entries, returning an honest incomplete result with error_code, and applying negative constraints at retrieval time. It also explains locked_palette behavior, going far 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?

Information-dense single paragraph with no filler, including an example and explicit error behavior. Length is justified by the tool's complexity, though a bulleted or segmented structure would improve scannability.

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?

Covers purpose, outputs, model support, example, evidence filtering, negative constraints, locked_palette mode, and error result. With an output schema present and the description already explaining non-obvious behaviors, it is contextually complete for a 10-parameter tool.

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

Parameters4/5

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

Schema descriptions already cover all 10 parameters (100% coverage). The narrative adds semantics for locked_palette (exact colours used as-is, no archive query), minimum_claim_strength (evidence-grade floor, not applied to locked_palette), and clarifies how avoid and negation phrases affect retrieval, enriching beyond field descriptions.

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 'Generate a complete colour direction package for another AI agent or image generation model' and enumerates exact outputs (prose brief, colour tokens, prompts, lighting notes), distinguishing it from sibling brief tools by specifying the recipient and deliverables.

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?

States 'Use this to make Colour Memory the colour layer for other AI systems' and clarifies when locked_palette is appropriate vs. archive-grounded retrieval. It doesn't explicitly name alternative tools, but the context is clear enough for an agent to decide when this tool fits.

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.6/5.0
Disambiguation2/5

Several tool clusters perform near-identical functions: extract_image_colours, image_palette and palette_extract all extract dominant colours from images; colour_passport, colour_dna, colour_metrics and colour_cultural_risk all profile a single hex; and at least six compound 'complete package' tools (agent_brief, archive_report_brief, brand_report, design_session, image_brief, session_brief) overlap heavily in scope. The descriptions try to differentiate -- some even point to tool_guide for routing -- but the volume and similarity of clusters makes misselection likely.

Naming Consistency4/5

The vast majority of tools follow a clear domain_prefix_suffix pattern (colour_, palette_, archive_, brand_, accessibility_, project_) and within families naming is very disciplined (brand_guideline_specify/select/pdf/claims/status, project_get/list/versions/delete). However, a handful of outliers invert the order (extract_image_colours, ingest_image, render_colour_result, query_hex) and some descriptions reference tools that don't exist as endpoints (palette_from_concept, match_paint_system, get_colour_metrics).

Tool Count1/5

88 tools is far beyond any reasonable single-server surface, even for a platform spanning archives, branding, interiors and accessibility. The sheer number forces agents into a massive decision space, and many tools exist purely as convenience wrappers that replace chains of 3-6 other tools, suggesting aggressive consolidation was needed.

Completeness4/5

The surface covers an unusually broad domain -- archive search, colour science, palettes, branding, interiors, accessibility, image extraction, projects, and PDF/Word/Excel exports -- with very few dead ends for end-user workflows. Minor gaps: several compound-tool descriptions reference tools that no longer exist, and valid archive names are only discoverable via error messages rather than a dedicated listing endpoint.

Resources