Ecomwith Commerce Desk

Break-even ROAS and profit calculators, UTM link builder, and Ecomwith tutorial and report search.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
79%
이름 품질
97%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~4,114토큰 (도구 정의)
~7.1 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 3.21%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "commerce-desk": {
      "url": "https://ecomwith.com/api/mcp"
    }
  }
}

원격 엔드포인트

https://ecomwith.com/api/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (6)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢calculate_break_even_roas(currency, price, productCost, shippingCost, paymentFeeRate, ...)

Calculate break-even and target-profit ROAS and maximum CPA from user-supplied revenue, costs, percentage fees and refund reserve. Ask for missing inputs even if asked not to ask questions. Unknown fields must be null, never guessed zeros or a default currency. If any input is unknown, returns needs_input with questions and no estimate. Only explicit user-supplied zeros are valid. Does not read an ad account or change a budget.

입력 스키마

{
  "type": "object",
  "properties": {
    "currency": {
      "anyOf": [
        {
          "type": "string",
          "pattern": "^[A-Z]{3}$",
          "description": "ISO 4217 currency code; all amounts must use this currency."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied ISO 4217 currency code. Use null if unknown; never assume USD."
    },
    "price": {
      "anyOf": [
        {
          "type": "number",
          "exclusiveMinimum": 0,
          "maximum": 1000000000,
          "description": "Revenue per order after discounts, excluding collected taxes."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied revenue per order after discounts and excluding collected taxes. Use null if unknown."
    },
    "productCost": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 0,
          "maximum": 1000000000,
          "description": "Product cost per order, including any allocated costs you want to model."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied product cost per order. Use null if unknown; use 0 only when the user explicitly supplied zero."
    },
    "shippingCost": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 0,
          "maximum": 1000000000,
          "description": "Net shipping and fulfillment cost per order."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied net shipping and fulfillment cost per order. Use null if unknown; do not substitute 0."
    },
    "paymentFeeRate": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 0,
          "maximum": 100,
          "description": "Payment fee as a percentage, e.g. 3 means 3%, not 0.03."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied payment fee percentage: 3 means 3%. Use null if unknown; do not substitute 0."
    },
    "refundRate": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 0,
          "maximum": 100,
          "description": "Revenue reserved for refunds as a percentage; this is a simplified reserve."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied refund reserve percentage. Use null if unknown; do not substitute 0."
    },
    "targetProfit": {
      "anyOf": [
        {
          "type": "number",
          "minimum": 0,
          "maximum": 1000000000,
          "description": "Desired contribution per order after advertising. Supply 0 for break-even only."
        },
        {
          "type": "null"
        }
      ],
      "description": "User-supplied desired profit per order, or 0 when the user requests break-even only. Use null if unknown."
    }
  },
  "required": [
    "currency",
    "price",
    "productCost",
    "shippingCost",
    "paymentFeeRate",
    "refundRate",
    "targetProfit"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "complete",
        "needs_input"
      ]
    },
    "estimate": {
      "type": "object",
      "properties": {
        "currency": {
          "type": "string"
        },
        "basis": {
          "type": "string",
          "const": "user_supplied_estimates"
        },
        "inputs": {
          "type": "object",
          "properties": {
            "currency": {
              "type": "string",
              "pattern": "^[A-Z]{3}$",
              "description": "ISO 4217 currency code; all amounts must use this currency."
            },
            "price": {
              "type": "number",
              "exclusiveMinimum": 0,
              "maximum": 1000000000,
              "description": "Revenue per order after discounts, excluding collected taxes."
            },
            "productCost": {
              "type": "number",
              "minimum": 0,
              "maximum": 1000000000,
              "description": "Product cost per order, including any allocated costs you want to model."
            },
            "shippingCost": {
              "type": "number",
              "minimum": 0,
              "maximum": 1000000000,
              "description": "Net shipping and fulfillment cost per order."
            },
            "paymentFeeRate": {
              "type": "number",
              "minimum": 0,
              "maximum": 100,
              "description": "Payment fee as a percentage, e.g. 3 means 3%, not 0.03."
            },
            "refundRate": {
              "type": "number",
              "minimum": 0,
              "maximum": 100,
              "description": "Revenue reserved for refunds as a percentage; this is a simplified reserve."
            },
            "targetProfit": {
              "type": "number",
              "minimum": 0,
              "maximum": 1000000000,
              "description": "Desired contribution per order after advertising. Supply 0 for break-even only."
            }
          },
          "required": [
            "currency",
            "price",
            "productCost",
            "shippingCost",
            "paymentFeeRate",
            "refundRate",
            "targetProfit"
          ],
          "additionalProperties": false
        },
        "metrics": {
          "type": "object",
          "properties": {
            "revenue": {
              "type": "number"
            },
            "paymentFee": {
              "type": "number"
            },
            "refundReserve": {
              "type": "number"
            },
            "totalVariableCost": {
              "type": "number"
            },
            "contributionBeforeAds": {
              "type": "number"
            },
            "breakEvenRoas": {
              "anyOf": [
                {
                  "type": "number"
                },
                {
                  "type": "null"
                }
              ]
            },
            "targetProfitRoas": {
              "anyOf": [
                {
                  "type": "number"
                },
                {
                  "type": "null"
                }
              ]
            },
            "maxCpa": {
              "type": "number"
            },
            "targetCpa": {
              "type": "number"
            },
            "marginBeforeAdsRate": {
              "type": "number"
            }
          },
          "required": [
            "revenue",
            "paymentFee",
            "refundReserve",
            "totalVariableCost",
            "contributionBeforeAds",
            "breakEvenRoas",
            "targetProfitRoas",
            "maxCpa",
            "targetCpa",
            "marginBeforeAdsRate"
          ],
          "additionalProperties": false
        },
        "breakEvenFeasible": {
          "type": "boolean"
        },
        "targetProfitFeasible": {
          "type": "boolean"
        },
        "assumptions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "unknowns": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "warnings": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "currency",
        "basis",
        "inputs",
        "metrics",
        "breakEvenFeasible",
        "targetProfitFeasible",
        "assumptions",
        "unknowns",
        "warnings"
      ],
      "additionalProperties": false
    },
    "missingInputs": {
      "type": "object",
      "properties": {
        "fields": {
          "type": "array",
          "items": {
            "type": "string",
            "enum": [
              "currency",
              "price",
              "productCost",
              "shippingCost",
              "paymentFeeRate",
              "refundRate",
              "targetProfit"
            ]
          }
        },
        "questions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "required": [
        "fields",
        "questions"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢compare_profit_scenarios(scenarios)

Compare two to five user-supplied pricing or cost scenarios in one currency. Unknown inputs must be null, never guessed zeros or a default currency. If any scenario is incomplete, returns needs_input with labeled questions and no numeric comparison; ask for those inputs. Complete scenarios return contribution, maximum CPA and ROAS. Does not predict sales or change pricing or advertising.

입력 스키마

{
  "type": "object",
  "properties": {
    "scenarios": {
      "minItems": 2,
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "minLength": 1,
            "maxLength": 80
          },
          "inputs": {
            "type": "object",
            "properties": {
              "currency": {
                "anyOf": [
                  {
                    "type": "string",
                    "pattern": "^[A-Z]{3}$",
                    "description": "ISO 4217 currency code; all amounts must use this currency."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied ISO 4217 currency code. Use null if unknown; never assume USD."
              },
              "price": {
                "anyOf": [
                  {
                    "type": "number",
                    "exclusiveMinimum": 0,
                    "maximum": 1000000000,
                    "description": "Revenue per order after discounts, excluding collected taxes."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied revenue per order after discounts and excluding collected taxes. Use null if unknown."
              },
              "productCost": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1000000000,
                    "description": "Product cost per order, including any allocated costs you want to model."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied product cost per order. Use null if unknown; use 0 only when the user explicitly supplied zero."
              },
              "shippingCost": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1000000000,
                    "description": "Net shipping and fulfillment cost per order."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied net shipping and fulfillment cost per order. Use null if unknown; do not substitute 0."
              },
              "paymentFeeRate": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100,
                    "description": "Payment fee as a percentage, e.g. 3 means 3%, not 0.03."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied payment fee percentage: 3 means 3%. Use null if unknown; do not substitute 0."
              },
              "refundRate": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 100,
                    "description": "Revenue reserved for refunds as a percentage; this is a simplified reserve."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied refund reserve percentage. Use null if unknown; do not substitute 0."
              },
              "targetProfit": {
                "anyOf": [
                  {
                    "type": "number",
                    "minimum": 0,
                    "maximum": 1000000000,
                    "description": "Desired contribution per order after advertising. Supply 0 for break-even only."
                  },
                  {
                    "type": "null"
                  }
                ],
                "description": "User-supplied desired profit per order, or 0 when the user requests break-even only. Use null if unknown."
              }
            },
            "required": [
              "currency",
              "price",
              "productCost",
              "shippingCost",
              "paymentFeeRate",
              "refundRate",
              "targetProfit"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "label",
          "inputs"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "scenarios"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "complete",
        "needs_input"
      ]
    },
    "scenarios": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "currency": {
            "type": "string"
          },
          "basis": {
            "type": "string",
            "const": "user_supplied_estimates"
          },
          "inputs": {
            "type": "object",
            "properties": {
              "currency": {
                "type": "string",
                "pattern": "^[A-Z]{3}$",
                "description": "ISO 4217 currency code; all amounts must use this currency."
              },
              "price": {
                "type": "number",
                "exclusiveMinimum": 0,
                "maximum": 1000000000,
                "description": "Revenue per order after discounts, excluding collected taxes."
              },
              "productCost": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000000000,
                "description": "Product cost per order, including any allocated costs you want to model."
              },
              "shippingCost": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000000000,
                "description": "Net shipping and fulfillment cost per order."
              },
              "paymentFeeRate": {
                "type": "number",
                "minimum": 0,
                "maximum": 100,
                "description": "Payment fee as a percentage, e.g. 3 means 3%, not 0.03."
              },
              "refundRate": {
                "type": "number",
                "minimum": 0,
                "maximum": 100,
                "description": "Revenue reserved for refunds as a percentage; this is a simplified reserve."
              },
              "targetProfit": {
                "type": "number",
                "minimum": 0,
                "maximum": 1000000000,
                "description": "Desired contribution per order after advertising. Supply 0 for break-even only."
              }
            },
            "required": [
              "currency",
              "price",
              "productCost",
              "shippingCost",
              "paymentFeeRate",
              "refundRate",
              "targetProfit"
            ],
            "additionalProperties": false
          },
          "metrics": {
            "type": "object",
            "properties": {
              "revenue": {
                "type": "number"
              },
              "paymentFee": {
                "type": "number"
              },
              "refundReserve": {
                "type": "number"
              },
              "totalVariableCost": {
                "type": "number"
              },
              "contributionBeforeAds": {
                "type": "number"
              },
              "breakEvenRoas": {
                "anyOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "targetProfitRoas": {
                "anyOf": [
                  {
                    "type": "number"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "maxCpa": {
                "type": "number"
              },
              "targetCpa": {
                "type": "number"
              },
              "marginBeforeAdsRate": {
                "type": "number"
              }
            },
            "required": [
              "revenue",
              "paymentFee",
              "refundReserve",
              "totalVariableCost",
              "contributionBeforeAds",
              "breakEvenRoas",
              "targetProfitRoas",
              "maxCpa",
              "targetCpa",
              "marginBeforeAdsRate"
            ],
            "additionalProperties": false
          },
          "breakEvenFeasible": {
            "type": "boolean"
          },
          "targetProfitFeasible": {
            "type": "boolean"
          },
          "assumptions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "unknowns": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "warnings": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "label": {
            "type": "string"
          }
        },
        "required": [
          "currency",
          "basis",
          "inputs",
          "metrics",
          "breakEvenFeasible",
          "targetProfitFeasible",
          "assumptions",
          "unknowns",
          "warnings",
          "label"
        ],
        "additionalProperties": false
      }
    },
    "missingInputs": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "currency",
                "price",
                "productCost",
                "shippingCost",
                "paymentFeeRate",
                "refundRate",
                "targetProfit"
              ]
            }
          },
          "questions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "label": {
            "type": "string"
          }
        },
        "required": [
          "fields",
          "questions",
          "label"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "status"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢build_campaign_utm(url, source, medium, campaign, content, ...)

Format one HTTP(S) campaign URL with source, medium and campaign, plus optional content and term. Trims and lowercases UTM values and replaces whitespace with underscores. Returns naming warnings. Never visits the URL, sends a message, saves a campaign or changes tracking settings.

입력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2048,
      "description": "Destination URL. This tool formats it locally and never fetches it."
    },
    "source": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "medium": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "campaign": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "content": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    },
    "term": {
      "type": "string",
      "minLength": 1,
      "maxLength": 120
    }
  },
  "required": [
    "url",
    "source",
    "medium",
    "campaign"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string"
    },
    "namingWarnings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "code": {
            "type": "string"
          },
          "field": {
            "type": "string"
          }
        },
        "required": [
          "code",
          "field"
        ],
        "additionalProperties": false
      }
    },
    "normalization": {
      "type": "string"
    },
    "fetched": {
      "type": "boolean",
      "const": false
    }
  },
  "required": [
    "url",
    "namingWarnings",
    "normalization",
    "fetched"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢search_ecommerce_resources(query, locale, limit)

Search Ecomwith published tutorial metadata, internal tool descriptions and public answer summaries in English or Chinese. Returns up to ten source links with content access labels. Does not search the wider web, fetch websites or return paid lesson bodies, drafts or customer data.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 160
    },
    "locale": {
      "default": "en",
      "type": "string",
      "enum": [
        "en",
        "zh"
      ]
    },
    "limit": {
      "default": 5,
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "kind": {
            "type": "string",
            "enum": [
              "tutorial",
              "tool",
              "answer"
            ]
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "contentAccess": {
            "type": "string"
          }
        },
        "required": [
          "kind",
          "title",
          "summary",
          "url",
          "contentAccess"
        ],
        "additionalProperties": false
      }
    },
    "scope": {
      "type": "string"
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "zh"
      ]
    }
  },
  "required": [
    "items",
    "scope",
    "locale"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢list_public_weekly_reports(locale, limit)

List up to ten Ecomwith published or corrected ecommerce reports with public summaries and dates. Does not return drafts, withdrawn issues, member-only sections, subscriber data or unpublished research. These are dated editorial reports, not a live news feed.

입력 스키마

{
  "type": "object",
  "properties": {
    "locale": {
      "default": "en",
      "type": "string",
      "enum": [
        "en",
        "zh"
      ]
    },
    "limit": {
      "default": 5,
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "items": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "summary": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "status": {
            "type": "string",
            "enum": [
              "published",
              "corrected"
            ]
          },
          "publishedAt": {
            "type": "string"
          },
          "updatedAt": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "title",
          "summary",
          "url",
          "status",
          "publishedAt",
          "updatedAt"
        ],
        "additionalProperties": false
      }
    },
    "locale": {
      "type": "string",
      "enum": [
        "en",
        "zh"
      ]
    }
  },
  "required": [
    "items",
    "locale"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟢get_public_weekly_report(slug, locale)

Read guest excerpts and cited source links for one published or corrected Ecomwith weekly report, using a slug returned by list_public_weekly_reports. Retain publication and correction dates and each cited source verificationStatus label; do not upgrade weaker evidence. Rechecks publication state each call. A withdrawn, unpublished, missing or unavailable-language report is not returned. No member content or private research notes are accessible.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "minLength": 1,
      "maxLength": 160,
      "pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$"
    },
    "locale": {
      "default": "en",
      "type": "string",
      "enum": [
        "en",
        "zh"
      ]
    }
  },
  "required": [
    "slug"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "report": {
      "type": "object",
      "properties": {
        "slug": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "enum": [
            "published",
            "corrected"
          ]
        },
        "publishedAt": {
          "type": "string"
        },
        "updatedAt": {
          "type": "string"
        },
        "sections": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "title": {
                "type": "string"
              },
              "text": {
                "type": "string"
              }
            },
            "required": [
              "title",
              "text"
            ],
            "additionalProperties": false
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "title": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "verificationStatus": {
                "type": "string"
              }
            },
            "required": [
              "title",
              "url",
              "verificationStatus"
            ],
            "additionalProperties": false
          }
        }
      },
      "required": [
        "slug",
        "title",
        "summary",
        "url",
        "status",
        "publishedAt",
        "updatedAt",
        "sections",
        "sources"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "report"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 6개