The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Visual Intent Layer listing page.
Point at a browser-rendered interface, describe what should change, and let an agent work from that precise visual context. Visual Intent Layer is a local MCP server and Review Surface for saved HTML documents and local web apps.
hello world! this project is a testbed for me to experience new/random/trending stuff! fyi on what i was testing:
Mobile builds, native windows, design files, and PDFs are outside the supported surface.
No hosted account or Rust toolchain is required.
Register the local stdio server with your agent, then restart the agent:
The server must run on the machine where you look at the screen. It launches a browser there and binds a loopback port. A server in a container, on a remote host, or inside a cloud agent cannot display that machine's Review Surface.
Registry-aware clients can also find the server as
io.github.willa-code/visual-intent-layer in the official MCP Registry, which
lists where to get it rather than hosting it.
Run opencode mcp add visual-intent-layer, then provide npx and the package
arguments when prompted:
pi does not ship an MCP client. With pi-mcp-adapter installed, add this to
the project's .mcp.json (merge it into an existing mcpServers object):
The same entry can be placed in .pi/mcp.json for a project-only Pi override,
or ~/.config/mcp/mcp.json for all projects. The adapter's /mcp setup panel
can also create the entry.
Use the JSON configuration above, or launch a local stdio server with command
npx and arguments -y --package visual-intent-layer@latest visual-intent-mcp.
The package also provides a local CLI:
Each command opens the default browser and prints the review URL. Add
--no-open for headless or scripted use. To run only the local service:
The visual-intent command is also available after
npm install -g visual-intent-layer.
The server writes review data to ~/.visual-intent-layer/data by default. It
does not write agent configuration. Uninstalling the package does not delete
reviews; remove that data directory only when you want to remove them.
Set VISUAL_INTENT_DATA_DIR to choose another data directory. Set
VISUAL_INTENT_NO_OPEN=1 to suppress automatic browser opening.
@latest is resolved when npx fetches the package, so there is usually
nothing to update by hand. pi-mcp-adapter caches the resolved command for 24
hours; delete ~/.pi/agent/mcp-npx-cache.json to force a fresh fetch. Replace
@latest with an exact version in the entry to hold a version still, and update
a global install with npm install -g visual-intent-layer@latest.
To uninstall, remove the entry with the mechanism you added it with — claude mcp remove visual-intent-layer, codex mcp remove visual-intent-layer, or by
editing your client's configuration. docs/guide.md names the
file for each client. Uninstalling deletes none of your reviews: they stay in
the data directory until you remove it.
docs/guide.md — product manual, Review Surface, Annotation model, MCP tools, data, schema, development, and layout.design.md — normative Review Surface design contract.docs/design-references.md — component references and verification notes.docs/reference-foundations.md — comparison of candidate reference foundations.SECURITY.md — threat model, supported versions, and disclosure process.docs/adr/ — architectural decisions.docs/pi-validation.md — live Pi validation checklist.Apache-2.0.