vision
Server Details
Calibrated vision for AI agents: meal nutrition, personal color, styling reports. x402, no API key.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 9 tools
Most tools target distinct resources (meal_vision, portrait_precheck, get_receipt), but portrait_analysis, style_profile, and style_report heavily overlap—style_profile and style_report differ only in output format (JSON analysis vs. rendered PDF), and both build on portrait colorimetry. report_pack is essentially a pricing mechanism for style_report rather than a distinct capability, adding further boundary confusion.
Names are consistently snake_case, with a clear get_ prefix for retrieval utilities (get_catalog, get_receipt, get_sample) and a noun_noun pattern for analysis products (meal_vision, portrait_analysis, style_report). The two conventions coexist logically, though the mix of verb-prefixed and noun-only styles is a minor deviation.
Nine tools is well-scoped for a paid-analysis marketplace: discovery (catalog, samples), fulfillment (receipt), prechecks, and a handful of analysis products. Each tool appears to earn its place without padding.
The set covers discovery, sampling, payment/retrieval, and several analysis products, but get_sample advertises ~28 products (ocr, parse, pdf-*, document-pipeline, jp-* suite) that have no corresponding callable tool, leaving a notable surface gap. Core lifecycle for the exposed products is otherwise coherent.
Available Tools
9 toolsget_catalogMart402 catalog (products, prices, policies)BRead-onlyIdempotentInspect
Mart402 product catalog: all products, prices, payment config, error codes, rate limits. Free.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is fully covered without the description. The description adds genuinely non-structured context: the call is free, and it returns payment config, error codes, and rate limits — useful in an x402/pay-per-call ecosystem. It stops short of saying whether the catalog is cached or how often it changes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single telegraphic sentence with the resource front-loaded and the cost signal last; nothing is wasted. The fragment style ('Free.') is slightly clipped but still unambiguous and appropriately sized for a zero-arg tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With zero parameters, rich annotations, and an output schema that already documents return values, the description needs only to identify the resource and its scope — which it does. Enumerating the returned categories (prices, payment config, error codes, rate limits) is a helpful bonus rather than a requirement.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so per the rubric the baseline is 4 and there is nothing for the description to disambiguate. No parameter detail is required or missing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (Mart402 product catalog) and enumerates what it contains: products, prices, payment config, error codes, rate limits. An agent can tell this is a discovery/metadata endpoint rather than a data-processing tool. It does not distinguish itself from the one plausible sibling, search_x402_services, which is a minor gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The only usage signal is the trailing word 'Free,' which implies a cost advantage over paid x402 siblings but never states when to call this versus search_x402_services. There is no statement of prerequisites, ordering, or when-not-to-use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_receiptRe-fetch a paid result by receiptARead-onlyIdempotentInspect
Re-fetch a previously paid result for free by receipt id (every paid response carries receipt_id).
| Name | Required | Description | Default |
|---|---|---|---|
| receipt_id | Yes | receipt_id from a paid response (rcpt_...) |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds a genuinely behavioral fact not present in annotations: the call is free and requires a receipt_id issued by a prior paid response. It omits whether receipts expire or whether the re-fetched payload is identical, but with annotations carrying safety this is solid.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action and resource, with the clarifying parenthetical placed after the essential information. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be described, and annotations cover the safety semantics. The description supplies purpose, parameter provenance and cost behavior; only minor operational details (receipt lifetime, pagination/error behavior on an invalid id) are absent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema already documents the single parameter including its 'rcpt_...' format. The description's provenance note ('from a paid response') largely restates the schema's own wording, so it adds little beyond the structured field. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Re-fetch a previously paid result') plus the selection key ('by receipt id'), and adds the key differentiator that this path is free. No sibling tool overlaps, so an agent can identify this as the free retrieval path for a paid result without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description tells the agent the precondition (you must hold a receipt_id) and where that id comes from ('every paid response carries receipt_id'), which implies the when-to-use condition: retrieving a result already paid for rather than paying again. It does not explicitly name an alternative or a when-not-to-use case, but the context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_sampleMart402 sample outputARead-onlyIdempotentInspect
Free recorded sample response for a paid product (from real production runs, marked sample:true) - see the exact response shape before paying anything. Available: document-pipeline, enrich, extract, jp-bonus-net, jp-business-days, jp-company, jp-consumption-tax, jp-crypto-tax, jp-dependent-threshold, jp-mortgage, jp-overtime-wage, jp-payroll-net, jp-payroll-suite, jp-payslip-audit, jp-retirement-tax, jp-social-insurance, meal-vision, ocr, parse, pdf-info, pdf-merge, pdf-pages, portrait-analysis, report-pack, structured, style-profile, style-report, verify.
| Name | Required | Description | Default |
|---|---|---|---|
| product | Yes | One of: document-pipeline, enrich, extract, jp-bonus-net, jp-business-days, jp-company, jp-consumption-tax, jp-crypto-tax, jp-dependent-threshold, jp-mortgage, jp-overtime-wage, jp-payroll-net, jp-payroll-suite, jp-payslip-audit, jp-retirement-tax, jp-social-insurance, meal-vision, ocr, parse, pdf-info, pdf-merge, pdf-pages, portrait-analysis, report-pack, structured, style-profile, style-report, verify. Product id (see the enum) |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/closed-world, so safety is covered. The description adds genuinely useful behavioral context beyond that: the payload is a *recorded* production response, it is free, and it is flagged with sample:true, which tells the agent the data is illustrative and not live processing of its own input.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The first sentence is well front-loaded and earns its place, but the trailing 'Available: ...' clause reprints all 28 enum members that already appear in the schema, roughly doubling the length with zero added information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and the single parameter is fully documented. The description covers what the sample is, where it comes from, and how it is flagged, leaving only minor gaps (e.g. whether the sample corresponds to the same shape as the live paid call).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single 'product' parameter is a fully enumerated, documented string, so the schema carries the semantics. The description's product list simply restates the same enum values verbatim and adds no syntax, format, or selection meaning beyond it — baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Free recorded sample response for a paid product') and makes the scope explicit: it returns a preview of the exact response shape rather than doing the work. This cleanly separates it from the paid sibling tools (document_pipeline, enrich_company, ocr_image, etc.), which an agent can distinguish without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear selection context: 'see the exact response shape before paying anything', i.e. call this when previewing a paid product's output rather than invoking the paid tool. It does not name an explicit alternative or a when-not-to-use condition, so it falls short of the top band.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
meal_visionMeal VisionAIdempotentInspect
Analyze a meal photo to itemized nutrition JSON: dishes, portions, kcal, macros with per-item confidence, reference-object scale calibration, scene-complexity detection, a disclosed calibrated kcal range, PFC balance ratios and alcohol-aware 4/4/9 cross-checks. Calibrated on 30 weighed meals (range contained truth in 26/30). Every call is a 3-run consensus with disclosed spread + item agreement. $0.05/image.
| Name | Required | Description | Default |
|---|---|---|---|
| hints | No | cuisine/context hint, e.g. 'Japanese teishoku, small diet portions' - measurably improves accuracy on regional home-style meals | |
| image_url | No | Absolute http(s) URL of the image (JPEG/PNG/WebP) | |
| pack_code | No | retry credit issued after an unbilled failed call (replaces payment) | |
| x_payment | No | Optional: 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_base64 | No | Base64-encoded image bytes (alternative to image_url) |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile, and the description adds genuinely useful behavior the annotations cannot convey: every call is a 3-run consensus with disclosed spread and item agreement, the calibrated range contained truth in 26/30 weighed meals, and the cost is $0.05/image. Missing is any statement of what happens on failure/retry beyond the pack_code note in the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the core purpose in the first clause, followed by output contents, calibration evidence, consensus behavior and price. Three of the five sentences earn their place; the dense feature list ('PFC balance ratios and alcohol-aware 4/4/9 cross-checks') drifts toward marketing padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return shape need not be re-explained, and the description still covers cost, consensus methodology and calibration honesty. The main gap is routing guidance relative to the many sibling extraction/OCR tools, which is not addressed at all.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the five parameters (hints, image_url, image_base64, x_payment, pack_code) are already fully documented in the schema. The description adds almost no parameter-level meaning beyond echoing that nutrition output is produced, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Analyze a meal photo to itemized nutrition JSON') plus an enumerated scope of outputs (dishes, portions, kcal, macros, confidence). That is clearly distinguishable from siblings like ocr_image, portrait_analysis and document_pipeline without opening any schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the output description and the hints note ('measurably improves accuracy on regional home-style meals'). It never says when to pick this over ocr_image or structured_extract, and gives no exclusions or prerequisites beyond the payment mechanics that live in the schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
portrait_analysisPortrait AnalysisAIdempotentInspect
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.
| Name | Required | Description | Default |
|---|---|---|---|
| style | No | One of: feminine, masculine, neutral. Styling context: feminine, masculine or neutral | neutral |
| images | No | up to 3 of {image_url|image_base64}; different lighting recommended | |
| image_url | No | Absolute http(s) URL of the image (JPEG/PNG/WebP) | |
| pack_code | No | retry credit issued after an unbilled failed call (replaces payment) | |
| x_payment | No | Optional: 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_base64 | No | Base64-encoded image bytes (alternative to image_url) |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare safety hints (readOnlyHint=false, idempotentHint=true, destructiveHint=false, openWorldHint=true). The description adds real behavioral context beyond them: no facial identification is performed, images are not stored, and the call has a flat $0.05 cost. The billing side effect also helps explain the readOnlyHint=false flag rather than contradicting it.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with what the tool does, then privacy and pricing facts. Dense but every clause carries information; no filler or restated boilerplate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained. The description covers method, input limits, privacy, and cost, which is sufficient for invocation; the only gap is routing guidance against sibling analysis tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description reinforces two parameter constraints — the 1-3 image limit and the recommendation for differing lighting across photos — which maps to the 'images' array, but adds no syntax or format detail beyond what the schema already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource ('Personal color analysis from 1-3 portraits') and details the mechanism (CIELAB/ITA pixel colorimetry plus vision-model cross-check producing a 4-season verdict). This clearly differentiates it from siblings like portrait_precheck, style_profile, and style_report.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the described pipeline and the '1-3 portraits' input constraint, but the description never says when to pick this over portrait_precheck or style_profile, nor does it state exclusions or prerequisites. An agent must infer routing from sibling names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
portrait_precheckCheck a portrait photo (free)ARead-onlyIdempotentInspect
FREE analyzability check before paying for portrait_analysis: is a face detectable, is the photo quality good enough (clipping/color cast)? Deterministic, no LLM. 10/hour/IP.
| Name | Required | Description | Default |
|---|---|---|---|
| image_url | No | Absolute http(s) URL of the image (JPEG/PNG/WebP) | |
| image_base64 | No | Base64-encoded image bytes (alternative to image_url) |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes beyond annotations by disclosing that the check is deterministic and uses no LLM, and by stating a concrete rate limit of 10/hour/IP. Annotations already cover safety traits like read-only and idempotent, and the description adds useful operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the free pre-check purpose, then tightly lists the checks, deterministic nature, and rate limit. Every clause earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter pre-check tool with full schema coverage and an output schema, the description covers purpose, usage routing, determinism, and rate limit. Nothing essential for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are fully documented there, so the description is not required to add parameter meaning. It does not add syntax or format details beyond the schema, which is the baseline-3 case.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: a free analyzability check on a portrait photo, including what it verifies (face detection, quality issues like clipping/color cast). It explicitly positions itself as distinct from portrait_analysis by being the pre-check before paying.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Names the alternative tool portrait_analysis and states the condition for using this one: before paying for the full analysis. This gives an agent a clear routing rule without needing to inspect either schema.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
report_packReport PackAIdempotentInspect
Volume pricing for style_report: one $19.90 payment returns 10 single-use credit codes ($1.99/unit vs $2.99 single, en or ja, no expiry). Treat codes like cash.
| Name | Required | Description | Default |
|---|---|---|---|
| x_payment | No | Optional: 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. |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (non-readonly, open-world, idempotent, non-destructive), and the description adds genuinely useful behavior: codes are single-use, no expiry, offered in en or ja, and 'treat codes like cash' warns of value-loss risk. The payment/x402 mechanics themselves live in the schema rather than the description, which is acceptable given annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that leads with the core offer and packs pricing, unit count, languages, expiry, and a cautionary note efficiently. Dense but readable; nothing wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, and the description covers pricing, unit economics, language options, and expiry. The only minor gap is that the actual acquisition/payment flow is delegated entirely to the schema, but that is reasonable here.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There is only one optional parameter and schema coverage is 100%, so the x_payment semantics (omit to receive payment requirements without being charged) are already fully documented. The description's '$19.90 payment' ties loosely to that parameter but adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource and verb-act: purchasing a volume bundle of credit codes for style_report at $19.90 for 10 units. It names the sibling product (style_report) and contrasts unit pricing ($1.99 vs $2.99 single), so an agent can distinguish this pack purchase from the single-report tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The price comparison ($1.99/unit vs $2.99 single) implies 'use this when buying multiple reports', but there is no explicit when-to-use or when-not-to-use statement, nor a named alternative. Usage is left to inference from the pricing hint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
style_profileStyle ProfileAIdempotentInspect
Integrated styling verdict: seasonal color (measured colorimetry consensus) + face-impression zone (published geometry rules) + body frame + integration rules (palette subset, taste, silhouette, modifiers). 1-3 face photos, optional full-body + questionnaire. Flat $0.05/call.
| Name | Required | Description | Default |
|---|---|---|---|
| style | No | One of: feminine, masculine, neutral. Styling context: feminine, masculine or neutral | neutral |
| images | No | Up to 3 objects {image_url | image_base64} | |
| image_url | No | Absolute http(s) URL of the image (JPEG/PNG/WebP) | |
| x_payment | No | Optional: 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_base64 | No | Base64-encoded image bytes (alternative to image_url) | |
| questionnaire | No | Optional frame questionnaire answers (see /catalog input spec) | |
| body_image_url | No | Optional full-body photo URL for frame estimation | |
| body_image_base64 | No | See the product's input spec in /catalog |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (idempotent, non-destructive, open-world), so the bar is lower. The description still adds genuinely useful behavioral context beyond them: the flat $0.05/call cost and the photo-count bound. It does not disclose output shape, but an output schema exists to carry that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences that front-load the verdict composition before inputs and pricing. The parenthetical qualifiers are information-rich rather than filler, though the first sentence is heavy enough to slow parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For an 8-parameter, multi-photo tool with a nested questionnaire and an output schema, the description covers the essential inputs and cost, and the schema handles payment mechanics and return values. Only a brief note on the payment-requirement flow would make it fully self-contained.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the parameters are already documented. The description's '1-3 face photos, optional full-body + questionnaire' only restates what the schema says and adds no syntax or format detail beyond it, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a concrete deliverable (a combined seasonal-color + face-impression + body-frame styling verdict) with the four component rule sets spelled out, so an agent knows what it produces. It also implicitly distinguishes itself from portrait_analysis by being 'integrated', but it never explicitly contrasts with the sibling style_report, leaving some ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It states the input shape (1-3 face photos, optional full-body + questionnaire) and the price, which implies when the tool is applicable. However, it gives no explicit when-to-use vs alternatives or when-not guidance relative to siblings like style_report or portrait_analysis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
style_reportStyle ReportAIdempotentInspect
Client-ready deliverable: the style-profile analysis rendered as a finished English PDF report (palette with color names, style-aware outfit formulas, virtual draping boards with disclosed candidate conflicts, honest confidence) returned as report_pdf_base64 + full profile JSON. For agents serving human end-clients. Flat $2.99/call, or $1.99/unit with a prepaid report_pack credit (pass pack_code).
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | client name printed on the report (same field as REST; client_name is accepted as an alias) | |
| style | No | One of: feminine, masculine, neutral. Styling context: feminine, masculine or neutral | neutral |
| images | No | 1-3 face photos | |
| language | No | report language | en |
| image_url | No | Absolute http(s) URL of the image (JPEG/PNG/WebP) | |
| pack_code | No | prepaid credit from report_pack (replaces payment) | |
| x_payment | No | Optional: 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_base64 | No | Base64-encoded image bytes (alternative to image_url) | |
| questionnaire | No | optional answers (see /catalog style-report input) | |
| body_image_url | No | optional full-body photo URL (body-shape layer) | |
| body_image_base64 | No | optional full-body photo as base64 |
Output Schema
| Name | Required | Description |
|---|---|---|
| body | Yes | JSON body of the underlying call (see /samples/{product} for each product's shape) |
| status | Yes | HTTP status of the underlying call (200 result, 402 payment terms, 4xx input error) |
| how_to_pay | No | |
| receipt_id | No | set on paid results; free re-fetch via get_receipt |
| payment_required | No | true when status is 402: body holds x402 payment terms, not a result. Pay and call again with x_payment |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds economically important behavior that annotations do not cover: flat $2.99 per call versus $1.99/unit with a prepaid report_pack credit, and the fact that pack_code replaces payment. It also signals output qualities (disclosed candidate conflicts, honest confidence). It stops short of describing turn-around, failure/refund behavior, or what the uncharged x_payment probe returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The deliverable is front-loaded in the first clause, followed by contents, audience, and pricing in tight succession with no filler. Dense but well-ordered; slightly long compound sentences keep it from a 5.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, return values need not be explained, and the description covers the deliverable, audience, and cost model for an 11-param paid tool. One gap: it advertises an "English PDF report" while the language enum also allows "ja", which could mislead an agent about localization support.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 name, style, language, image sources, and payment fields. The description only reinforces pack_code's role and the pricing relationship, adding little syntax or format meaning beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific deliverable (a finished PDF style report) and enumerates its contents (palette, outfit formulas, draping boards, confidence) plus the return payload (report_pdf_base64 + profile JSON). It is clearly distinct from the JSON-only style_profile sibling in spirit, but never names an alternative, so differentiation is left to inference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
"For agents serving human end-clients" gives a target audience, which implies when it is appropriate, but there is no explicit when-not, no prerequisites, and no routing between this tool and style_profile or report_pack. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
9 tool updates
- First observed
get_catalog - First observed
get_receipt - First observed
get_sample - First observed
meal_vision - First observed
portrait_analysis - First observed
portrait_precheck - First observed
report_pack - First observed
style_profile - First observed
style_report
Related MCP Connectors
63 pay-per-call tools for agents: vision, text, data, web, blockchain. USDC on Base via x402.
Web extraction, OCR (Japanese-strong), invoice and company data for AI agents. x402, no API key.
Documents and web for AI agents: PDF parse, OCR, web extract, invoice checks. x402, no API key.
141Paid AI image/video generation for agents — x402 USDC or API key, no account needed.
Related MCP Servers
- AlicenseAqualityDmaintenanceUSDA nutrition API optimized for AI agents. x402 + USDC on Base41MIT
- FlicenseNot gradedqualityBmaintenancePay-per-call structured data for autonomous AI agents. x402-metered, MCP-native.-
- AlicenseNot gradedqualityAmaintenancePay-per-call tools for AI agents via x402 (USDC on Base): web-to-Markdown, PDF, provenance (human vs synthetic), trusted lookup with citations, a 3.9M-business global directory, LatAm ID validators, agent-forged tools and 2,000+ proxied x402 services. No API keys, charged only on success, free trial without a wallet. Remote: https://toll402.dev/mcp · Local: npx -y toll402-mcpMIT
- AlicenseAqualityDmaintenancesecurity tools for AI agents: URL safety scanning, prompt injection detection (200+ patterns), email/password breach checks via HIBP, domain & IP reputation analysis, and AI skill supply chain scanning. Free tier (3 calls/day) or pay-per-request with USDC micropayments via x402.915 npm1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.