Skip to main content
Glama

Portrait Analysis

portrait_analysis
Idempotent

Personal color analysis from 1-3 portraits: measured pixel colorimetry (CIELAB/ITA) cross-checked against vision-model attributes, cross-photo lighting consistency, then a published deterministic rule table gives the 4-season verdict with palette and style advice. No identification; images not stored. Flat $0.05/call.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
styleNoOne of: feminine, masculine, neutral. Styling context: feminine, masculine or neutralneutral
imagesNoup to 3 of {image_url|image_base64}; different lighting recommended
image_urlNoAbsolute http(s) URL of the image (JPEG/PNG/WebP)
x_paymentNoOptional: base64 X-PAYMENT header value (x402 exact scheme, USDC on Base mainnet). Omit it to receive the payment requirements (accepts[] + docs) for this call without being charged.
image_base64NoBase64-encoded image bytes (alternative to image_url)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / style / description
      Previous value: -"Styling context: feminine, masculine or neutral"New value: +"One of: feminine, masculine, neutral. Styling context: feminine, masculine or neutral"
  2. Changed3 schema fields changed
    • addedInput schema / properties / image_base64 / description
      Added value: +"Base64-encoded image bytes (alternative to image_url)"
    • addedInput schema / properties / image_url / description
      Added value: +"Absolute http(s) URL of the image (JPEG/PNG/WebP)"
    • addedInput schema / properties / style / description
      Added value: +"Styling context: feminine, masculine or neutral"
  3. Added

TDQS

A3.9/5.0
Behavior4/5

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

Annotations provide readOnlyHint=false, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds valuable behavioral context beyond these: 'No identification; images not stored' discloses privacy/storage behavior, 'Flat $0.05/call' discloses pricing, and 'measured pixel colorimetry' and 'deterministic rule table' explain the analytical approach. No contradiction with annotations. It could mention handling of failed or low-quality images, but the disclosed behaviors are substantial.

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 a single sentence with multiple clauses, but it is well-structured: purpose first, then method, then output, then privacy and pricing. It front-loads the primary action and packs a lot of information without verbosity. The sentence is dense but readable, and every clause adds value. No filler or redundant phrasing.

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?

Given the tool's complexity (image analysis, payment handling, multiple parameters) and no output schema, the description covers the essential return value ('4-season verdict with palette and style advice'), input constraints, privacy (no identification, no storage), and pricing. It also hints at the payment flow via the x_payment parameter description. It does not explicitly detail the output format (e.g., JSON structure), but the summary of the verdict is sufficient for an agent to know what to expect. Minor gaps like error handling are acceptable.

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 the schema already documents all five parameters. The tool description adds context about the purpose of images (1-3 portraits, different lighting recommended) which aligns with the images parameter description. However, it does not add new meaning beyond what the schema already provides for individual parameters. The baseline of 3 applies because the schema carries the load and the description does not materially compensate.

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: personal color analysis from 1-3 portraits, using specific methods (pixel colorimetry, cross-photo lighting consistency, deterministic rule table) and outputs a 4-season verdict with palette and style advice. It distinguishes itself from siblings like portrait_precheck and style_profile by emphasizing a deterministic rule table and explicitly stating 'No identification'. The verb+resource is specific and unambiguous.

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 when to use it (when you have 1-3 portraits and need color analysis) but does not explicitly mention alternatives or exclusions. It does not name sibling tools like portrait_precheck or style_profile as alternatives, nor does it state when NOT to use this tool (e.g., if you need facial recognition or a broader style profile). The input constraint '1-3 portraits' is clear, but the choice logic among siblings is left to inference.

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