# Tool Reference

> Every Lexsis Storefront MCP tool and action on one page, with its access level and the page that documents it

Canonical URL: https://77865786950d:3005/tools/reference

This page lists every action on the Storefront MCP. Each domain tool takes the
same envelope, `{ "action": "<action>", "args": { ... } }`. Call
`lexsis_discover` with `router` and `action` to get the exact input schema for
any row.

**Access** shows the OAuth scope an action needs:

- **Read**: `mcp:read`. Runs without approval.
- **Draft**: `mcp:write`. A reversible or draft-scoped write. Nothing goes live.
- **Live**: `mcp:publish`. Changes what shoppers see. Get explicit user approval
  first.

## lexsis_discover

| Action | Access | What it does |
|---|---|---|
| (no action) | Read | Ranks capabilities for a `query`, or returns one exact schema for `router` + `action`. Schemas come back for the top 3 results, or for all of them with `include_schema: true`. See [Tools Overview](/tools). |

## lexsis_workspace

| Action | Access | What it does | Docs |
|---|---|---|---|
| `list` | Read | List the workspaces in the current OAuth grant | [Workspace setup](/tools/workspace-setup) |
| `get` | Read | Workspace context: brand URL, vertical, region, membership | [Workspace setup](/tools/workspace-setup) |
| `stores` | Read | Connected Shopify stores with `store_id`, domain, plan, status | [Workspace setup](/tools/workspace-setup) |
| `credits` | Read | Credit balance and what operations cost | [Workspace setup](/tools/workspace-setup) |
| `health` | Read | Check OAuth authorization and connectivity; returns `AUTH_EXPIRED` when you need to reconnect | [Workspace setup](/tools/workspace-setup#check-connection-health) |

## lexsis_assets and the asset tools

| Tool · action | Access | What it does | Docs |
|---|---|---|---|
| `lexsis_assets` · `capabilities` | Read | Image providers, models, aspect ratios, reference limits, credit cost | [Assets](/tools/assets) |
| `lexsis_assets` · `view` | Read | Resolve an `asset_id` to a viewable image | [Assets](/tools/assets) |
| `lexsis_asset_library` · `search` | Read | Search or browse the asset library; the inline result UI is read-only | [Assets](/tools/assets) |
| `lexsis_asset_select` · `select` | Read | Open the picker so the user chooses library assets; wait for their selection | [Assets](/tools/assets) |
| `lexsis_asset_import` · `import` | Draft | Import from one source: `url`, base64 image data, or conversation `attachments` | [Assets](/tools/assets) |
| `lexsis_asset_upload` · `upload` | Draft | Open the panel for uploading a local image or video | [Assets](/tools/assets) |

## lexsis_campaigns

| Action | Access | What it does | Docs |
|---|---|---|---|
| `creatives` | Read | Ad creative metadata: headline, body, CTA, asset URLs, audience hints | [Vision analysis](/tools/vision-analysis) |
| `analyze` | Read | Server-side vision analysis of an ad, for models that cannot view images | [Vision analysis](/tools/vision-analysis) |
| `frames` | Read | Key frames (start, middle, end) from a video ad | [Vision analysis](/tools/vision-analysis) |
| `personas` | Read | Audience personas: vocabulary, pain points, triggers | [Personas](/tools/personas) |
| `match_persona` | Read | Best-fit persona for an analyzed ad, with rewritten copy | [Personas](/tools/personas) |

## lexsis_brand

| Action | Access | What it does | Docs |
|---|---|---|---|
| `context` | Read | Compact context for one theme: tokens, design.md, asset summary, screenshot manifest | [Brand and design](/tools/brand-design) |
| `brand_kit` | Read | Exact brand tokens for the selected theme | [Brand and design](/tools/brand-design) |
| `list_themes` | Read | Theme IDs, names and default status | [Brand and design](/tools/brand-design) |
| `get_theme` | Read | One complete theme, including ready-to-use `--lx-*` `theme_css` | [Brand and design](/tools/brand-design) |
| `navigation` | Read | Navbar and footer menu items for the selected theme | [Brand and design](/tools/brand-design) |
| `compile_theme` | Read | Derive WCAG-checked `--lx-*` `theme_css` from brand colors | [Brand and design](/tools/brand-design) |

## lexsis_catalog

| Action | Access | What it does | Docs |
|---|---|---|---|
| `list` | Read | Search or browse lightweight product references | [Products](/tools/products) |
| `get` | Read | Full product details by product IDs | [Products](/tools/products) |
| `collections` | Read | Shopify collections with handle, title and product count | [Products](/tools/products) |
| `collection` | Read | One collection read live: filters, sort options and its `/a/lp/collections/<handle>` URL | [Products](/tools/products) |
| `reviews_status` | Read | Whether Judge.me is connected and how many reviews are imported | [Reviews](/tools/reviews) |
| `reviews` | Read | Browse imported reviews by product, rating, media or collection | [Reviews](/tools/reviews) |
| `reviews_search` | Read | Semantic search over imported reviews for a message or theme | [Reviews](/tools/reviews) |
| `review_collections` | Read | Curated review collections with item counts | [Reviews](/tools/reviews) |
| `review_collection_items` | Read | The reviews inside one collection, in display order | [Reviews](/tools/reviews) |

## lexsis_pages

| Action | Access | What it does | Docs |
|---|---|---|---|
| `list` | Read | List pages, filtered by status | [Page management](/tools/page-management) |
| `find` | Read | Find a page by handle, title, short ID or UUID | [Page safety](/tools/page-safety) |
| `get` | Read | One page's metadata, version and preview URL | [Page management](/tools/page-management) |
| `edit_context` | Read | Authoritative store, workspace, theme, product binding and current version; call before editing | [Page safety](/tools/page-safety) |
| `content` | Read | Compiled page JSON at any version | [Page management](/tools/page-management) |
| `source` | Read | The stored source-format HTML for the page | [Page management](/tools/page-management) |
| `section_source` | Read | Source for one section | [Page management](/tools/page-management) |
| `inspect` | Read | Section list with islands, images and text previews | [Page safety](/tools/page-safety) |
| `diff` | Read | Compare two versions of a page | [Page safety](/tools/page-safety) |
| `integrity` | Read | Structural, island, URL, anchor and content checks | [Page safety](/tools/page-safety) |
| `qa` | Read | Stored hosted-runtime QA state and history | [Page QA](/tools/page-qa) |
| `compile` | Read | Compile source without saving; returns a `compile_id` | [Page management](/tools/page-management) |
| `compile_artifact` | Read | Read a compiled bundle by `compile_id` (kept 30 minutes) | [Page QA](/tools/page-qa#inspect-a-compile-artifact) |
| `resource_routes` | Read | Which template page serves each product or collection URL | [Templates and routing](/tools/templates-and-routing) |
| `resolve_resource` | Read | Dry run: which page would serve a given handle, and why | [Templates and routing](/tools/templates-and-routing) |

## lexsis_drafts

All actions here are **Draft** except `cart_set` and `cart_assign_campaign`.
Those two change live cart resolution, so they need `mcp:publish` and explicit
approval.

| Action | What it does | Docs |
|---|---|---|
| `asset_generate` | Create, edit or composite an AI image | [Assets](/tools/assets) |
| `theme_update` | Change theme fonts, colors, logo, radius, spacing or voice | [Brand and design](/tools/brand-design) |
| `page_replace` | Replace the whole page source in one version | [Page management](/tools/page-management) |
| `page_patch` | Several section or island changes in one version | [Page management](/tools/page-management) |
| `page_attach_bundle` | Recovery only: attach a compiled bundle to the current version without a new version | [Page management](/tools/page-management#recover-a-missing-bundle) |
| `page_update_section` | Compile and upsert one section | [Page management](/tools/page-management) |
| `page_remove_section` | Delete one section | [Page management](/tools/page-management) |
| `page_move_section` | Reorder one section | [Page management](/tools/page-management) |
| `page_update_head` | Title, fonts, SEO meta and page-level `theme_css` | [Page management](/tools/page-management) |
| `page_record_qa` | Record hosted QA results for an exact page version | [Page QA](/tools/page-qa) |
| `page_duplicate` | Clone a page as a new draft | [Page management](/tools/page-management) |
| `set_resource_template` | Mark a page as a product or collection template, or unmark it | [Templates and routing](/tools/templates-and-routing) |
| `set_review_fallback` | What a product page shows when the product has no reviews | [Reviews](/tools/reviews#no-reviews-fallback) |
| `page_variation` | Duplicate a page and set up a 50/50 experiment | [A/B testing](/guides/ab-testing) |
| `template_create` | Save one source-format section as a merchant template | [Templates and routing](/tools/templates-and-routing) |
| `template_update` | Update template metadata, optionally with a new source revision | [Templates and routing](/tools/templates-and-routing) |
| `template_apply` | Insert a merchant template into a page as ordinary source | [Templates and routing](/tools/templates-and-routing) |
| `experiment_create` | Create an A/B experiment with weighted variants | [A/B testing](/guides/ab-testing) |
| `cart_set` | Assign a published cart profile to a page (needs `mcp:publish`) | [Cart](/cart/profiles) |
| `cart_edit` | Edit a cart profile's draft presentation | [Cart](/cart/profiles) |
| `cart_create` | New cart draft from a preset or another profile | [Cart](/cart/profiles) |
| `cart_duplicate` | Copy a profile's draft into a new profile | [Cart](/cart/profiles) |
| `cart_archive` | Archive a profile; `reassign_to` changes live resolution and needs approval | [Cart](/cart/profiles) |
| `cart_promotions_edit` | Patch promotion rows and coupon or payment settings | [Cart](/cart/profiles) |
| `cart_assign_campaign` | Assign a published cart to a campaign (needs `mcp:publish`) | [Cart](/cart/profiles) |
| `review_collection_create` | Create a draft review collection from confirmed reviews | [Reviews](/tools/reviews) |
| `quiz_prepare` | Prepare a quiz capture policy draft | [Forms](/tools/forms) |
| `send_feedback` | Report a bug, missing feature or docs gap to the Lexsis team | [Tools Overview](/tools#report-a-problem) |

## lexsis_page_create

| Action | Access | What it does | Docs |
|---|---|---|---|
| `create` | Draft | Compile and save a page draft, then show its preview panel. Always `publish: false`. | [Page management](/tools/page-management) |

## lexsis_live_ops

Every action here is **Live** and needs explicit user approval.

| Action | What it does | Docs |
|---|---|---|
| `publish` | Publish a page after pre-publish validation | [Publishing](/pages/publishing) |
| `unpublish` | Set a published page back to draft | [Page management](/tools/page-management) |
| `delete` | Delete unpublished pages | [Page management](/tools/page-management) |
| `rollback` | Restore an earlier version as a new version | [Page safety](/tools/page-safety) |
| `cart_publish` | Publish a cart draft and sync Shopify promotions | [Cart](/cart/profiles) |
| `cart_rollback` | Restore a cart snapshot as a new draft | [Cart](/cart/profiles) |
| `cart_set_default` | Change the store's default cart | [Cart](/cart/profiles) |
| `template_publish` | Publish the latest valid merchant-template revision | [Templates and routing](/tools/templates-and-routing) |
| `template_archive` | Archive a merchant template; existing pages keep their source | [Templates and routing](/tools/templates-and-routing) |
| `scale_winner` | Send 100% of traffic to the winning variant and end the experiment | [A/B testing](/guides/ab-testing) |
| `quiz_activate` | Activate an approved quiz capture policy | [Forms](/tools/forms) |
| `quiz_deactivate` | Stop quiz capture; stored responses are kept | [Forms](/tools/forms) |
| `resource_route_upsert` | Route product or collection URLs to a template page or experiment | [Templates and routing](/tools/templates-and-routing) |
| `resource_route_delete` | Remove a resource route | [Templates and routing](/tools/templates-and-routing) |

## lexsis_design

| Action | Access | What it does | Docs |
|---|---|---|---|
| `guide` | Read | The design guide for the selected theme | [Brand and design](/tools/brand-design) |
| `islands` | Read | Island selection guidance, variants and behavior | [Islands](/islands) |
| `island_schema` | Read | Compact prop schema for one island; use `fields` or `verbose: true` for more detail | [Templates](/tools/templates#island-schema-size) |
| `get_section` | Read | Full source for 1–3 section templates | [Templates](/tools/templates) |

## lexsis_template_library

| Action | Access | What it does | Docs |
|---|---|---|---|
| `search_sections` | Read | Browse section templates (metadata only) | [Templates](/tools/templates) |
| `search_page_kits` | Read | Browse curated full-page kits | [Templates](/tools/templates) |
| `get_kit` | Read | One kit by slug or pasted gallery URL, with its ordered section slugs | [Templates](/tools/templates) |
| `list_mine` | Read | Merchant templates you own in a workspace | [Templates and routing](/tools/templates-and-routing) |
| `get_mine` | Read | One merchant template with its current revision and source | [Templates and routing](/tools/templates-and-routing) |

## lexsis_analytics

| Action | Access | What it does | Docs |
|---|---|---|---|
| `timeseries` | Read | Daily or weekly hits, conversions, revenue, AOV | [Analytics](/tools/analytics) |
| `page` | Read | Single-page CVR, bounce, traffic sources, devices | [Analytics](/tools/analytics) |
| `attribution` | Read | ROAS by channel, revenue per page, top campaigns | [Analytics](/tools/analytics) |
| `experiment` | Read | Per-variant CVR, significance and a winner recommendation | [A/B testing](/guides/ab-testing) |

## lexsis_capture

| Action | Access | What it does | Docs |
|---|---|---|---|
| `form_schemas` | Read | The store's form definitions; the only way to find valid `form_key`s | [Forms](/tools/forms) |
| `submissions` | Read | Form submissions, newest first, with personal data redacted | [Forms](/tools/forms) |
| `quiz_inspect` | Read | Quizzes and capture policies for an exact page version | [Forms](/tools/forms) |
| `quiz_responses` | Read | Saved quiz attempts, without raw answers or contact details | [Forms](/tools/forms) |
| `quiz_response` | Read | One attempt's answer timeline | [Forms](/tools/forms) |
| `network_access` | Read | Origins and proxied connections that section JS may call with `lifecycle.fetch` | [Forms](/tools/forms) |

## lexsis_cart

| Action | Access | What it does | Docs |
|---|---|---|---|
| `get` | Read | A cart profile, or the cart a page actually resolves to | [Cart](/cart/profiles) |
| `capabilities` | Read | The cart design, composition and custom-module contract | [Cart](/cart/profiles) |
| `promotions` | Read | Promotion config, active discount codes and reward readiness | [Cart](/cart/profiles) |
| `preview` | Read | Preview a cart draft without publishing | [Cart](/cart/profiles) |
| `preview_states` | Read | Six signed sample-cart URLs with totals and checks | [Cart](/cart/profiles) |

## lexsis_support

| Action | Access | What it does | Docs |
|---|---|---|---|
| `search_docs` | Read | Search this documentation and return passages | [Documentation search](/tools/docs-search) |
| `get_doc` | Read | Read a whole docs page or skill reference by its search result `path` | [Documentation search](/tools/docs-search#get_doc) |
