Skip to main content
Glama

ActionShip by Teapplix Demo

Manage Shipping Profiles

teapplix_manage_shipping_profile

Create, update, or delete shipping profiles, dispatched by Operation (create/update/delete). Profiles define shipper address, return address, and carrier credentials for label generation. Carrier account setup is managed separately in Teapplix and cannot be changed through this tool. Use teapplix_get_shipping_profiles to list existing profiles. [DEMO]

Input Schema

NameRequiredDescriptionDefault
ActiveNoActive flag. Default true (create); true/false to activate/deactivate (update).
AddressNoShipper (ship-from) address printed on labels. Applies to create/update.
OperationYescreate: new profile (ProfileName required). update: modify profile (ProfileId or ProfileName required). delete: remove profile (ProfileId or ProfileName required).
ProfileIdNoProfile ID. Identifier for update/delete.
Reference1NoReference field 1. Applies to create/update.
Reference2NoReference field 2. Applies to create/update.
Reference3NoReference field 3. Applies to create/update.
Reference4NoReference field 4. Applies to create/update.
ProfileNameNoProfile name. Required unique name (create); lookup or rename (update); identifier (delete).
ReturnAddressNoReturn address printed on labels. Defaults to Address if omitted. Applies to create/update.
OnlyBill3rdPartyNoWhen true, only bill 3rd party for carrier charges. Applies to create/update.

Output Schema

NameRequiredDescriptionDefault
ProfilesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • changedInput schema / properties / Active / description
      Previous value: -"Active flag. Filter (get); default true (create); true/false to activate/deactivate (update)."New value: +"Active flag. Default true (create); true/false to activate/deactivate (update)."
    • changedInput schema / properties / Operation / description
      Previous value: -"get: list/filter profiles. create: new profile (ProfileName required). update: modify profile (ProfileId or ProfileName required). delete: remove profile (ProfileId or ProfileName required)."New value: +"create: new profile (ProfileName required). update: modify profile (ProfileId or ProfileName required). delete: remove profile (ProfileId or ProfileName required)."
    • changedInput schema / properties / Operation / enum
      Previous value: -[
      -  "get",
      -  "create",
      -  "update",
      -  "delete"
      -]New value: +[
      +  "create",
      +  "update",
      +  "delete"
      +]
    • changedInput schema / properties / ProfileId / description
      Previous value: -"Profile ID. Filter (get) or identifier (update/delete)."New value: +"Profile ID. Identifier for update/delete."
    • changedInput schema / properties / ProfileName / description
      Previous value: -"Profile name. Filter (get); required unique name (create); lookup or rename (update); identifier (delete)."New value: +"Profile name. Required unique name (create); lookup or rename (update); identifier (delete)."
  2. Changed1 schema field changed
    • addedOutput schema / properties / Profiles / items / properties / CarrierInfo
      Added value: +{
      +  "description": "Read-only. Carrier accounts configured in this profile. Only present on GET responses — cannot be set or modified through this tool. Carrier account setup is managed separately in Teapplix carrier configuration. Use this field to assess rate-shop eligibility: skip any profile/carrier combination where BillThirdParty=true (no rate quotes available).",
      +  "items": {
      +    "additionalProperties": {},
      +    "properties": {
      +      "AccountId": {
      +        "description": "Carrier account identifier (e.g. FedEx Account Number, UPS Shipper Number). Empty for Teapplix-managed accounts.",
      +        "type": "string"
      +      },
      +      "AccountType": {
      +        "description": "How the account is held: \"teapplix\" = Teapplix-provided account, \"direct\" = business's own carrier account, \"merchant\" = USPS merchant account",
      +        "type": "string"
      +      },
      +      "BillThirdParty": {
      +        "description": "When true, carrier charges are billed to a third-party account rather than the shipper. UPS and FedEx only. Blocks rate quotes (carrier will not return rates for third-party billed shipments) but label purchase works — the label is charged to the third-party account. Commonly used when a marketplace mandates fulfillment through their own carrier account.",
      +        "type": "boolean"
      +      },
      +      "BillThirdPartyAccountId": {
      +        "description": "Third-party carrier account number to bill. Required for both UPS and FedEx when BillThirdParty=true.",
      +        "type": "string"
      +      },
      +      "BillThirdPartyCountryCode": {
      +        "description": "Country code of the third-party billing account. Required for UPS; not needed for FedEx.",
      +        "type": "string"
      +      },
      +      "BillThirdPartyPostalCode": {
      +        "description": "Postal code of the third-party billing account. Required for UPS; not needed for FedEx.",
      +        "type": "string"
      +      },
      +      "Carrier": {
      +        "description": "Carrier name: USPS, FEDEX, UPS, DHL, DHLE, ONTRAC, ESTES, PUROLATOR, CAPOST, AUPOST, SWA, GOFO, YANWEN, UNIUNI",
      +        "type": "string"
      +      },
      +      "FreightAccountNumber": {
      +        "description": "FedEx Freight LTL account number (separate from the standard FedEx Account Number)",
      +        "type": "string"
      +      },
      +      "InheritedFromMaster": {
      +        "description": "When true, this profile has no dedicated credentials for this carrier and falls back to the master profile (profile 1) for account credentials.",
      +        "type": "boolean"
      +      },
      +      "Provider": {
      +        "description": "Integration provider for USPS accounts: usps, pbowes, easypost, wiselution, stamps, endicia",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
  3. First observed

TDQS

A3.9/5.0
Behavior2/5

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

The description states the tool can 'delete' a profile that is removed, while annotations declare destructiveHint=false, so the safety signal an agent relies on is undercut for one of the three operations; it also stays silent on delete side effects (e.g. whether a profile in use by open shipments can be removed). It does add real value beyond the schema by flagging that carrier credentials are managed elsewhere and are not modifiable here.

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?

Purpose and dispatch mechanism are front-loaded, followed by scope (addresses, not credentials) and sibling routing — no wasted sentences. The trailing '[DEMO]' marker and the slightly redundant 'dispatched by Operation' phrasing keep it from being fully tight.

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

Completeness4/5

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

For a multi-operation mutation tool with 11 parameters and a 100%-described schema plus an output schema, the description covers purpose, sibling routing, and the main scope exclusion. The remaining gap is delete semantics — consequences and preconditions for removing a profile are undisclosed.

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 coverage is 100% and the schema itself documents the Operation enum, ProfileName/ProfileId requirements per operation, and nested address fields (including the ReturnAddress-defaults-to-Address rule). The description adds no parameter-level detail beyond that, which is the expected baseline when the schema does the work.

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?

States specific verbs plus the resource: 'Create, update, or delete shipping profiles, dispatched by Operation.' The operation-dispatch pattern is called out explicitly, and the sibling read tool teapplix_get_shipping_profiles is named, so an agent can distinguish mutating vs listing behavior immediately.

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

Usage Guidelines5/5

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

Explicit routing: 'Use teapplix_get_shipping_profiles to list existing profiles,' and an explicit exclusion: carrier account setup 'is managed separately in Teapplix and cannot be changed through this tool.' This covers when to use it, when to use a sibling instead, and what it cannot do.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources