← WebMCP Directory

quipra.github.io

quipra.github.io

live Unverified (seed import) Media & Personal 15 tools imperative implementation

One desk shared by a person and an agent. Paper, pens, ruler, compass, stencils. Nothing else.

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 1 · Act 14 · Transact 0 · Score: Not yet scored

Tool inspector

pick_pen

act imperative

Set the default pen for later marks: pencil, fineliner, marker, brush or highlighter, with color (ink, accent, blue, green, ochre or hex), width, opacity and dash. Any mark can also carry its own inline pen instead.

Page: /desk/

Input schema

PropertyTypeRequiredDescription
kind string yes —
brush string no name of a brush made with make
color string no —
width number no —
opacity number no —
dash boolean no —
texture string no —
taper boolean no —
fill string no —
hatchAngle number no —
fillColor string no solid fill for closed paths, shapes and circles: palette name, hex, auto, or none
tip string no brush tip stamped along the stroke
spacing number no stamp spacing as a fraction of size, 0.03..0.5
scatter number no stamp scatter across the path, 0..1
grain number no paper grain strength 0..1
engine object no brush engine, merged field by field over the kind's defaults
shadow object no drop shadow: dx and dy -200..200, blur 0..80, color; {} removes it
glow object no halo around the mark: blur 0..80, color; {} removes it
blur number no soften the whole mark, 0..80 paper units; 0 removes it
Raw JSON schema
{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "enum": [
        "pencil",
        "fineliner",
        "marker",
        "brush",
        "highlighter"
      ]
    },
    "brush": {
      "type": "string",
      "description": "name of a brush made with make"
    },
    "color": {
      "type": "string"
    },
    "width": {
      "type": "number"
    },
    "opacity": {
      "type": "number"
    },
    "dash": {
      "type": "boolean"
    },
    "texture": {
      "type": "string",
      "enum": [
        "grain",
        "chalk",
        "none"
      ]
    },
    "taper": {
      "type": "boolean"
    },
    "fill": {
      "type": "string",
      "enum": [
        "hatch",
        "crosshatch",
        "stipple",
        "none"
      ]
    },
    "hatchAngle": {
      "type": "number"
    },
    "fillColor": {
      "type": "string",
      "description": "solid fill for closed paths, shapes and circles: palette name, hex, auto, or none"
    },
    "tip": {
      "type": "string",
      "enum": [
        "round",
        "soft",
        "flat",
        "bristle",
        "chalk",
        "pencil"
      ],
      "description": "brush tip stamped along the stroke"
    },
    "spacing": {
      "type": "number",
      "description": "stamp spacing as a fraction of size, 0.03..0.5"
    },
    "scatter": {
      "type": "number",
      "description": "stamp scatter across the path, 0..1"
    },
    "grain": {
      "type": "number",
      "description": "paper grain strength 0..1"
    },
    "engine": {
      "type": "object",
      "description": "brush engine, merged field by field over the kind's defaults",
      "properties": {
        "tip": {
          "type": "string",
          "enum": [
            "round",
            "soft",
            "flat",
            "bristle",
            "chalk",
            "pencil"
          ],
          "description": "stamp shape laid along the stroke"
        },
        "spacing": {
          "type": "number",
          "description": "stamp spacing as a fraction of size, 0.02 dense .. 1 dotted"
        },
        "sizeBase": {
          "type": "number",
          "description": "size at pressure 0, times width, 0..4"
        },
        "sizeGain": {
          "type": "number",
          "description": "extra size at pressure 1, times width, 0..4"
        },
        "flowBase": {
          "type": "number",
          "description": "per-stamp alpha at pressure 0, 0..1"
        },
        "flowGain": {
          "type": "number",
          "description": "extra per-stamp alpha at pressure 1, 0..1"
        },
        "scatter": {
          "type": "number",
          "description": "random offset across the path, 0..2 of size"
        },
        "grain": {
          "type": "number",
          "description": "paper grain eating the deposit, 0..1"
        },
        "multiply": {
          "type": "boolean",
          "description": "multiply blending, the way ink darkens on paper"
        },
        "oriented": {
          "type": "boolean",
          "description": "tip follows the stroke direction, for chisels"
        },
        "sizeJitter": {
          "type": "number",
          "description": "random size variation per stamp, 0..1"
        },
        "flowJitter": {
          "type": "number",
          "description": "random alpha variation per stamp, 0..1"
        },
        "angleJitter": {
          "type": "number",
          "description": "random tumble per stamp, 0..1 of a full turn, non-oriented tips"
        },
        "pressureCurve": {
          "type": "number",
          "description": "exponent on pressure: 0.3 eager, 1 linear, 3 reluctant"
        },
        "wet": {
          "type": "number",
          "description": "drying stroke: fade toward the paper along the stroke, 0..1"
        },
        "dual": {
          "type": "boolean",
          "description": "stamp a second tip at half size for a textured core"
        }
      },
      "additionalProperties": false
    },
    "shadow": {
      "type": "object",
      "description": "drop shadow: dx and dy -200..200, blur 0..80, color; {} removes it",
      "properties": {
        "dx": {
          "type": "number"
        },
        "dy": {
          "type": "number"
        },
        "blur": {
          "type": "number"
        },
        "color": {
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "glow": {
      "type": "object",
      "description": "halo around the mark: blur 0..80, color; {} removes it",
      "properties": {
        "blur": {
          "type": "number"
        },
        "color": {
          "type": "string"
        }
      },
      "additionalProperties": false
    },
    "blur": {
      "type": "number",
      "description": "soften the whole mark, 0..80 paper units; 0 removes it"
    }
  },
  "required": [
    "kind"
  ],
  "additionalProperties": false
}

Similar websites

wfsim.app

wfsim.app

A Warframe calculator that simulates the fight instead of estimating it — builder, simulator, optimizer. Every formula cites its source, and the golden tests ar…

live Unverified Media & Personal
101 tools A12 / Act89 / T0 Not yet scored Seen 2026-11-05
enemies_targets_list enemies_target_new enemies_target_copy enemies_target_open enemies_target_set
Inspect tools
commonplace-webmcp.vercel.app

commonplace-webmcp.vercel.app

Commonplace is an editable social reading space built for people and their browser agents.

live Unverified Media & Personal Transact tools
89 tools A10 / Act77 / T2 Not yet scored Seen 2026-11-05
commonplace.get_page_state commonplace_get_page_state commonplace.get_reading_list commonplace_get_reading_list commonplace.get_profile
Inspect tools
pixelforge-studio.appcaster.chatgpt.site

pixelforge-studio.appcaster.chatgpt.site

A professional browser pixel-art editor for drawing, frame animation, palettes, sprite sheets, GIF export, and WebMCP automation.

live Unverified Media & Personal Transact tools
88 tools A12 / Act70 / T6 Not yet scored Seen 2026-11-05
plan_text_creation get_text_creation_status create_from_text claim_text_creation update_text_creation
Inspect tools
pixelite.taskcraft.site

pixelite.taskcraft.site

Pixelite

live Unverified Media & Personal Transact tools
83 tools A4 / Act78 / T1 Not yet scored Seen 2026-11-05
get_document_info list_layers get_active_layer get_selection_info new_document
Inspect tools

Related on Influzer