{"servers":[{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"io.github.cyanheads/pixoo-mcp-server","description":"Render and push styled pixel art, text, dashboards, and animations to Divoom Pixoo LED displays.","repository":{"url":"https://github.com/cyanheads/pixoo-mcp-server","source":"github"},"version":"1.4.0","packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/pixoo-mcp-server","version":"1.4.0","runtimeHint":"bun","transport":{"type":"stdio"},"packageArguments":[{"value":"run","type":"positional"},{"value":"start:stdio","type":"positional"}],"environmentVariables":[{"description":"Device IP address on the local network (e.g. 192.168.1.50). Required for device tools; discovery and pure-render (push: false) work without it.","format":"string","name":"PIXOO_IP"},{"description":"Display size in pixels: 16, 32, or 64. Must match the physical device.","format":"string","default":"64","name":"PIXOO_SIZE"},{"description":"Directory for auto-saving preview PNG and GIF files. When unset, previews are returned in-response only.","format":"string","name":"PIXOO_OUTPUT_DIR"},{"description":"Minimum interval between device pushes in milliseconds. Prevents device freeze from rapid-fire commands.","format":"string","default":"1000","name":"PIXOO_PUSH_MIN_INTERVAL_MS"},{"description":"Host advertised in the URL the device downloads an animation of more than 40 frames from, for NAT or a DNS name. When unset, the local address the OS routes to PIXOO_IP; the listener binds that address either way.","format":"string","name":"PIXOO_SERVE_HOST"},{"description":"Fixed port for the listener the device downloads an animation of more than 40 frames from, for firewall rules. When unset, a free port.","format":"string","name":"PIXOO_SERVE_PORT"},{"description":"Browser executable for HTML rendering, such as the chrome-headless-shell that `npx @puppeteer/browsers install chrome-headless-shell@stable --path <dir>` installs. When set, the only browser tried: a path that is not an executable file fails rather than falling back. When unset, the newest chrome-headless-shell in Puppeteer's cache (~/.cache/puppeteer).","format":"string","name":"PIXOO_BROWSER_PATH"},{"description":"Offer pixoo_render_html. false (or 0, no, off) disables it, removing it from tools/list; unset or true keeps it. A value that is not one of those boolean spellings fails startup.","format":"boolean","default":"true","name":"PIXOO_HTML_ENABLED"},{"description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","default":"info","name":"MCP_LOG_LEVEL"}]},{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cyanheads/pixoo-mcp-server","version":"1.4.0","runtimeHint":"bun","transport":{"type":"streamable-http","url":"http://localhost:3010/mcp"},"packageArguments":[{"value":"run","type":"positional"},{"value":"start:http","type":"positional"}],"environmentVariables":[{"description":"Device IP address on the local network (e.g. 192.168.1.50). Required for device tools; discovery and pure-render (push: false) work without it.","format":"string","name":"PIXOO_IP"},{"description":"Display size in pixels: 16, 32, or 64. Must match the physical device.","format":"string","default":"64","name":"PIXOO_SIZE"},{"description":"Directory for auto-saving preview PNG and GIF files. When unset, previews are returned in-response only.","format":"string","name":"PIXOO_OUTPUT_DIR"},{"description":"Minimum interval between device pushes in milliseconds. Prevents device freeze from rapid-fire commands.","format":"string","default":"1000","name":"PIXOO_PUSH_MIN_INTERVAL_MS"},{"description":"Host advertised in the URL the device downloads an animation of more than 40 frames from, for NAT or a DNS name. When unset, the local address the OS routes to PIXOO_IP; the listener binds that address either way.","format":"string","name":"PIXOO_SERVE_HOST"},{"description":"Fixed port for the listener the device downloads an animation of more than 40 frames from, for firewall rules. When unset, a free port.","format":"string","name":"PIXOO_SERVE_PORT"},{"description":"Browser executable for HTML rendering, such as the chrome-headless-shell that `npx @puppeteer/browsers install chrome-headless-shell@stable --path <dir>` installs. When set, the only browser tried: a path that is not an executable file fails rather than falling back. When unset, the newest chrome-headless-shell in Puppeteer's cache (~/.cache/puppeteer).","format":"string","name":"PIXOO_BROWSER_PATH"},{"description":"Offer pixoo_render_html. false (or 0, no, off) disables it, removing it from tools/list; unset or true keeps it. A value that is not one of those boolean spellings fails startup.","format":"boolean","default":"true","name":"PIXOO_HTML_ENABLED"},{"description":"The hostname for the HTTP server.","format":"string","default":"127.0.0.1","name":"MCP_HTTP_HOST"},{"description":"The port to run the HTTP server on.","format":"string","default":"3010","name":"MCP_HTTP_PORT"},{"description":"The endpoint path for the MCP server.","format":"string","default":"/mcp","name":"MCP_HTTP_ENDPOINT_PATH"},{"description":"Authentication mode to use: 'none', 'jwt', or 'oauth'.","format":"string","default":"none","name":"MCP_AUTH_MODE"},{"description":"Sets the minimum log level for output (e.g., 'debug', 'info', 'warn').","format":"string","default":"info","name":"MCP_LOG_LEVEL"}]}]},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-27T21:00:12.771582Z","publishedAt":"2026-09-27T21:00:12.771582Z","updatedAt":"2026-09-27T21:00:12.771582Z","isLatest":true}}}],"metadata":{"count":1}}
