Skip to main content
Glama

create_test_outbound_mail

Create a sandbox outbound mail record without uploading a real document. The record is always test_mode=true, cost_cents=0, includes estimated_live_cost_cents and cost_breakdown, and queues a mail.submitted webhook. USPS First-Class Mail has a published $2.00 one-page baseline. Extra pages add configured printing plus any postage increase from weight. If an account's normal first-page formula is lower, cost_breakdown.first_class_baseline_adjustment_cents itemizes the difference separately from carrier postage. Color pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative. FedEx and UPS estimates use the same configured origin and destination zone/region logic as production; FedEx Overnight adds a fixed $18.00 after the otherwise-calculated carrier baseline and reports service_adjustment_cents: 1800. Use with a sandbox key to rehearse outbound workflows before sending real physical mail.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
colorNoColor pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative.
metadataNoArbitrary metadata echoed in responses and webhooks.
mail_classNoMail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. USPS First-Class Mail has a published $2.00 one-page baseline. Extra pages add configured printing plus any postage increase from weight. If an account's normal first-page formula is lower, cost_breakdown.first_class_baseline_adjustment_cents itemizes the difference separately from carrier postage. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally; fedex_overnight then adds a fixed $18.00 customer price adjustment (service_adjustment_cents: 1800). The same printing rates apply to every mail_class. Color pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative.first_class
page_countNoSimulated page count used for pricing.
agent_notesNoOptional facility/operator notes for the simulated mailpiece.
recipient_zipNoRecipient ZIP code. Affects estimated live postage, private-carrier zone, and FedEx local/regional/national area.94105
recipient_cityNoRecipient city.San Francisco
recipient_nameNoRecipient name for the simulated mailpiece. Optional when recipient_company is provided.Test Recipient
recipient_line1NoRecipient street line 1.123 Test Street
recipient_stateNoRecipient 2-letter state code.CA
recipient_companyNoCompany or organization line for the simulated mailpiece. Optional when recipient_name is provided.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYesCreated sandbox outbound mail job and webhook status.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed2 schema fields changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally; fedex_overnight then adds a fixed $18.00 customer price adjustment (service_adjustment_cents: 1800). The same printing rates apply to every mail_class. Color pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. USPS First-Class Mail has a published $2.00 one-page baseline. Extra pages add configured printing plus any postage increase from weight. If an account's normal first-page formula is lower, cost_breakdown.first_class_baseline_adjustment_cents itemizes the difference separately from carrier postage. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally; fedex_overnight then adds a fixed $18.00 customer price adjustment (service_adjustment_cents: 1800). The same printing rates apply to every mail_class. Color pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative."
    • changedOutput schema / properties / result / properties / outbound_mail / properties / cost_breakdown / description
      Previous value: -"Authoritative cost components. For color jobs, color_printing_per_page_cents is the total color-page printing price (70 cents by published default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by published default)."New value: +"Authoritative cost components. For color jobs, color_printing_per_page_cents is the total color-page printing price (70 cents by published default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by published default). For a below-formula First-Class quote, first_class_baseline_adjustment_cents is the amount added to reach the published $2.00 one-page baseline and is separate from postage_cents."
  2. Changed3 schema fields changed
    • changedInput schema / properties / color / description
      Previous value: -"Whether to include the additional $0.30/page color-print surcharge in the live estimate ($0.70/page total before handling and postage by default)."New value: +"Color pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative."
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally; fedex_overnight then adds a fixed $18.00 customer price adjustment (service_adjustment_cents: 1800)."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally; fedex_overnight then adds a fixed $18.00 customer price adjustment (service_adjustment_cents: 1800). The same printing rates apply to every mail_class. Color pages cost $0.70/page total by default before handling and postage: $0.40/page base B&W printing plus a $0.30/page additive color upgrade. In cost_breakdown, color_printing_per_page_cents is the total color-page printing price (70 cents by default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by default). Account-specific pricing can override these defaults; cost_breakdown is authoritative."
    • addedOutput schema / properties / result / properties / outbound_mail / properties / cost_breakdown
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "Authoritative cost components. For color jobs, color_printing_per_page_cents is the total color-page printing price (70 cents by published default), while color_surcharge_per_page_cents is the additive upgrade only (30 cents by published default).",
      +  "type": "object"
      +}
  3. Changed1 schema field changed
    • changedInput schema / properties / color / description
      Previous value: -"Whether to include the additional $0.40/page color-print surcharge in the live estimate ($0.70/page total before handling and postage by default)."New value: +"Whether to include the additional $0.30/page color-print surcharge in the live estimate ($0.70/page total before handling and postage by default)."
  4. Changed1 schema field changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally; fedex_overnight then adds a fixed $18.00 customer price adjustment (service_adjustment_cents: 1800)."
  5. Changed1 schema field changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $10.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $20.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."
  6. Changed7 schema fields changed
    • addedOutput schema / properties / result / properties / outbound_mail / properties / human_review
      Added value: +{
      +  "additionalProperties": true,
      +  "description": "Human-readable review payload for CLI/chat confirmation: send-to address, return address, mail class, document preview URL, cost, safeguards, and next step.",
      +  "type": "object"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_city
      Added value: +{
      +  "description": "Recipient city.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_country
      Added value: +{
      +  "description": "Recipient country code.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_line1
      Added value: +{
      +  "description": "Recipient street address line 1.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_line2
      Added value: +{
      +  "description": "Recipient street address line 2.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_state
      Added value: +{
      +  "description": "Recipient state.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_zip
      Added value: +{
      +  "description": "Recipient ZIP code.",
      +  "type": "string"
      +}
  7. Changed1 schema field changed
    • addedOutput schema / properties / result / properties / outbound_mail / properties / document_preview_url
      Added value: +{
      +  "description": "Authenticated dashboard URL a human can click to visually verify the submitted source document.",
      +  "format": "uri",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  8. Changed6 schema fields changed
    • addedOutput schema / properties / result / properties / outbound_mail / properties / carrier_delivery_failed
      Added value: +{
      +  "description": "True only when status=failed because a mailed/tracked carrier item later failed delivery.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / delivered_at
      Added value: +{
      +  "description": "Timestamp when delivery was confirmed, if available.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / error_message
      Added value: +{
      +  "description": "Failure reason when status is failed and a reason is available.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / failure_source
      Added value: +{
      +  "description": "fedex_tracking when FedEx Track reported the carrier delivery failure; null otherwise.",
      +  "enum": [
      +    "fedex_tracking",
      +    null
      +  ],
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / failure_stage
      Added value: +{
      +  "description": "carrier_delivery for carrier delivery failures; null for submission or fulfillment failures.",
      +  "enum": [
      +    "carrier_delivery",
      +    null
      +  ],
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / mailed_at
      Added value: +{
      +  "description": "Timestamp when the item entered the carrier/mail stream.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  9. Changed5 schema fields changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof. Use certified for USPS tracking plus proof of mailing/delivery; use certified_return_receipt when return-receipt evidence is required. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof; priority has a $15.00 published one-page floor. Use certified for USPS tracking plus proof of mailing/delivery; certified has a $10.00 published one-page floor. Use certified_return_receipt when electronic return-receipt evidence is required; certified_return_receipt has a $24.00 published one-page floor. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."
    • changedInput schema / properties / recipient_company / description
      Previous value: -"Optional company or organization line for the simulated mailpiece."New value: +"Company or organization line for the simulated mailpiece. Optional when recipient_name is provided."
    • changedInput schema / properties / recipient_name / description
      Previous value: -"Recipient name for the simulated mailpiece."New value: +"Recipient name for the simulated mailpiece. Optional when recipient_company is provided."
    • changedOutput schema / properties / result / properties / outbound_mail / properties / recipient_name / description
      Previous value: -"Recipient name."New value: +"Recipient name, or null when the mail is addressed to a company only."
    • changedOutput schema / properties / result / properties / outbound_mail / properties / recipient_name / type
      Previous value: -"string"New value: +[
      +  "string",
      +  "null"
      +]
  10. Changed2 schema fields changed
    • addedInput schema / properties / recipient_company
      Added value: +{
      +  "description": "Optional company or organization line for the simulated mailpiece.",
      +  "type": "string"
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / recipient_company
      Added value: +{
      +  "description": "Optional recipient company or organization line.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  11. Changed1 schema field changed
    • changedInput schema / properties / color / description
      Previous value: -"Whether to include the additional $0.25/page color-print surcharge in the live estimate ($0.55/page total before handling and postage by default)."New value: +"Whether to include the additional $0.40/page color-print surcharge in the live estimate ($0.70/page total before handling and postage by default)."
  12. Changed2 schema fields changed
    • changedInput schema / properties / color / description
      Previous value: -"Whether to include color-print surcharge in the live estimate."New value: +"Whether to include the additional $0.25/page color-print surcharge in the live estimate ($0.55/page total before handling and postage by default)."
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail legal proof. Use certified for USPS tracking plus proof of mailing/delivery; use certified_return_receipt when return-receipt evidence is required. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail proof. Use certified for USPS tracking plus proof of mailing/delivery; use certified_return_receipt when return-receipt evidence is required. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."
  13. Changed1 schema field changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Use first_class for ordinary USPS letters without guaranteed tracking. Use certified for USPS tracking and proof of mailing; use certified_return_receipt when a return receipt is required. Use fedex_* or ups_* classes when private-carrier tracking is required. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."New value: +"Mail class to simulate. Postal or carrier service. Do not infer speed, tracking, or proof from carrier marketing names. Use first_class for ordinary lowest-cost USPS letters with no carrier tracking number by default. Use priority for faster USPS Priority Mail with USPS Tracking, but not Certified Mail legal proof. Use certified for USPS tracking plus proof of mailing/delivery; use certified_return_receipt when return-receipt evidence is required. Use fedex_ground or ups_ground for budget private-carrier tracking; fedex_express means FedEx Express Saver/third-business-day, fedex_2day and ups_2day mean second-business-day, and fedex_overnight or ups_next_day mean next-business-day. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."
  14. Changed7 schema fields changed
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_city
      Added value: +{
      +  "description": "Return address city.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_company
      Added value: +{
      +  "description": "Optional company or organization line for the return address.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_line1
      Added value: +{
      +  "description": "Return address street line 1.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_line2
      Added value: +{
      +  "description": "Return address street line 2.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_name
      Added value: +{
      +  "description": "Return address name.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_state
      Added value: +{
      +  "description": "Return address state.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedOutput schema / properties / result / properties / outbound_mail / properties / return_zip
      Added value: +{
      +  "description": "Return address ZIP.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  15. Changed1 schema field changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Use first_class for ordinary USPS letters without guaranteed tracking. Use certified for USPS tracking and proof of mailing; use certified_return_receipt when a return receipt is required. Use fedex_* or ups_* classes when private-carrier tracking is required. FedEx express classes use conservative Standard List envelope estimates from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."New value: +"Mail class to simulate. Postal or carrier service. Use first_class for ordinary USPS letters without guaranteed tracking. Use certified for USPS tracking and proof of mailing; use certified_return_receipt when a return receipt is required. Use fedex_* or ups_* classes when private-carrier tracking is required. FedEx express classes use the Standard List document baseline from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."
  16. Changed2 schema fields changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate. Postal or carrier service. Use first_class for ordinary USPS letters without guaranteed tracking. Use certified for USPS tracking and proof of mailing; use certified_return_receipt when a return receipt is required. Use fedex_* or ups_* classes when private-carrier tracking is required."New value: +"Mail class to simulate. Postal or carrier service. Use first_class for ordinary USPS letters without guaranteed tracking. Use certified for USPS tracking and proof of mailing; use certified_return_receipt when a return receipt is required. Use fedex_* or ups_* classes when private-carrier tracking is required. FedEx express classes use conservative Standard List envelope estimates from the configured fulfillment origin unless FedEx One Rate is explicitly configured operationally."
    • changedInput schema / properties / recipient_zip / description
      Previous value: -"Recipient ZIP code. Affects estimated live postage."New value: +"Recipient ZIP code. Affects estimated live postage, private-carrier zone, and FedEx local/regional/national area."
  17. Changed1 schema field changed
    • changedInput schema / properties / mail_class / description
      Previous value: -"Mail class to simulate."New value: +"Mail class to simulate. Postal or carrier service. Use first_class for ordinary USPS letters without guaranteed tracking. Use certified for USPS tracking and proof of mailing; use certified_return_receipt when a return receipt is required. Use fedex_* or ups_* classes when private-carrier tracking is required."
  18. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "result": {
      +      "additionalProperties": true,
      +      "description": "Created sandbox outbound mail job and webhook status.",
      +      "properties": {
      +        "message": {
      +          "description": "Next step instructions for advancing the sandbox record.",
      +          "type": "string"
      +        },
      +        "outbound_mail": {
      +          "additionalProperties": true,
      +          "description": "Outbound postal mail job summary.",
      +          "properties": {
      +            "carrier": {
      +              "description": "Carrier name when available.",
      +              "type": "string"
      +            },
      +            "cost_cents": {
      +              "description": "Charged cost in cents, or 0 for sandbox/test records.",
      +              "type": "integer"
      +            },
      +            "created_at": {
      +              "description": "Creation timestamp.",
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            "id": {
      +              "description": "Outbound mail job UUID.",
      +              "format": "uuid",
      +              "type": "string"
      +            },
      +            "mail_class": {
      +              "description": "Selected postal or carrier service.",
      +              "type": "string"
      +            },
      +            "page_count": {
      +              "description": "Number of printed pages.",
      +              "type": "integer"
      +            },
      +            "recipient_name": {
      +              "description": "Recipient name.",
      +              "type": "string"
      +            },
      +            "status": {
      +              "description": "Current mail lifecycle status.",
      +              "type": "string"
      +            },
      +            "test_mode": {
      +              "description": "Whether this is a sandbox/test mail record.",
      +              "type": "boolean"
      +            },
      +            "tracking_number": {
      +              "description": "Carrier tracking number when available.",
      +              "type": "string"
      +            }
      +          },
      +          "type": "object"
      +        }
      +      },
      +      "required": [
      +        "outbound_mail",
      +        "message"
      +      ],
      +      "type": "object"
      +    }
      +  },
      +  "required": [
      +    "result"
      +  ],
      +  "type": "object"
      +}
  19. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only declare mutating/non-idempotent/non-destructive. The description adds substantial behavioral detail: test_mode=true, cost_cents=0, cost_breakdown/estimated_live_cost_cents, webhook queuing, pricing formula overrides, and carrier-specific service adjustments. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but well structured: core behavior first, then pricing defaults, carrier notes, and usage. Each sentence carries meaning, and the detail is warranted because cost_breakdown is a major output. It is not as tight as it could be because some pricing text is duplicated in the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the output schema exists and covers return values, the description covers all necessary context: what the record is, side effects, sandbox usage, pricing behavior, and authoritative cost fields. Nothing critical is missing for an agent to call it correctly.

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

Parameters3/5

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

Schema description coverage is 100%, so baseline 3 is appropriate. The description and input schema repeat most pricing and mail_class guidance; the description adds overall behavioral context but no new parameter-level semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with a specific verb and resource: 'Create a sandbox outbound mail record without uploading a real document.' The sandbox/test framing and the closing 'before sending real physical mail' clearly distinguish this from the real send_outbound_mail sibling.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit context: use with a sandbox key to rehearse outbound workflows before real mail. It does not explicitly name the alternative tool or state 'do not use in production,' but the sandbox-key requirement and the contrast with real physical mail provide a clear implied exclusion.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation4/5

Most tools map cleanly to distinct resources and actions, forming clear list/get pairs for outbound mail, inbound mail, and postal threads. The main ambiguity is between get_facility_messages and list_facility_conversations, which both target the same Austin HQ conversation, and get_mailbox versus list_inbound_forwarding_addresses are closely related address lookups.

Naming Consistency5/5

All tool names use a consistent lowercase snake_case verb_noun pattern with familiar verbs like get, list, send, cancel, create, update, and propose. There are no mixed naming conventions or vague generic names.

Tool Count3/5

19 tools is within the 16-25 range that feels heavy for a single-domain MCP server. The broad outbound/inbound lifecycle, threads, facility messaging, MAILBOX.md, usage, and webhook support justify much of the count, but a few tools such as the facility conversation list/get pair could reasonably be consolidated.

Completeness4/5

The tool surface covers the core physical mail workflow well: test and real outbound sends, cancellation, inbound forwarding and retrieval, postal threads, facility communication, MAILBOX.md sync, usage, and webhooks. Minor gaps exist around webhook inspection/removal and direct document download, but these are unlikely to cause agent dead-ends in the main workflows.

Resources