# publish_theme

Publish a theme (make it the main theme)

Agent View of the PolicyLayer registry record for `publish_theme`. HTML page: https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/publish-theme

## Facts

- Tool: `publish_theme`
- Server: Shopify Graphql (`uvu-store/shopify-graphql-mcp`) — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp.md
- Homepage: https://github.com/UVU-Store/shopify-graphql-mcp
- Risk category: Write (Medium risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "publish_theme",
    "arguments": {}
  }
}
```

## Why publish_theme is rated Medium

Publishing a theme changes the active/live theme on the Shopify storefront, which is a significant write operation affecting the public-facing store. While technically reversible by switching back to another theme, it immediately impacts the live store experience for all visitors. It does not delete data, execute arbitrary code, or involve financial transactions.

From the tool's own definition: "Publish a theme (make it the main theme)"

## Use case

AI agents use publish_theme to create or update resources in Shopify Graphql, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your Shopify Graphql environment.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Shopify Graphql:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "publish_theme": {
      "limits": [
        {
          "counter": "publish_theme_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on Shopify Graphql (318)

- `cancel_fulfillment_order` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/cancel-fulfillment-order.md
- `cancel_order` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/cancel-order.md
- `cancel_subscription_contract` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/cancel-subscription-contract.md
- `delete_app_proxy` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-app-proxy.md
- `delete_cart_transform` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-cart-transform.md
- `delete_channel` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-channel.md
- `delete_collection` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-collection.md
- `delete_company` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-company.md
- `delete_company_contact` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-company-contact.md
- `delete_custom_fulfillment_service` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-custom-fulfillment-service.md
- `delete_custom_pixel` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-custom-pixel.md
- `delete_customer` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-customer.md
- `delete_customer_address` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-customer-address.md
- `delete_delivery_customization` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-delivery-customization.md
- `delete_delivery_option_generator` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-delivery-option-generator.md
- `delete_discount` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-discount.md
- `delete_draft_order` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-draft-order.md
- `delete_file` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-file.md
- `delete_fulfillment_constraint_rule` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-fulfillment-constraint-rule.md
- `delete_location` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-location.md
- `delete_market` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-market.md
- `delete_marketing_engagements` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-marketing-engagements.md
- `delete_marketing_event` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-marketing-event.md
- `delete_menu` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-menu.md
- `delete_metaobject` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-metaobject.md
- `delete_metaobject_definition` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-metaobject-definition.md
- `delete_order` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-order.md
- `delete_packing_slip_template` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-packing-slip-template.md
- `delete_page` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-page.md
- `delete_payment_customization` — Destructive — https://policylayer.com/tools/uvu-store-shopify-graphql-mcp/delete-payment-customization.md
- …and 288 more: https://policylayer.com/tools/uvu-store-shopify-graphql-mcp.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=uvu-store-shopify-graphql-mcp · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/uvu-store-shopify-graphql-mcp
