← The evidence ledger
Evidence row 1034244
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 754e55ee-f58e-48ec-95f9-653a73f5135c
- Recorded
- Previous row
- #996780
- Body SHA-256
- c5458c8c7dbfed9de656d01eea1c046d52790238c70d209d5f1b97f011c1a7f9
- Leaf
- 0x71b568bd3e0819697871b4b112664dbdccc613388593c38f8466a174ce099cef
What was observed
{
"count": 12,
"tools": [
{
"description": "Cancel an eligible purchase at its current revision. Before payment, only whole-purchase cancellation is supported: omit card_ids. After payment, supply returned card_ids to cancel only eligible items, or omit them for the whole eligible purchase. The service verifies ownership and each fulfillment cutoff, and returns actual refund state. Requires the parent order_id and private order_access_token.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"card_ids": {
"description": "Omit to cancel the whole eligible purchase. For a paid purchase, list the returned card IDs to cancel only those eligible items. The service verifies every ID belongs to this order.",
"items": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"maxItems": 500,
"minItems": 1,
"type": "array"
},
"expected_revision": {
"exclusiveMinimum": 0,
"maximum": 2147483646,
"type": "integer"
},
"order_access_token": {
"description": "Private purchase capability. Keep it secret; never put it in a public URL or log.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"order_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"order_id",
"order_access_token",
"expected_revision"
],
"type": "object"
},
"name": "cancel_order"
},
{
"description": "Compose an immutable private card face from uploads in this scope and/or a QR link (a QR-only card needs no upload). Generate a UUID composition_id; retry only with the same ID and identical fields. Returns design_key and design_version 1 for prepare_order.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"artwork_asset_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"composition_id": {
"description": "Caller-generated UUID for this composition. Retrying with the same ID and identical fields returns the same card (reused: true); the same ID with different fields is CONFLICT, so use a new UUID for a different card.",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"logo_asset_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"order_access_token": {
"description": "The private capability returned by open_private_content. Never invent one.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"qr_url": {
"description": "HTTP(S) destination printed as a QR code. Not fetched.",
"maxLength": 512,
"type": "string"
},
"scope_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"title": {
"description": "Short private name for this card, shown to the buyer only.",
"maxLength": 120,
"minLength": 1,
"type": "string"
}
},
"required": [
"scope_id",
"order_access_token",
"composition_id",
"title"
],
"type": "object"
},
"name": "compose_private_card"
},
{
"description": "Request deletion of unused private uploads in this scope at the buyer’s request. Content required by a paid open order is kept until that order is completed or cancelled and refunded.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"order_access_token": {
"description": "The private capability returned by open_private_content. Never invent one.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"scope_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"scope_id",
"order_access_token"
],
"type": "object"
},
"name": "delete_private_content"
},
{
"description": "Start a card from the buyer’s own photo, artwork, logo or QR link. Returns a private 24-hour upload_url for the buyer to open and choose the file themselves, plus the scope_id and order_access_token to keep for the order. Pass an existing unpaid draft’s order_id and order_access_token together to add a picture to that draft and then revise_order; omit both for a new scope. Assistants cannot upload conversation attachments; send the link. Not needed for catalog cards.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"order_access_token": {
"description": "The private capability returned by open_private_content. Never invent one.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"order_id": {
"description": "With order_access_token: reopen the private scope of an existing unpaid draft so the buyer can add a picture to it, then replace its cards with revise_order. Omit both to start a new scope.",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"type": "object"
},
"name": "open_private_content"
},
{
"description": "Start or resume payment for this exact prepared order. Show the exact amount and any returned action_url so the buyer can securely connect Link, approve this purchase, or complete bank authentication. Only the buyer can grant permission; do not ask them for card details, wallet credentials or payment tokens in chat. Call again after they complete that step, respecting retry_after_seconds. Report payment complete only when status is paid; processing and requires_action are not payment success. Changing the order requires a new quote and approval. Payment and printing/mailing are separate; use read_order for fulfillment.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"expected_revision": {
"exclusiveMinimum": 0,
"maximum": 2147483646,
"type": "integer"
},
"order_access_token": {
"description": "Private purchase capability. Keep it secret; never put it in a public URL or log.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"order_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"order_id",
"order_access_token",
"expected_revision"
],
"type": "object"
},
"name": "pay_order"
},
{
"description": "Prepare one unpaid purchase of 1–500 cards, mixed across any occasions, designs, formats, messages, recipients and dates. One card uses the same cards array. Each card is priced for its own recipient country. Returns the order and its card records, the exact sum of current per-card prices, one review_url for buyer review and payment, and a private order_access_token. When preview_available is true, optional preview_card can show the finished card; images render only when requested. No charge or mailing is authorized here. The 500-card/4-MiB bounds are technical request limits. Use a caller-generated UUID request_id. Omit order_access_token on the first call so Paddock securely generates and returns it; preserve the returned token privately. Never invent or type a random-looking token. Retry the same request_id only with the exact token and unchanged cards. If the first response is lost before saving the server-generated token, use a new request_id for another unpaid purchase. Only clients with a cryptographic random generator may optionally pre-generate and privately store 32 random bytes encoded as 43 base64url characters for first-response recovery. Validation issues identify zero-based card indices without copying private content.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"cards": {
"description": "One purchase containing 1–500 explicit card compositions in their supplied order. Mix any supported designs, formats, messages, recipients, occasions and dates. Do not group purchases by occasion. One card uses this same array.",
"items": {
"additionalProperties": false,
"description": "One manual guest card. Each card may have its own artwork, format, message, recipient, optional occasion and timing. Existing destination/calendar rules apply. No member, Property, recipient, card or calendar-event IDs.",
"properties": {
"design_key": {
"maxLength": 160,
"minLength": 1,
"type": "string"
},
"design_version": {
"exclusiveMinimum": 0,
"maximum": 2147483646,
"type": "integer"
},
"format": {
"description": "Postcard, flat card in an envelope, or folded card in an envelope. Omit to select flat_card_in_envelope.",
"enum": [
"postcard",
"flat_card_in_envelope",
"folded_card_in_envelope"
],
"type": "string"
},
"include_paddock_gift": {
"description": "Include a complimentary personalized Paddock bookmark. For eligible new envelope orders, omission includes it; set false to opt out. The bookmark has the chosen artwork, a gift message naming the sender, and a unique QR code for one free card, including artist cards. Read the order’s returned paddock_gift: included, and omission_reason when it is not included. Explain it when useful or asked; no separate question or announcement is needed.",
"type": "boolean"
},
"message": {
"description": "Body of the personal message, at most 2000 Unicode characters. Paddock prints the greeting \"Dear {greeting_name or display_name},\" above it automatically, so do not start the message with a salutation. Printed artwork wording is separate.",
"maxLength": 4000,
"type": "string"
},
"message_font": {
"enum": [
"serif",
"sans_serif",
"old_school",
"handwriting"
],
"type": "string"
},
"occasion": {
"additionalProperties": false,
"description": "Optional occasion and timing context, independent of the selected artwork. Omit for an ordinary just-because card.",
"properties": {
"calendar": {
"const": "us-western-v1",
"type": "string"
},
"day": {
"maximum": 31,
"minimum": 1,
"type": "integer"
},
"kind": {
"description": "Exact catalog occasion ID, such as birthday, thank_you or just_because. Use just_because with send_on for a one-time mailing date. Use underscores, not display labels or hyphens.",
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"month": {
"maximum": 12,
"minimum": 1,
"type": "integer"
},
"send_on": {
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"kind",
"calendar"
],
"type": "object"
},
"recipient": {
"additionalProperties": false,
"properties": {
"address_confirmed": {
"const": true,
"type": "boolean"
},
"anniversary_day": {
"maximum": 31,
"minimum": 0,
"type": "integer"
},
"anniversary_month": {
"maximum": 12,
"minimum": 0,
"type": "integer"
},
"birthday_day": {
"default": 0,
"maximum": 31,
"minimum": 0,
"type": "integer"
},
"birthday_month": {
"default": 0,
"maximum": 12,
"minimum": 0,
"type": "integer"
},
"birthday_year": {
"anyOf": [
{
"maximum": 9999,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
]
},
"display_name": {
"description": "Name on the envelope or address panel.",
"maxLength": 240,
"type": "string"
},
"greeting_name": {
"description": "Name printed in the automatic greeting, such as Ida for \"Dear Ida,\". Defaults to display_name.",
"maxLength": 240,
"type": "string"
},
"mailing_address": {
"additionalProperties": false,
"properties": {
"country_code": {
"pattern": "^[A-Z]{2}$",
"type": "string"
},
"line1": {
"maxLength": 320,
"type": "string"
},
"line2": {
"default": "",
"description": "Optional second line, such as an apartment or suite. Omitted means empty.",
"maxLength": 320,
"type": "string"
},
"locality": {
"maxLength": 320,
"type": "string"
},
"postal_code": {
"maxLength": 48,
"type": "string"
},
"region": {
"maxLength": 160,
"type": "string"
}
},
"required": [
"line1",
"locality",
"region",
"postal_code",
"country_code"
],
"type": "object"
},
"origin": {
"const": "manual",
"type": "string"
}
},
"required": [
"display_name",
"mailing_address",
"address_confirmed",
"origin"
],
"type": "object"
},
"return_address": {
"additionalProperties": false,
"description": "Required for every card format: the sender’s name and return mailing address supplied by the buyer. Not automatically obtained from billing details.",
"properties": {
"display_name": {
"maxLength": 240,
"type": "string"
},
"mailing_address": {
"additionalProperties": false,
"properties": {
"country_code": {
"pattern": "^[A-Z]{2}$",
"type": "string"
},
"line1": {
"maxLength": 320,
"type": "string"
},
"line2": {
"default": "",
"description": "Optional second line, such as an apartment or suite. Omitted means empty.",
"maxLength": 320,
"type": "string"
},
"locality": {
"maxLength": 320,
"type": "string"
},
"postal_code": {
"maxLength": 48,
"type": "string"
},
"region": {
"maxLength": 160,
"type": "string"
}
},
"required": [
"line1",
"locality",
"region",
"postal_code",
"country_code"
],
"type": "object"
},
"source_kind": {
"const": "manual",
"type": "string"
}
},
"required": [
"display_name",
"mailing_address",
"source_kind"
],
"type": "object"
}
},
"required": [
"design_key",
"design_version",
"message",
"recipient",
"return_address"
],
"type": "object"
},
"maxItems": 500,
"minItems": 1,
"type": "array"
},
"order_access_token": {
"description": "Omit on the first call so Paddock securely generates and returns the private token. Never invent or type a random-looking token. On retries use the exact returned token, same request_id and unchanged cards. Only clients with a cryptographic random generator may pre-generate 32 random bytes encoded as 43 base64url characters for first-response recovery. Existing purchase capabilities cannot be replaced.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"request_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"request_id",
"cards"
],
"type": "object"
},
"name": "prepare_order"
},
{
"description": "Optional, never required to buy. Returns one prepared card exactly as it will print, outside and inside, as images at the current order revision; card_id is required when the order has several cards. If the order changes, preview again. preview_url shows the same images in a browser. Nothing is charged, changed or mailed.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"card_id": {
"description": "Required when the order has more than one card.",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"expected_revision": {
"description": "Fail with CONFLICT if the order revision differs, so the buyer approves what they saw.",
"exclusiveMinimum": 0,
"maximum": 2147483646,
"type": "integer"
},
"faces": {
"default": "both",
"enum": [
"outside",
"inside",
"both"
],
"type": "string"
},
"order_access_token": {
"description": "The private capability returned by prepare_order. Never invent one.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"order_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"order_id",
"order_access_token"
],
"type": "object"
},
"name": "preview_card"
},
{
"description": "Read a private purchase and its order.cards using the parent order_id and order_access_token. Payment, per-card production and mailing are distinct states.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"order_access_token": {
"description": "Private purchase capability. Keep it secret; never put it in a public URL or log.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"order_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"order_id",
"order_access_token"
],
"type": "object"
},
"name": "read_order"
},
{
"description": "List what the buyer uploaded and the private cards composed from it. Use each composition’s design_key with design_version 1 in prepare_order with request_id = scope_id and the same order_access_token, or in revise_order for an existing draft from this scope.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"order_access_token": {
"description": "The private capability returned by open_private_content. Never invent one.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"scope_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"scope_id",
"order_access_token"
],
"type": "object"
},
"name": "read_private_content"
},
{
"description": "Optionally report a technical problem, suggestion category or neutral successful outcome using fixed choices. Never required to buy a card. Do not include personal content, credentials, links, conversations or hidden reasoning. Reports are unverified feedback, not proof of payment or mailing.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"category": {
"enum": [
"no_suitable_card",
"irrelevant_results",
"unclear_result",
"preview_unavailable",
"request_rejected",
"slow_response",
"unexpected_error",
"recovery_failed",
"broader_selection",
"clearer_results",
"better_recovery",
"simpler_checkout",
"faster_responses",
"better_documentation",
"completed_as_expected"
],
"type": "string"
},
"code": {
"default": "none",
"description": "Reported public error code only; no provider error text.",
"enum": [
"none",
"INVALID_REQUEST",
"CARD_VALIDATION_FAILED",
"NOT_FOUND",
"CONFLICT",
"GONE",
"CATALOG_ARTWORK_UNAVAILABLE",
"CARD_SAMPLE_ACCEPTANCE_REQUIRED",
"CARD_ARTWORK_ACCEPTANCE_REQUIRED",
"ARTIST_PRINT_SETUP_REQUIRED",
"DESTINATION_INVALID",
"DESTINATION_SUSPENDED",
"DESTINATION_REVIEW_REQUIRED",
"MESSAGE_DOES_NOT_FIT",
"RETURN_ADDRESS_REQUIRED",
"PRICE_CHANGED",
"QUOTE_EXPIRED",
"PAYMENT_UNAVAILABLE",
"CHECKOUT_UNAVAILABLE",
"CANCELLATION_NOT_ALLOWED",
"REFUND_NOT_ELIGIBLE",
"SERVICE_PAUSED",
"TRY_LATER",
"UNAVAILABLE"
],
"type": "string"
},
"field": {
"default": "none",
"description": "Reported field name only; never its value.",
"enum": [
"none",
"design_key",
"design_version",
"format",
"message",
"recipient.mailing_address",
"return_address",
"occasion",
"price",
"printed_text",
"availability",
"preview"
],
"type": "string"
},
"kind": {
"enum": [
"problem",
"suggestion",
"success"
],
"type": "string"
},
"operation": {
"enum": [
"search_cards",
"prepare_order",
"read_order",
"cancel_order",
"checkout",
"connection",
"documentation"
],
"type": "string"
},
"severity": {
"enum": [
"none",
"minor",
"major",
"blocked"
],
"type": "string"
}
},
"required": [
"kind",
"operation",
"category",
"severity"
],
"type": "object"
},
"name": "report_feedback"
},
{
"description": "Replace a prepared order before any payment has started. Send the complete desired cards array, including unchanged cards, with the original order_id, order_access_token, expected_revision and a new request_id. Change artwork, format, message, address, timing, or batch contents. Validation happens before the old draft is cancelled; one atomic operation returns a new order, fresh price, private token and review_url. When preview_available is true, optional preview_card can show the finished card. Prior payment approval does not authorize the replacement. Retain private art or add immutable art using open_private_content for the original draft first. If payment has started or is uncertain, read_order and resolve it before changing anything. Retry the identical request after a lost response; after success use the returned order and token for later edits, previews and payment.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"cards": {
"description": "One purchase containing 1–500 explicit card compositions in their supplied order. Mix any supported designs, formats, messages, recipients, occasions and dates. Do not group purchases by occasion. One card uses this same array.",
"items": {
"additionalProperties": false,
"description": "One manual guest card. Each card may have its own artwork, format, message, recipient, optional occasion and timing. Existing destination/calendar rules apply. No member, Property, recipient, card or calendar-event IDs.",
"properties": {
"design_key": {
"maxLength": 160,
"minLength": 1,
"type": "string"
},
"design_version": {
"exclusiveMinimum": 0,
"maximum": 2147483646,
"type": "integer"
},
"format": {
"description": "Postcard, flat card in an envelope, or folded card in an envelope. Omit to select flat_card_in_envelope.",
"enum": [
"postcard",
"flat_card_in_envelope",
"folded_card_in_envelope"
],
"type": "string"
},
"include_paddock_gift": {
"description": "Include a complimentary personalized Paddock bookmark. For eligible new envelope orders, omission includes it; set false to opt out. The bookmark has the chosen artwork, a gift message naming the sender, and a unique QR code for one free card, including artist cards. Read the order’s returned paddock_gift: included, and omission_reason when it is not included. Explain it when useful or asked; no separate question or announcement is needed.",
"type": "boolean"
},
"message": {
"description": "Body of the personal message, at most 2000 Unicode characters. Paddock prints the greeting \"Dear {greeting_name or display_name},\" above it automatically, so do not start the message with a salutation. Printed artwork wording is separate.",
"maxLength": 4000,
"type": "string"
},
"message_font": {
"enum": [
"serif",
"sans_serif",
"old_school",
"handwriting"
],
"type": "string"
},
"occasion": {
"additionalProperties": false,
"description": "Optional occasion and timing context, independent of the selected artwork. Omit for an ordinary just-because card.",
"properties": {
"calendar": {
"const": "us-western-v1",
"type": "string"
},
"day": {
"maximum": 31,
"minimum": 1,
"type": "integer"
},
"kind": {
"description": "Exact catalog occasion ID, such as birthday, thank_you or just_because. Use just_because with send_on for a one-time mailing date. Use underscores, not display labels or hyphens.",
"maxLength": 100,
"minLength": 1,
"type": "string"
},
"month": {
"maximum": 12,
"minimum": 1,
"type": "integer"
},
"send_on": {
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
}
},
"required": [
"kind",
"calendar"
],
"type": "object"
},
"recipient": {
"additionalProperties": false,
"properties": {
"address_confirmed": {
"const": true,
"type": "boolean"
},
"anniversary_day": {
"maximum": 31,
"minimum": 0,
"type": "integer"
},
"anniversary_month": {
"maximum": 12,
"minimum": 0,
"type": "integer"
},
"birthday_day": {
"default": 0,
"maximum": 31,
"minimum": 0,
"type": "integer"
},
"birthday_month": {
"default": 0,
"maximum": 12,
"minimum": 0,
"type": "integer"
},
"birthday_year": {
"anyOf": [
{
"maximum": 9999,
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
]
},
"display_name": {
"description": "Name on the envelope or address panel.",
"maxLength": 240,
"type": "string"
},
"greeting_name": {
"description": "Name printed in the automatic greeting, such as Ida for \"Dear Ida,\". Defaults to display_name.",
"maxLength": 240,
"type": "string"
},
"mailing_address": {
"additionalProperties": false,
"properties": {
"country_code": {
"pattern": "^[A-Z]{2}$",
"type": "string"
},
"line1": {
"maxLength": 320,
"type": "string"
},
"line2": {
"default": "",
"description": "Optional second line, such as an apartment or suite. Omitted means empty.",
"maxLength": 320,
"type": "string"
},
"locality": {
"maxLength": 320,
"type": "string"
},
"postal_code": {
"maxLength": 48,
"type": "string"
},
"region": {
"maxLength": 160,
"type": "string"
}
},
"required": [
"line1",
"locality",
"region",
"postal_code",
"country_code"
],
"type": "object"
},
"origin": {
"const": "manual",
"type": "string"
}
},
"required": [
"display_name",
"mailing_address",
"address_confirmed",
"origin"
],
"type": "object"
},
"return_address": {
"additionalProperties": false,
"description": "Required for every card format: the sender’s name and return mailing address supplied by the buyer. Not automatically obtained from billing details.",
"properties": {
"display_name": {
"maxLength": 240,
"type": "string"
},
"mailing_address": {
"additionalProperties": false,
"properties": {
"country_code": {
"pattern": "^[A-Z]{2}$",
"type": "string"
},
"line1": {
"maxLength": 320,
"type": "string"
},
"line2": {
"default": "",
"description": "Optional second line, such as an apartment or suite. Omitted means empty.",
"maxLength": 320,
"type": "string"
},
"locality": {
"maxLength": 320,
"type": "string"
},
"postal_code": {
"maxLength": 48,
"type": "string"
},
"region": {
"maxLength": 160,
"type": "string"
}
},
"required": [
"line1",
"locality",
"region",
"postal_code",
"country_code"
],
"type": "object"
},
"source_kind": {
"const": "manual",
"type": "string"
}
},
"required": [
"display_name",
"mailing_address",
"source_kind"
],
"type": "object"
}
},
"required": [
"design_key",
"design_version",
"message",
"recipient",
"return_address"
],
"type": "object"
},
"maxItems": 500,
"minItems": 1,
"type": "array"
},
"expected_revision": {
"exclusiveMinimum": 0,
"maximum": 2147483646,
"type": "integer"
},
"order_access_token": {
"description": "Private purchase capability. Keep it secret; never put it in a public URL or log.",
"pattern": "^[A-Za-z0-9_-]{43}$",
"type": "string"
},
"order_id": {
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
},
"request_id": {
"description": "A new UUID for this replacement. Reuse it with the identical full cards array and original order capability to recover a lost response. After success, later edits target the returned replacement order.",
"pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
"type": "string"
}
},
"required": [
"request_id",
"cards",
"order_id",
"order_access_token",
"expected_revision"
],
"type": "object"
},
"name": "revise_order"
},
{
"description": "Find currently available ordinary and artist cards by occasion, tone, format, artist or budget. Returns three concise matches by default; use next_cursor for more. Prices follow the recipient country: pass destination_country when known, and read pricing_destination and each format’s cents_by_destination. Each response states the physical specifications of the three formats once in format_specs (paper, finished and open size, message surface, envelope); include_specs adds the published details. Public browsing needs no account or key.",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"properties": {
"artist": {
"maxLength": 120,
"type": "string"
},
"cursor": {
"pattern": "^(?:\\d{1,6})?$",
"type": "string"
},
"destination_country": {
"description": "Recipient country as a two-letter ISO code, such as US or CA. Prices depend on it: US addresses have agent-channel introductory prices and other countries the standard prices. Omit it to see US prices with each format’s other-destination amount listed; the prepared order prices every card by its own recipient address.",
"pattern": "^[A-Z]{2}$",
"type": "string"
},
"format": {
"description": "Postcard, flat card in an envelope, or folded card in an envelope. Omit to select flat_card_in_envelope.",
"enum": [
"postcard",
"flat_card_in_envelope",
"folded_card_in_envelope"
],
"type": "string"
},
"humor": {
"enum": [
"any",
"none",
"light",
"playful",
"funny"
],
"type": "string"
},
"include_specs": {
"description": "Include available paper, finish and envelope details. Basic format specifications are always returned. A missing detail is unspecified.",
"type": "boolean"
},
"kind": {
"enum": [
"any",
"standard",
"artist"
],
"type": "string"
},
"limit": {
"default": 3,
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"max_price_cents": {
"description": "Budget per card for the selected format at the destination’s prices.",
"maximum": 1000000,
"minimum": 0,
"type": "integer"
},
"occasion": {
"maxLength": 100,
"type": "string"
},
"printed_text_contains": {
"description": "Required phrase in verified artwork lettering, matched without case sensitivity. This does not search the customizable message.",
"maxLength": 200,
"minLength": 1,
"type": "string"
},
"query": {
"maxLength": 300,
"type": "string"
},
"require_printed_text": {
"description": "Filter verified wording already printed in the artwork. Unknown wording does not match absent or present.",
"enum": [
"any",
"absent",
"present"
],
"type": "string"
},
"tone": {
"description": "Mood such as warm, cheerful, elegant or gentle. For funny cards, use humor instead.",
"maxLength": 40,
"type": "string"
}
},
"type": "object"
},
"name": "search_cards"
}
]
}What the leaf hashes
{"body":"c5458c8c7dbfed9de656d01eea1c046d52790238c70d209d5f1b97f011c1a7f9","id":1034244,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793290411009655,"prev":996780,"subject":"754e55ee-f58e-48ec-95f9-653a73f5135c","subject_kind":"endpoint"}Proof
Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.