{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.1.1","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.1.1","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-12T12:14:07.20954Z","publishedAt":"2026-09-12T12:14:07.20954Z","updatedAt":"2026-09-12T12:14:07.20954Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.2.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.2.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-13T12:09:21.719587Z","publishedAt":"2026-09-13T12:09:21.719587Z","updatedAt":"2026-09-13T12:09:21.719587Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.3.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.3.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-14T20:00:48.129378Z","publishedAt":"2026-09-14T20:00:48.129378Z","updatedAt":"2026-09-14T20:00:48.129378Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.4.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.4.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-15T10:25:12.756644Z","publishedAt":"2026-09-15T10:25:12.756644Z","updatedAt":"2026-09-15T10:25:12.756644Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.5.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.5.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-16T08:54:51.515097Z","publishedAt":"2026-09-16T08:54:51.515097Z","updatedAt":"2026-09-16T08:54:51.515097Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.6.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.6.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-22T21:23:47.133489Z","publishedAt":"2026-09-22T21:23:47.133489Z","updatedAt":"2026-09-22T21:23:47.133489Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.7.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.7.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-25T14:19:00.851156Z","publishedAt":"2026-09-25T14:19:00.851156Z","updatedAt":"2026-09-25T14:19:00.851156Z","isLatest":false}}},{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.Gemberkoekje/easel","description":"A headless painting engine for AI agents: brushes, paint load, wet blending, canvas texture.","title":"Easel","repository":{"url":"https://github.com/Gemberkoekje/EaselAPI","source":"github"},"version":"0.8.0","websiteUrl":"https://github.com/Gemberkoekje/EaselAPI#mcp-server","packages":[{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"easel-paint","version":"0.8.0","runtimeHint":"uvx","transport":{"type":"stdio"},"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,"type":"named","name":"--from","value":"easel-paint[mcp]"}],"packageArguments":[{"description":"Directory the server reads and writes .easel session files, looks and exported PNGs in. Defaults to the working directory.","format":"filepath","type":"named","name":"--dir"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-10-01T09:59:20.574734Z","publishedAt":"2026-10-01T09:59:20.574734Z","updatedAt":"2026-10-01T09:59:20.574734Z","isLatest":true}}}],"metadata":{"count":8}}
