TrueProfit - Shopify net profit tracking
TrueProfit profit analytics expert. Use this skill whenever working with TrueProfit MCP tools to analyze store performance, query profit data, orders, produc...
Description
name: trueprofit description: > TrueProfit profit analytics expert. Use this skill whenever working with TrueProfit MCP tools to analyze store performance, query profit data, orders, products, ad costs, or customer metrics. Trigger automatically when the user asks about profit, ROAS, COGS, net margin, orders, revenue, ad spend, shipping costs, or any e-commerce analytics question involving their TrueProfit store. Also use when the user connects a new MCP server at mcp.trueprofit.io.
TrueProfit MCP — Usage Guide
TrueProfit is a profit analytics platform for e-commerce merchants (Shopify, etc.). This skill teaches you how to use TrueProfit MCP tools effectively to answer business analytics questions.
Key Business Concepts
Profit Metrics
- Revenue: Gross sales before any deductions
- Net Revenue: Revenue after refunds and discounts
- COGS (Cost of Goods Sold): Product cost per unit — must be set manually or imported
- Gross Profit = Net Revenue − COGS
- Net Profit = Gross Profit − Ad Costs − Shipping − Transaction Fees − Custom Costs − Taxes
- Net Margin = Net Profit / Net Revenue × 100%
- Contribution Margin = Revenue − Variable Costs (excludes fixed overhead)
Advertising Metrics
- Ad Spend: Total spend across all connected platforms (Facebook, Google, TikTok, etc.)
- ROAS = Revenue / Ad Spend (per channel)
- Blended ROAS = Total Revenue / Total Ad Spend (all channels combined)
- MER (Marketing Efficiency Ratio) = Revenue / Total Marketing Cost
Key Ratios
- AOV (Average Order Value) = Revenue / Number of Orders
- Refund Rate = Refunded Amount / Gross Revenue × 100%
- CAC (Customer Acquisition Cost) = Total Ad Spend / New Customers
- LTV (Lifetime Value) = AOV × Purchase Frequency × Customer Lifespan
- Break-even ROAS = 1 / (1 − COGS%) where COGS% = COGS / Revenue
Workflow Patterns
Step 1: Always establish shop context
Most tools require a shop_id. Start every session with:
list_shops → identify the right shop → use shop_id for all subsequent calls
Single-shop users: list_shops returns one item — use its shop_id directly.
Multi-shop / agency users: confirm with the user which shop before proceeding, or loop across all shops.
Step 2: Use the correct date range format
All dates use YYYY-MM-DD format in the shop's local timezone.
| User says | date_from | date_to |
|---|---|---|
| "today" | today | today |
| "this month" | first day of current month | today |
| "last month" | first day of previous month | last day of previous month |
| "last 30 days" | today − 30 | today |
| "last 7 days" | today − 7 | today |
| "yesterday" | yesterday | yesterday |
| "Q1 2025" | 2025-01-01 | 2025-03-31 |
Check the shop's timezone via get_shop_details if date precision matters.
Step 3: Pick the right tool
| User question | Tool |
|---|---|
| "What's my profit this month?" | get_profit_summary |
| "Show daily profit trend / chart" | get_profit_by_date |
| "Which products make the most profit?" | get_profit_by_product |
| "Show my recent orders" | list_orders |
| "Find order #1234 / search orders" | list_orders with search param |
| "Details on a specific order" | get_order_insights |
| "Orders summary / total count" | get_orders_summary |
| "How much did I spend on ads?" | get_ad_costs |
| "ROAS by UTM / campaign / source" | get_revenue_by_utm |
| "What custom costs do I have?" | get_custom_costs |
| "Show my products and COGS" | list_products |
| "Details on a specific product" | get_product |
| "Update COGS for a product" | update_product_cogs |
| "Customer retention / total customers" | get_customer_overview |
| "Details on a specific customer" | get_customer_details |
| "Shipping cost for specific orders" | get_shipping_cost |
| "Which ad platforms are connected?" | get_connected_platforms |
| "What shop am I looking at?" | get_shop_details |
Important Tool Parameters
These non-obvious parameters unlock significant functionality:
list_orders
financial_status: filter bypaid,pending,refunded,partially_refunded,authorized,partially_paid,unpaid,voided(comma-separated for multiple)search: find orders by name or number (e.g.,"#1234")order_by: sort bycreated_at,total_price, orprofitpage/page_size: paginate large result sets (default page_size=20)
list_products
search: filter by product titlepage/page_size: paginate large catalogs
update_product_cogs
variant_id: omit or set to0to update all variants of a product at oncezone_name: pricing zone, defaults to"global"— leave empty unless the shop uses regional COGS zones- Changes take effect retroactively across all historical orders for that product
get_shipping_cost
- Requires specific order IDs (not a date range) — get them from
list_ordersfirst - Max 100 order IDs per request
get_customer_details
- Requires a Shopify customer ID (numeric) — not name or email
- Get customer IDs from order data in
list_ordersorget_order_insights
Common Workflows
"How was my performance last month?"
list_shops→ getshop_idget_profit_summarywith last month's date rangeget_ad_costsfor ad spend breakdown by platform- Present as: Revenue, Net Profit, Net Margin %, ROAS, AOV — with period-over-period change if available
"Which products should I focus on?"
get_profit_by_productfor a meaningful date range (e.g., last 30 days)- Sort by net profit (not revenue) — high-revenue products can have negative profit
- Flag products with COGS = 0 — profit data is unreliable until COGS is set
- Recommend: double down on high-margin, investigate high-volume low-margin
"Find a specific order"
list_orderswithsearch="#1234"(order name/number) and a date range- Or filter by
financial_status="refunded"to find refunded orders - Then
get_order_insightswith the order ID for full line-item breakdown
"Why did my profit drop this week?"
get_profit_by_date→ find which specific day(s) caused the dropget_ad_costs→ check for ad spend spike or platform attribution issueslist_orderswithfinancial_status="refunded"→ look for refund spikeget_connected_platforms→ verify all ad platforms still connected
"Set up COGS for my products"
list_products→ identify products with COGS = 0 or null- Ask user to confirm cost per product/variant
update_product_cogs— usevariant_id=0to update all variants at once if cost is the sameget_product→ verify the update was applied- Note: this retroactively recalculates profit for all past orders
"Show shipping costs for my orders"
list_orders→ get order IDs for the date range (up to 100 at a time)- Extract the order IDs
get_shipping_costwith the order ID list
"Compare my shops" (multi-shop / agency)
list_shops→ get all shop IDs- For each shop:
get_profit_summarywith same date range - Build comparison: Revenue, Net Profit, Net Margin, ROAS per shop
- Note: currencies may differ — confirm before converting
"How many customers do I have?"
get_customer_overview→ total customers, new customers (no date range needed — shop-level metric)- For individual customer history: need their Shopify customer ID from order data
Presenting Results to Users
When sharing analytics data, lead with the most actionable insight:
- Profit summary: Revenue → Net Profit → Net Margin % → ROAS → AOV (in that order)
- Product analysis: present as a ranked table with Revenue, Profit, Margin columns
- Date trends: describe the trend direction first, then call out notable peaks/drops
- Ad costs: show spend by platform + total ROAS, flag platforms with low ROAS
- COGS gaps: prominently warn if products have COGS = 0 before showing profit numbers
Formulas Reference
Net Profit = Revenue - COGS - Ad Spend - Shipping - Transaction Fees - Refunds - Custom Costs
ROAS = Ad Revenue / Ad Spend
Blended ROAS = Total Revenue / Total Ad Spend
Net Margin % = (Net Profit / Revenue) × 100
AOV = Revenue / Number of Orders
CAC = Total Ad Spend / New Customers
LTV = AOV × Purchase Frequency × Customer Lifespan
Refund Rate = Refunded Amount / Gross Revenue × 100
Break-even ROAS = 1 / (1 - COGS%) where COGS% = COGS / Revenue
Tips & Gotchas
-
COGS = 0 means unreliable profit: If any products lack COGS, net profit is overstated for those products. Always warn the user before presenting profit data.
-
Ad platform reporting lag: Facebook, Google, and TikTok can have 1–3 day attribution delay. For very recent dates, ad costs may appear lower than actual spend.
-
Currency per shop: Each shop reports in its own currency. Never mix currencies across shops without explicit user confirmation and conversion.
-
UTM data is incomplete by nature:
get_revenue_by_utmonly captures orders where UTM parameters were tracked. Direct/organic traffic won't appear — always note this caveat. -
get_customer_overviewhas no date range: It returns shop-level lifetime totals, not a filtered period. Don't pass date params to this tool. -
get_shipping_costneeds order IDs, not dates: First uselist_ordersto get IDs, then pass them toget_shipping_cost(max 100 per call). -
COGS updates are retroactive: Updating COGS via
update_product_cogsrecalculates profit for all historical orders — confirm with the user before bulk updates. -
Auth is automatic: This MCP uses Account-level OAuth. The server automatically exchanges it for a Shop token when needed — don't try to manage tokens manually.
-
Refunds inflate cost ratios: A refund spike makes ad spend look higher as % of revenue. Check
list_orderswithfinancial_status="refunded"to assess refund impact.
Connected Ad Platforms
Check which platforms are active via get_connected_platforms:
| Platform | Notes |
|---|---|
| Facebook Ads | Most common, 1-3 day attribution delay |
| Google Ads | Includes Shopping, Search, YouTube |
| TikTok Ads | |
| Snapchat Ads | |
| Pinterest Ads |
Disconnected platforms = spend tracked as custom costs, or not tracked at all.
Keeping the Skill Up to Date
TrueProfit MCP is actively developed — new tools and workflows are added regularly. To get the
latest version of this skill, call the get_skill tool from the TrueProfit MCP server:
get_skill → copy the returned SKILL.md content → overwrite ~/.claude/skills/trueprofit/SKILL.md
Do this periodically (e.g., once a month) or whenever you notice a tool behaving differently than documented here.
MCP Server Info
- Server URL: https://mcp.trueprofit.io/mcp
- Auth: OAuth 2.0 — sign in with your TrueProfit Account at app.trueprofit.io
- Tools: 20 tools covering profit, orders, products, ads, customers, shipping
- Download skill: https://mcp.trueprofit.io/skill
Reviews (0)
No reviews yet. Be the first to review!
Comments (0)
No comments yet. Be the first to share your thoughts!