genart.dev
MCP ToolsComponents

list_components

List available reusable components filtered by renderer or category.

Input Schema

ParameterTypeRequiredDescription
renderer"p5" | "three" | "glsl" | "canvas2d" | "svg"NoFilter components by compatible renderer.
category"randomness" | "noise" | "math" | "easing" | "color" | "vector" | "geometry" | "grid" | "particle" | "physics" | "distribution" | "pattern" | "sdf" | "transform" | "animation" | "string" | "data-structure" | "imaging"NoFilter components by functional category.

Output Shape

{
  "components": [
    {
      "name": "perlin-noise",
      "category": "noise",
      "renderers": ["p5", "canvas2d", "svg"],
      "description": "Classic Perlin noise implementation with octave support."
    }
  ],
  "total": 1
}

Side Effects

  • None. This tool is read-only.

Error Cases

ErrorCause
Invalid rendererThe provided renderer is not one of the supported renderer types.
Invalid categoryThe provided category is not one of the recognized categories.

Golden Path Example

Request

{
  "renderer": "p5",
  "category": "noise"
}

Response

{
  "components": [
    {
      "name": "perlin-noise",
      "category": "noise",
      "renderers": ["p5", "canvas2d", "svg", "three"],
      "description": "Classic Perlin noise implementation with octave support."
    },
    {
      "name": "simplex-noise",
      "category": "noise",
      "renderers": ["p5", "canvas2d", "svg", "three", "glsl"],
      "description": "Simplex noise with 2D, 3D, and 4D variants."
    },
    {
      "name": "curl-noise",
      "category": "noise",
      "renderers": ["p5", "canvas2d", "three"],
      "description": "Divergence-free curl noise for flow fields and particle advection."
    }
  ],
  "total": 3
}