Mart402 Vision
Server Details
Calibrated vision for AI agents: meal nutrition estimates, personal color analysis, an integrated styling profile and client-ready PDF style reports, with a free photo pre-check. x402 (USDC on Base), no API key; failed calls are never charged.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 9 tools
The tools mostly target distinct actions/resources: free discovery (catalog/sample/receipt/precheck), paid analyses (meal, portrait, style_profile), PDF delivery, and credit purchase. The trickiest boundary is style_profile vs style_report vs report_pack, but their descriptions include explicit 'choose this when' guidance.
All names are snake_case and descriptive; get_* marks free retrieval while noun_noun names mark product-style calls. It is not a strict verb_noun convention, but the naming is still predictable and readable.
Nine tools is well within a reasonable 3-15 range. Each tool maps to a distinct workflow step such as discovery, sampling, precheck, paid analysis, delivery, and credit/receipt handling, with no obvious padding.
Core vision workflows are covered, but get_catalog and get_sample advertise many paid products such as jp-*, document-pipeline, ocr, and others with no corresponding callable tools, creating dead ends. There is also no tool to list receipts or check prepaid credit balances.
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. Choose this when you need only the seasonal color verdict and palette as JSON. For the fuller styling verdict (face impression, body frame, silhouette) use style_profile; for a finished PDF for a human client use style_report.
| 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?
Goes well beyond the annotations by disclosing cost ($0.05/call), the x402 payment handshake (omitting x_payment returns payment requirements without being charged), retry-credit behavior via pack_code, and privacy guarantees ('no identification; images not stored'). It also flags cross-photo lighting consistency as part of processing, which an agent needs in order to submit valid inputs. Nothing here contradicts the readOnlyHint/openWorldHint/idempotentHint annotations.
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 method, cost, and privacy caveats are front-loaded before the routing sentence, and every sentence carries information. It is dense — the first sentence packs method, pipeline, and output into one clause — but not padded.
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 needn't be restated, and the description still names the verdict and palette contents. Combined with the payment mechanics, privacy statement, input-count guidance, and sibling routing, an agent has everything needed to call this correctly.
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 every parameter, and the description only echoes the '1-3 portraits' shape and the purpose of multi-image input. It adds marginal semantics (why multiple photos help) but no format or validation detail beyond the schema. 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?
States a specific verb and resource ('personal color analysis from 1-3 portraits') and explains the mechanism (CIELAB/ITA colorimetry cross-checked with vision-model attributes, deterministic rule table). It also explicitly names the sibling tools it is not, so an agent can distinguish it from style_profile and style_report 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?
Gives an explicit selection rule: 'Choose this when you need only the seasonal color verdict and palette as JSON,' then routes the two alternative needs to style_profile (fuller styling verdict) and style_report (PDF for a human client). When-to-use, when-not-to-use, and alternatives are all present.
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. Not an analysis: it buys prepaid style_report credits. Choose this only when you expect to produce several style_report PDFs; pass each code as pack_code to style_report.
| 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?
The annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so they already establish the safety profile. The description adds behavioral substance beyond them: the exact price, the fact that 10 single-use codes are returned, that the codes do not expire, that the codes should be treated like cash, and that each code must be passed to style_report as pack_code. It does not explain whether retrying after a charge could charge again, which is a minor gap against idempotentHint=true.
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 pricing and what-you-get information comes first, followed by the anti-confusion clarification and then the when-to-use guidance. The pricing parentheses are dense but carry real decision value; no sentence is filler.
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 the description need not explain the return shape. It covers pricing, what is delivered, code lifetime, and the handoff to style_report. It omits only the payment-requirements probe, which the schema's x_payment description already documents.
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 parameter, and schema coverage is 100%; the schema already explains the optional x_payment header and the flow for receiving payment requirements without being charged. The description adds no detail about x_payment itself, so the baseline 3 applies. The downstream integration note ('pass each code as pack_code to style_report') is helpful but describes the output codes, not this tool's input parameter.
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?
It states clearly that this is a volume-pricing purchase: one $19.90 payment yields 10 single-use style_report credit codes. It also explicitly distinguishes itself from its siblings, saying 'Not an analysis: it buys prepaid style_report credits' and pointing to style_report as the consumer of the codes.
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 gives a concrete condition for choosing this tool: 'Choose this only when you expect to produce several style_report PDFs.' It also implies the alternative by citing the $2.99 single-unit price. The condition that selects this tool is stated, not left to inference.
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. Choose this when you want the integrated styling analysis as JSON to use or render yourself; it is the same analysis that style_report turns into a PDF. For color only use portrait_analysis.
| 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 declare openWorldHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is partly covered. The description adds genuinely new behavior: a flat $0.05/call charge (non-read-only compute), input cardinality (1-3 face photos), and the exact analytical equivalence to style_report. It does not discuss failure modes for poor photos or image retention, leaving a small gap.
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 value proposition and component list are front-loaded, and the routing guidance comes last where it is needed. It is dense with domain jargon (colorimetry consensus, geometry rules) but no sentence is filler; a slightly tighter break into sentences would improve scanability.
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 cost, inputs, and sibling relationships are all covered. The questionnaire and body_image_base64 params defer to '/catalog input spec', an external reference the agent may not have loaded, which is the only notable gap.
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 explains every parameter, including the x_payment flow and image formats. The description only adds the '1-3 face photos, optional full-body + questionnaire' constraint, which is marginal over the schema's 'Up to 3 objects' note; 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 specific verb+resource ('Integrated styling verdict') and enumerates its components (seasonal color, face-impression zone, body frame, integration rules). It explicitly distinguishes itself from both style_report (PDF) and portrait_analysis (color only), so an agent can route correctly without opening schemas.
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?
'Choose this when you want the integrated styling analysis as JSON to use or render yourself' gives an explicit selection condition, and 'For color only use portrait_analysis' names the alternative and the case that selects it. The style_report relationship is also clarified as output-format-only, not analytical difference.
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 PDF report in English or Japanese (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). Choose this when the result goes to a HUMAN end-client as a finished document; if you will present the result yourself, style_profile returns the same analysis as JSON for less.
| 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 substantial context the annotations cannot carry: flat $2.99/call pricing, $1.99 with a prepaid report_pack credit, and the x_payment behavior where omitting the header returns payment requirements without being charged. It does not address whether a retried/duplicate call re-charges or how idempotency interacts with billing, which matters for a paid tool even though idempotentHint is set — that omission keeps it below a 5.
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 deliverable in the first clause, then the audience, then pricing, then the sibling comparison — a sensible priority order with no filler sentences. It is dense but slightly over-packed, with the report-contents parenthetical competing for attention in the opening sentence.
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 the description needn't enumerate return values (though it names report_pdf_base64 and profile JSON), and the payment and pack-credit story is fully explained. The gap is the 11-parameter input surface: the description never mentions that at least one of image_url/image_base64/images is required, leaving that constraint entirely to the schema for a complex, nested-object 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 description coverage is 100%, so the baseline is 3. The description reinforces two parameters (language en/ja, pack_code as prepaid credit replacing payment) but adds no syntax or format meaning beyond what the schema already documents, and says nothing about the at-least-one-image requirement encoded as x-required-one-of.
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 artifact: renders a style-profile analysis as a finished PDF report in English or Japanese, returned as report_pdf_base64 plus profile JSON. It enumerates the report contents (palette with color names, outfit formulas, draping boards, confidence) and explicitly names the sibling style_profile as the JSON-only alternative, so the agent can distinguish the two 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 an explicit decision rule: 'Choose this when the result goes to a HUMAN end-client as a finished document; if you will present the result yourself, style_profile returns the same analysis as JSON for less.' It also names the audience condition ('for agents serving human end-clients') and the cheaper path via pack_code, so when-to-use and when-not-to-use are both covered.
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
Publisher details
- Operator
- Mart402 · Publisher source
- Operator website
- https://mart402.com · Publisher source
- Vendor relationship
- First-party · Publisher source
- Documentation
- https://mart402.com/agents.md · Publisher source
- Trust center
- Not available
- Restrictions
- No account, API key or OAuth. Free tools work immediately. Each paid tool call requires an x402 payment in USDC on Base; calls without payment return the exact price and are never charged. · Publisher source
Related MCP Connectors
63 pay-per-call tools for agents: vision, text, data, web, blockchain. USDC on Base via x402.
Pay-per-call AI and media tools over x402. USDC on Base, no signup, no API key.
Pay-per-call tools for AI agents: product photos, documents, web pages, data. USDC via x402.
Pay-per-call crypto market intelligence for AI agents. USDC on Base via x402.
Related MCP Servers
- AlicenseAqualityDmaintenanceUSDA nutrition API optimized for AI agents. x402 + USDC on Base41MIT
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to discover and invoke x402-monetized computational engines for media geometry, measurements, JSON hygiene, and ComfyUI preflight audits, with USDC settlement on Base Mainnet.-
- AlicenseAqualityCmaintenancePay-per-call web page extraction, on-page SEO audits and text analysis for AI agents. Paid in USDC on Base via x402; no API keys, failed calls are not charged.4MIT
- FlicenseNot gradedqualityCmaintenancePay-per-call agent tools (web reader, page extract, email/domain/site/wallet/token checks, screenshot, PDF) via x402 USDC micropayments, with 3 free trial calls per wallet.-
Glama MCP Gateway
Add one secure layer between your agents and this server.