Turn your artwork into a real custom skateboard deck, shown assembled in 3D, with a link to order.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Saves finished artwork on a skateboard deck and returns a browser link for 3D preview, editing and ordering, plus a picture of the deck assembled with trucks and wheels. Takes exactly one of image_base64 or composition. Stores an unlisted design; it generates no AI artwork and places no order. Each successful call creates a new design.
contain preserves the whole image; cover crops to fill the deck. The deck silhouette always clips the corners.
Six-digit hex colour that fills the deck around an image placed with contain.
Alternative to an image: flat artwork in 1000 × 3734 units. Shapes use top-left x/y; text x/y is its baseline centre. Text can rotate -90 degrees along the deck.
PNG, JPEG or WebP file bytes as base64, optionally a data URL. Must be the bytes of an existing file; artwork made of shapes and text goes in composition.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Saves finished artwork on a skateboard deck and returns a browser link for 3D preview, editing and ordering, plus a picture of the deck assembled with trucks and wheels. Takes exactly one of image_base64 or composition. Stores an unlisted design; it generates no AI artwork and places no order. Each successful call creates a new design.
| Argument | Type | Description |
|---|---|---|
| fit | string | contain preserves the whole image; cover crops to fill the deck. The deck silhouette always clips the corners. |
| locale | string | |
| background | string | Six-digit hex colour that fills the deck around an image placed with contain. |
| composition | object | Alternative to an image: flat artwork in 1000 × 3734 units. Shapes use top-left x/y; text x/y is its baseline centre. Text can rotate -90 degrees along the deck. |
| image_base64 | string | PNG, JPEG or WebP file bytes as base64, optionally a data URL. Must be the bytes of an existing file; artwork made of shapes and text goes in composition. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"fit": {
"enum": [
"contain",
"cover"
],
"type": "string",
"default": "contain",
"description": "contain preserves the whole image; cover crops to fill the deck. The deck silhouette always clips the corners."
},
"locale": {
"enum": [
"es",
"ca",
"en"
],
"type": "string",
"default": "es"
},
"background": {
"type": "string",
"default": "#FFFFFF",
"pattern": "^#[0-9a-fA-F]{6}$",
"description": "Six-digit hex colour that fills the deck around an image placed with contain."
},
"composition": {
"type": "object",
"required": [
"elements"
],
"properties": {
"elements": {
"type": "array",
"items": {
"anyOf": [
{
"type": "object",
"required": [
"type",
"x",
"y",
"fill",
"width",
"height"
],
"properties": {
"x": {
"type": "number",
"maximum": 1000,
"minimum": 0
},
"y": {
"type": "number",
"maximum": 3734,
"minimum": 0
},
"fill": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"type": {
"type": "string",
"const": "rect"
},
"width": {
"type": "number",
"maximum": 1000,
"exclusiveMinimum": 0
},
"height": {
"type": "number",
"maximum": 3734,
"exclusiveMinimum": 0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"x",
"y",
"fill",
"width",
"height"
],
"properties": {
"x": {
"type": "number",
"maximum": 1000,
"minimum": 0
},
"y": {
"type": "number",
"maximum": 3734,
"minimum": 0
},
"fill": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"type": {
"type": "string",
"const": "ellipse"
},
"width": {
"type": "number",
"maximum": 1000,
"exclusiveMinimum": 0
},
"height": {
"type": "number",
"maximum": 3734,
"exclusiveMinimum": 0
}
},
"additionalProperties": false
},
{
"type": "object",
"required": [
"type",
"x",
"y",
"fill",
"text",
"fontSize"
],
"properties": {
"x": {
"type": "number",
"maximum": 1000,
"minimum": 0
},
"y": {
"type": "number",
"maximum": 3734,
"minimum": 0
},
"fill": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"font": {
"enum": [
"Anton",
"Bangers",
"Righteous"
],
"type": "string",
"default": "Anton"
},
"text": {
"type": "string",
"pattern": "^[^\\u0000-\\u001f\\u007f<>]*$",
"maxLength": 80,
"minLength": 1
},
"type": {
"type": "string",
"const": "text"
},
"fontSize": {
"type": "number",
"maximum": 500,
"minimum": 12
},
"rotation": {
"type": "number",
"default": 0,
"maximum": 180,
"minimum": -180
}
},
"additionalProperties": false
}
]
},
"maxItems": 32,
"minItems": 1
},
"background": {
"type": "string",
"default": "#FFFFFF",
"pattern": "^#[0-9a-fA-F]{6}$"
}
},
"description": "Alternative to an image: flat artwork in 1000 × 3734 units. Shapes use top-left x/y; text x/y is its baseline centre. Text can rotate -90 degrees along the deck.",
"additionalProperties": false
},
"image_base64": {
"type": "string",
"maxLength": 11250347,
"description": "PNG, JPEG or WebP file bytes as base64, optionally a data URL. Must be the bytes of an existing file; artwork made of shapes and text goes in composition."
}
},
"additionalProperties": false
}Get artwork dimensions, supported formats, upload alternative and current deck price before preparing a design.
No arguments.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {}
}