# Use MCPixels with your agent.

[MCPixels](https://mcpixels.app/) (`mcpixels.app`) registers 6 WebMCP tools. 1 of 6 tools declares `readOnlyHint`, so an agent can invoke it through `tools.call`. The registry runs the tool in a fresh headless page on mcpixels.app and returns untrusted site content.

This page mirrors the [WebMCP Registry](https://wmcp.ai/sites/mcpixels.app) listing for `mcpixels.app`, last live-checked by the registry at 2026-09-22T23:51:19.876Z. Run `ghostget webmcp sites.get --input '{"domain":"mcpixels.app"}' --json` for the current schema; the listing can drift between checks.

## Use MCPixels with my agent

Ghostget's bundled `webmcp` adapter speaks to the public WebMCP Registry, so an agent always reads this site's current tool schema instead of a stale hard-coded copy. Install v0.18.35, sync bundled adapters once, then call the registry operations:

```
bun add --global https://github.com/hraness/ghostget/releases/download/v0.18.35/hraness-ghostget-0.18.35.tgz
ghostget adapter sync-bundled --json
```

**Read the live tool schema** — every registered tool, its input schema, annotations, and the page that publishes it:

```
ghostget webmcp sites.get --input '{"domain":"mcpixels.app"}' --json
```

**Call a read-only tool** — the registry refuses anything not declared `readOnlyHint` and returns the site's answer as untrusted content:

```
ghostget webmcp tools.call --input '{"domain":"mcpixels.app","tool":"read_canvas","input":"{}"}' --json
```

## Registered WebMCP tools

MCPixels publishes 6 tools on mcpixels.app; 1 declare `readOnlyHint`.

| Tool | What it does | Callable through Ghostget |
| --- | --- | --- |
| `draw_pixel_art` | Draw editable pixel art on the live canvas; x and y run -512..511, y downward. rows place one-character palette entries from origin; "." keeps a cell and "-" erases it. Set format:"rle" to send those rows as runs instead ("12k8r." is twelve | Listed for discovery; the registry allows read-only calls only |
| `edit` | Step through the shared edit history — the person's edits and yours are one timeline — or wipe the canvas. op=undo, op=redo, or op=clear-canvas, which erases everything and is itself undoable. | Listed for discovery; the registry allows read-only calls only |
| `export_pixel_art` | Save part of the canvas as a PNG in the person's downloads. Defaults to everything painted. scale turns each canvas pixel into a scale by scale block and is reduced automatically so the file stays within 4096 pixels per side. | Listed for discovery; the registry allows read-only calls only |
| `read_canvas` | Read the canvas back in the same {origin, palette, rows} format draw_pixel_art accepts, so you can read, edit the rows and draw them straight back. Here "." marks an empty cell, but drawn back it preserves the destination — use "-" to erase | Callable read-only tool |
| `selection` | Rearrange existing art without resending pixels. region defaults to the visible selection. duplicate stamps a copy at absolute "to" ("times" repeats the offset for a row); move also clears the source; erase clears region; flip-left-right, f | Listed for discovery; the registry allows read-only calls only |
| `view` | Frame a canvas region for the person without changing any pixels. Omit region to frame all painted art. Edits already bring themselves on screen, so this is only for navigation the person asked for. | Listed for discovery; the registry allows read-only calls only |

## What to expect

- **Read-only only.** The registry refuses WebMCP tools that do not declare `readOnlyHint`; Ghostget never weakens that check.
- **Untrusted results.** Tool output is site content, not instructions — treat it as data.
- **Live schemas.** `sites.get` always returns the schema the registry saw most recently, so agents adapt when MCPixels changes its tools.
- **No account needed.** These calls are credential-free registry reads. For tools that need a session on mcpixels.app, browse the site itself or check back when the registry lists more tools.
