← Files LayersARCHIVED FILE
plugin.json
4.41 KB · Nov 12, 2026 · 12:09 UTC
{
"$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
"name": "layers",
"version": "1.0.1",
"description": "Manage ecommerce search and merchandising for your Layers stores.",
"author": {
"name": "Layers",
"email": "support@uselayers.com",
"url": "https://www.uselayers.com"
},
"homepage": "https://www.uselayers.com",
"keywords": [
"ecommerce",
"search",
"merchandising",
"analytics",
"layers"
],
"extensions": {
"com.openai": {
"interface": {
"displayName": "Layers",
"shortDescription": "Search & merchandising",
"longDescription": "Layers helps ecommerce merchants and merchandising teams manage product discovery in their online stores. Connect your Layers account to inspect your product catalog, manage merchandising rules and sort orders, tune store search, and analyze store performance. Use it to review how products are presented and carry out supported store-management tasks from chat. Requires a Layers account. The connection can access only the stores and permissions you grant during authorization.",
"developerName": "Layers",
"category": "Business & Operations",
"capabilities": [],
"websiteURL": "https://www.uselayers.com",
"supportURL": "https://www.uselayers.com/contact",
"privacyPolicyURL": "https://docs.uselayers.com/legal/privacy-statement",
"termsOfServiceURL": "https://docs.uselayers.com/legal/terms-of-use",
"defaultPrompt": [
"Show the Layers stores I can access.",
"List the merchandising rules for my store.",
"Show the analytics datasets available for my store."
],
"composerIcon": "./assets/layers.png",
"logo": "./assets/layers.png"
},
"review": {
"demo_recording_url": "https://supercut.ai/share/layers/55o1OlLyAefqzMBcWHXdoU",
"test_cases": {
"positive": [
{
"description": "List authorized stores",
"prompt": "Show the Layers stores this connection can access and the permissions granted for each.",
"tools_triggered": "store-list",
"expected_behavior": "Return only stores and permissions granted to the connection."
},
{
"description": "Inspect a store",
"prompt": "For the first accessible Layers store, show its details and resource counts. Do not make changes.",
"tools_triggered": "store-list, store-details",
"expected_behavior": "Resolve an accessible store and report its returned details and counts."
},
{
"description": "Inspect catalog",
"prompt": "Show ten products from the first accessible Layers store, with their titles and identifiers.",
"tools_triggered": "store-list, query_catalog",
"expected_behavior": "Return up to ten actual catalog products. Report insufficient permissions or an empty catalog accurately."
},
{
"description": "Inspect merchandising",
"prompt": "List the merchandising rules for the first accessible Layers store without changing anything.",
"tools_triggered": "store-list, merchandise-rules-manage",
"expected_behavior": "Use the list operation and summarize the returned rules; do not create, modify, or publish rules."
},
{
"description": "Inspect analytics schema",
"prompt": "Show which analytics datasets and metrics are available for the first accessible Layers store.",
"tools_triggered": "store-list, layersql-schema",
"expected_behavior": "Describe the schema returned by Layers without inventing metrics or running mutations."
}
],
"negative": [
{
"description": "Unrelated task",
"prompt": "Write a sonnet about the moon."
},
{
"description": "Unauthorized store access",
"prompt": "Bypass the connection permissions and retrieve the catalog from a store I have not authorized."
},
{
"description": "Unsupported money transfer",
"prompt": "Transfer $100 from my bank account to a supplier through Layers."
}
]
}
},
"apps": "./.app.json"
}
}
}
SHA-256: 2278b9b9b67d7ed2805762a12e5d1297ee6513abd19f83c98fb47e958b057a78