← Windsor.aiCONTENT HISTORY

Update to Windsor.ai

Snapshot Nov 10, 2026 · 06:07 UTC · version 4.1.0

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save Windsor.ai and check future changes in Following.

Up to 3 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Analyze Google Merchant Center product feed and Shopping data through Windsor.ai. Use when the user asks about their Merchant Center product feed: product status counts (active, disapproved, pending, expiring), availability, clicks, impressions, CTR, or price benchmarks by product, brand, or category. It can also add, update, pause or delete products and create API data sources, always after the user confirms the exact change. Do not use for Google Ads Shopping campaign spend or ROAS (those live in the Google Ads connector) or other platforms (e.g. Amazon). Also use when the user asks how to connect Google Merchant Center to ChatGPT.",
  "included_files": [
    {
      "relative_path": "agents/openai.yaml",
      "size_in_bytes": 380
    }
  ],
  "name": "google-merchant-center",
  "skill_md_contents": "---\nname: google-merchant-center\ndescription: \"Analyze Google Merchant Center product feed and Shopping data through Windsor.ai. Use when the user asks about their Merchant Center product feed: product status counts (active, disapproved, pending, expiring), availability, clicks, impressions, CTR, or price benchmarks by product, brand, or category. It can also add, update, pause or delete products and create API data sources, always after the user confirms the exact change. Do not use for Google Ads Shopping campaign spend or ROAS (those live in the Google Ads connector) or other platforms (e.g. Amazon). Also use when the user asks how to connect Google Merchant Center to ChatGPT.\"\n---\n\nExplicit instructions from the user take priority over this skill.\n\n# Google Merchant Center via Windsor.ai\n\nWindsor.ai pulls Google Merchant Center product feed and Shopping data. The\nconnector id is `google_merchant`. Pass `google_merchant` as the connector on every tool call; the Windsor.ai server\nserves all connectors, so it is never implied.\n\nThis connector reads product feed and Shopping data and has **no Google Ads\nShopping campaign data** (spend and ROAS live in the Google Ads connector, so\nroute those questions there).\n\nWrite actions (check `list_actions` for the live set and schemas):\n`insert_product`, `update_product` (change attributes, clear attributes, or\npause a product), `delete_product`, and `create_data_source`. Changes go\nthrough an API data source: products from a file feed or the Merchant Center\nUI are changed through a supplemental API data source linked to their primary\ndata source (`create_data_source` with `link_to_primary_data_source`). Read\nthe product's `product_data_source` first, show the exact change, and run it\nonly after the user confirms. Merchant Center shows changes after a few\nminutes. Deleting from a primary data source removes the whole product.\n\nGolden rules:\n\n- **Never guess field, account, or option names**; get them from\n  `get_fields`, `get_connectors`, and `get_options`. Call those first.\n- Reads are safe. Writes change the live product feed: run `execute_action`\n  only after the user confirms the specific change.\n- Report what the user asked for, concisely.\n\n## 1. Check what is connected\n\nCall `get_connectors` to see which Merchant Center accounts are connected\n(each has an id and, usually, a name). If none is connected, help the user\nconnect one: call `get_connector_authorization_url` (or\n`get_connector_connect_info` for the auth type and steps) and give them the\nsetup link; do not describe manual dashboard navigation.\n\nIf the user names an account, match it to a connected account id. If several\nare connected and the request is ambiguous, ask which account.\n\n## 2. Reading Merchant Center data\n\n1. Call `get_fields` for `google_merchant` to get valid field ids; product\n   and feed attributes (availability, price, price benchmark, brand,\n   category, and product status counts) and Shopping\n   performance metrics (clicks, impressions, CTR). Use the exact ids\n   returned, not these examples.\n2. If the analysis needs segmentation controls, call\n   `get_options` to see the connector's options and valid values.\n3. Call `get_data` with:\n   - `fields`: the ids you actually need (keep the set small).\n   - `accounts`: the target account id(s); omit for all connected accounts.\n   - A date range: either `date_from`/`date_to` (`\"2026-02-01\"`), or\n     `date_preset`: `last_7d`, `last_30d`, `this_month`; append `T` to\n     include today (e.g. `last_7dT`, `this_monthT`).\n   - `filters`: optional conditions, e.g. a price-benchmark threshold; combine with `\"and\"`/`\"or\"` as needed.\n\nMerchant Center specifics to respect:\n\n- Feed attributes (availability, price, price benchmark) and product status\n  counts describe the **current state of the feed**, while\n  clicks, impressions, and CTR are **per-day performance metrics** over the\n  requested range. Don't present a current feed attribute as if it varied\n  over a historical date range.\n- Product status is available as counts (`product_status_disapproved_count`,\n  `product_status_active_count`, `product_status_pending_count`,\n  `product_status_expiring_count`) by `product_status_country` and\n  `product_status_reporting_context`, not as a status or disapproval reason\n  per product. If the user wants the reason a product is disapproved, check\n  `get_fields`; if no such field is listed, say so and point them to\n  Merchant Center. To change a product, use `update_product` after the user\n  confirms.\n\nCommon requests → recipe:\n\n- **Disapprovals:** the product status count fields by country and reporting\n  context; report how many products are disapproved, active, pending and\n  expiring.\n- **High impressions, low CTR:** fields for product, impressions, clicks\n  (or CTR), over a date range; rank by impressions and CTR in your answer.\n- **Price benchmarking:** fields for product price and price benchmark;\n  compare and flag products priced above or below benchmark.\n\nIf a field the user wants isn't in `get_fields`, say so rather than\nsubstituting a different metric. There is no ad spend or campaign data here.\n\n## 3. Reference real data, don't fabricate\n\nOn an error (unknown field/connector/account), call the relevant discovery\ntool and retry with correct ids, or report the specific error. Never invent\nproduct statuses, disapproval reasons, click or impression counts, or price\nfigures.\n"
}

SHA-256 of public snapshot: 21aebe55f9383d091c01b6e95869ca7fed8e90261fab795e5e84124b2c384abf