Customisers
list_customiser_prototypes
readList customiser prototypes
Discover which kinds of sign product this Store can create a customiser for, and get the prototype id that creation takes.
Overview
Lists the starting points a new customiser can be created from: each prototype stable id, its sign category, pricing model, sizing strategy, default styling mode, a one-line description of what it produces, and whether the connected Store plan makes it available. Creating a customiser takes one of these ids, so this is the discovery call that precedes it. The catalogue is complete and returned in one page. It requires the customisers:read scope and has no side effects.
Permission
Requires thecustomisers:readpermission. A connection without it answersinsufficient_scopenaming the permission to approve.
Annotations
Prerequisites
- A merchant has connected this store and approved the customisers:read scope.
Arguments
This tool takes no arguments.
Result
The complete prototype catalogue in one page. It is a fixed server-owned list, so its size does not vary with the store.
The complete prototype catalogue.
The stable prototype id a creation call takes.
The kind of sign the prototype produces. Expected to grow: tolerate unknown values.
One of: simple_letter, advanced_letter, frame_fit
Whether this Store plan allows a customiser to be created from the prototype.
Why the prototype is unavailable, empty when it is available.
Always reports no further pages: the catalogue is one complete collection.
Error cases
The connection was approved without customisers:read.
This route accepts no query parameters, so the tool takes no arguments.
Read the prototype catalogue
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_customiser_prototypes",
"arguments": {}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"structuredContent": {
"request_id": "req_01jz9x2k7c8f3m5n6p7q8r9s0t",
"store": {
"id": 12,
"name": "Demo Signs"
},
"prototypes": [
{
"id": "neon-frame-fit",
"name": "Neon Letter Signs - Price per square metre/foot",
"description": "Neon and Flex LED neon letter signs.",
"default_customiser_name": "Neon Sign Customiser",
"sign_category": "neon",
"pricing_model": "frame_fit",
"sizing_strategy": null,
"selection_mode": "per_word",
"ai_sign_designer": false,
"available": true,
"unavailable_reasons": []
}
],
"pagination": {
"has_more": false,
"next_cursor": null
}
}
}
}A connection without customisers:read (error)
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "list_customiser_prototypes",
"arguments": {}
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"isError": true,
"structuredContent": {
"error": {
"code": "insufficient_scope",
"title": "Insufficient scope",
"detail": "The tool [list_customiser_prototypes] requires the customisers:read scope, which this connection was not granted.",
"recovery": "The connection was authorised without the scope this tool needs. Ask the merchant to reconnect the connector and approve the scope named in required_scopes. Do not retry this call.",
"required_scopes": [
"customisers:read"
],
"granted_scopes": [
"store:read"
]
}
}
}
}