Skulayer
Preview-first feed optimization for retailers and agencies: audit, fix and serve product feeds.
Connect it
Settings → Connectors → Add custom connector
URL: https://skulayer.com/mcpSettings → Apps & Connectors → Advanced → Developer mode
Create connector with URL: https://skulayer.com/mcp{
"mcpServers": {
"skulayer": {
"url": "https://skulayer.com/mcp"
}
}
}claude mcp add --transport http skulayer https://skulayer.com/mcp{
"servers": {
"skulayer": {
"type": "http",
"url": "https://skulayer.com/mcp"
}
}
}19 tools, pulled live
list_feedsread-onlyList every live feed in the workspace: source format, schedule, status, channels, item count, and the latest run summary (including audit issue count). Start here to find feed ids. Archived feeds are not listed: they do not run and do not serve, and only a person can restore one, in the app.
get_feedread-onlyFull detail for one feed: configuration, latest complete run summary, and the size of its rule stack. Works on an archived feed too, and says so, so an id from an earlier conversation resolves to an explanation rather than a not-found.
list_rulesread-onlyThe feed's rule stack in execution order: names, enabled state, a plain-English summary, and the full JSON definition of each rule.
get_audit_findingsread-onlyAudit findings for the latest complete run, grouped by check with severity, counts, sample item ids, and plain-English guidance on why each finding costs money and how to fix it. The audit measures the DELIVERED feed (after rules). Also returns `opportunities`: attributes left empty whose value was found in another field the merchant DID send (e.g. the brand sitting in the title, matched against b
get_field_inventoryread-onlyWhat the merchant's source feed ACTUALLY contained, and what SKULayer did with each field: every field as their platform sends it, how many items carry a value for it, whether it was recognised as a shopping attribute, kept as a custom attribute, or arrived empty on every row, plus per-attribute coverage before and after the rule stack. Completes the triad with get_audit_findings (what SKULayer th
get_merchant_issuesread-onlyGoogle's OWN verdict on a feed, from its Merchant Center connection (the app's What Google sees panel): per-issue-code cases with severity, affected-item counts, sample ids, Google's description and documentation link, and an honest lifecycle state — open, fix_shipped (a rule shipped, Google has not re-read yet), or cleared (Google stopped reporting it). Includes account-level issues and the lates
search_itemsread-onlySearch or page through the items of the latest complete run. Returns delivered items (what channels receive) by default, with base (pre-rules) available via view. query matches id, title, brand, and product type, case-insensitive.
preview_ruleread-onlyPreview an UNSAVED rule against a sample of the latest run: match/change/exclusion counts, per-field change tallies, danger warnings (required fields emptied, identifiers stripped, heavy exclusion), audit deltas, and example before/after diffs. Nothing is written anywhere. Rule definition format: {"when":{"all":[conditions],"any":[conditions],"anyOf":[{"all":[conditions]}]},"then":[actions]} — any
search_taxonomyread-onlySearch Google's product taxonomy — the set of valid googleProductCategory values. Returns ranked category paths with their numeric ids, plus whether the query itself is already a valid category (full path or id). Use it to find the right category for a product type, to fix unmatched entries from map_categories, or to check a value before writing it into a rule.
map_categoriesPropose a googleProductCategory mapping for a feed: groups the latest run's delivered items by distinct productType, matches each onto Google's taxonomy (exact-path and unique-leaf matches first, then candidate-constrained AI when available and useAi is not false), and returns the mapping table WITH a ready-to-save rule definition (one lookup keyed on productType). NOTHING is saved: show the human
create_ruleCreate a rule on a feed. The definition is validated, the standard preview runs server-side, and the report comes back WITH the created rule: match/change/exclusion counts, per-field tallies, warnings, and audit deltas. Show the human this report; danger-level warnings mean the rule can empty required fields or exclude heavily. The rule lands enabled, appended after existing rules, and applies on
set_rule_enabledEnable or disable one rule by id. Disabling takes a rule out of the stack from the next run onward; nothing else about it changes. Use list_rules to find rule ids.
delete_rulecan modifyDelete one rule by id. This is permanent; prefer set_rule_enabled with enabled=false when the human might want the rule back. Takes effect on the next run.
trigger_runcan modifyStart a feed run: fetch the source, apply rules, audit the delivered output, and compile channel files. This tool needs a write-scoped connection. The workspace SKU limit, the manual-run cap, and one run at a time per feed also apply. Returns a runId. Poll get_run_status until it completes. An in-flight run never affects the live delivered feed.
get_run_statusread-onlyOne run's progress and outcome: status (queued/fetching/auditing/transforming/compiling/complete/failed), item counts, audit issue count, timing, and the error message when a run failed. Use after trigger_run to poll to completion.
start_merchant_linkStart connecting Google Merchant Center for this workspace. Returns a short-lived, single-use SKULayer URL the workspace owner must open while signed in as the same person. That page sends them to Google consent and, when Google shows one account, links it. You never receive Google tokens. Optional feedId attaches that feed when there is exactly one account. If there are several, poll get_merchant
get_merchant_linkread-onlyRead this workspace's Merchant Center link. status is linked, pending, expired, error, or none (nothing started). accounts lists Merchant Center account ids and the connection each one belongs to. connections lists stored rows, including revoked, and which feeds are attached. When status is pending and accounts has more than one entry, the owner has not chosen yet: call select_merchant_account wit
select_merchant_accountChoose which Merchant Center account a feed uses. Required when get_merchant_link lists more than one account. Pass connectionId and accountId from that result, plus feedId. The account must be one Google actually showed for this connection. Owner only. Does not write a feed or a data source to Google.
get_activityread-onlyThe workspace's recent activity: who did what and when, across the app and every agent connection. Each event has an actor (a human user, an agent via a token or sign-in, or the system scheduler), the action (rule created/updated/enabled/disabled/deleted, run triggered, Merchant Center link started/completed, Merchant Center account chosen), the feed, and a short summary. Use it to check what chan
Alternatives in E-commerce
Compare →
Shopmonkey MCP by usefulapiB
Look up shop customers, vehicles, work orders and parts, and create orders or book appointments.
Ticketsauce MCP by usefulapiB
Read Ticketsauce events, orders and ticket check-in IDs (read-only).
Loox MCP by usefulapiB
Read Loox product and store reviews, reviewer details and rating summaries. Read-only.
Buildium MCP by usefulapiB
Read Buildium properties, units, leases, tenants, balances and bills; manage work orders.
Printful MCP by usefulapiB
Browse the Printful catalog, orders, shipping quotes and stats, and create draft orders and mockups.
Eventbrite MCP by usefulapiB
Manage Eventbrite events, ticket classes, venues and discounts; read attendees, orders and reports.