addrbookFor publishers
← The evidence ledger

Evidence row 28257

Observed , by baseline/1.

Kind
listing
About
source_record mcp_registry:io.github.Gemberkoekje/easel
Recorded
Previous row
None: the first of its kind about this subject
Body SHA-256
3504c5f7838e167e5b92e639f1153f4ee0088a73db5b10d23307ab66b9514a67
Leaf
0xe17249764a5fbbd2a848c15558f124c3ec319603af77927643fea75bf30b849a

What was observed

{
  "endpoints": [
    [
      "web",
      "https://github.com/Gemberkoekje/EaselAPI"
    ]
  ],
  "name": "Easel",
  "owner_address": null,
  "raw": {
    "_meta": {
      "io.modelcontextprotocol.registry/official": {
        "isLatest": true,
        "publishedAt": "2026-10-01T09:59:20.574734Z",
        "status": "active",
        "statusChangedAt": "2026-10-01T09:59:20.574734Z",
        "updatedAt": "2026-10-01T09:59:20.574734Z"
      }
    },
    "server": {
      "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
      "description": "A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.",
      "name": "io.github.Gemberkoekje/easel",
      "packages": [
        {
          "identifier": "easel-paint",
          "packageArguments": [
            {
              "description": "Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.",
              "format": "filepath",
              "name": "--dir",
              "type": "named"
            }
          ],
          "registryBaseUrl": "https://pypi.org",
          "registryType": "pypi",
          "runtimeArguments": [
            {
              "description": "The whole launch command is: uvx --from \"easel-paint[mcp]\" easel-mcp. Two things make it longer than usual. The MCP server is an optional extra, because nothing else in the engine imports mcp and a painter working from Python or the shell never needs its 28 dependencies; and the console script is easel-mcp, not easel-paint, because the package is a painting engine of which the server is one face. A client that cannot assemble this should run that command verbatim.",
              "isRequired": true,
              "name": "--from",
              "type": "named",
              "value": "easel-paint[mcp]"
            }
          ],
          "runtimeHint": "uvx",
          "transport": {
            "type": "stdio"
          },
          "version": "0.8.0"
        }
      ],
      "repository": {
        "source": "github",
        "url": "https://github.com/Gemberkoekje/EaselAPI"
      },
      "title": "Easel",
      "version": "0.8.0",
      "websiteUrl": "https://github.com/Gemberkoekje/EaselAPI#mcp-server"
    }
  },
  "source": "mcp_registry",
  "summary": "A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture."
}

What the leaf hashes

{"body":"3504c5f7838e167e5b92e639f1153f4ee0088a73db5b10d23307ab66b9514a67","id":28257,"kind":"listing","method":"baseline/1","observed_us":1793025359514311,"prev":null,"subject":"mcp_registry:io.github.Gemberkoekje/easel","subject_kind":"source_record"}

Proof

Its day has not closed yet. A day closes ten minutes after midnight UTC; the proof appears here then.

How to check it · This row as JSON