Connecting an AI agent
Connect Claude, or any program that speaks the Model Context Protocol, to one project. It reads the design, looks at pictures of the screens, and changes the design while you watch.
An AI agent connected to a project works on the same design you have open. You describe what you want in the agent's own window. The agent reads the screens, makes the change, and the change appears on your canvas with the agent's name beside it. You can undo anything it did.
Connecting an agent is part of Pro. Making a connection key asks for Pro. Listing the keys a project has and switching one off never does, so you can always revoke a key.
What an agent can do, and what it never does
You choose one of two kinds of key when you make it.
| Key | What the agent can do |
|---|---|
| Look only | Read the design, see a picture of any screen, look things up in the catalogue and run the design check. It changes nothing. |
| May change the design | Everything above, and change anything in the design that you can change in the designer. |
A key that may change the design reaches these parts of a project.
- Widgets and screens, with their settings, styles, flags and layout.
- Events on widgets and screens, and automations.
- Variables, lists and bindings.
- Web data sources, MQTT topics and Home Assistant entities, network data sources and their schemas, and the settings a board keeps.
- The theme, named colours and themes.
- Reusable components, and instances of them.
- Languages and translations.
- Pictures, which the agent draws or hands over at the size the design shows them.
- The hardware: the board, the chip, the panel, touch, pins, buses, devices and inputs, and the boards you saved under My boards.
- The project's own settings, such as its name and its LVGL version.
Three limits apply to every key.
- An agent never builds anything and never sees code. No tool generates, downloads or shows firmware, YAML or Python. You generate the code yourself, as before. An agent can run the design check, which is the same validator the Errors tab shows.
- An agent never reads or sets a key or a password. The server removes every API key, web source key, header value and MQTT password from the copy an agent reads, and says only whether each one is set. An agent cannot change a web source that holds a key, a broker that has a password, or a setting marked secret. It also cannot change a variable that a web source's address or headers are built from, because that variable decides where the key is sent.
- An agent cannot change what a project is built for. Arduino, MicroPython or ESPHome is chosen when you make a project and stays fixed.
An agent also cannot import a font file. It uses the fonts in the library and the fonts the project already has.
Check the address before you type a key. When an agent makes a web source or sets up the MQTT broker, it leaves the key or password empty and tells you so. You type it on the Data tab. Read the address the source asks first. Your key goes to that address.
Make a key
- Save the project to your account. An agent connects to a saved project.
- Choose File > Connect an AI agent.
- Give the connection a name you will recognise later, such as "Claude Code on the laptop".
- Choose Look only or May change the design.
- Press the button that makes the key.
The dialog shows the key once, with the server's address and the text to paste. Copy it then. The server keeps a hash of the key and cannot show it again. If you lose a key, revoke it and make another.
A key connects to the project that was open when you made it and to no other project. A project holds up to five keys. A key that nobody uses for 90 days stops working.
Connect Claude Code
The dialog gives one command. Run it once in a terminal.
claude mcp add --transport http lcdwizard <address> --header "Authorization: Bearer <your key>"
Start Claude Code and ask it about the project. A first request such as "look at my LCD Wizard project and tell me what you would fix" makes it read the design and render each screen.
Connect Claude Desktop or another MCP client
A program that reads an MCP settings file takes the block the dialog shows under
For a program with an MCP settings file. It names the server's address, the transport
http and an Authorization header that carries the key.
{
"mcpServers": {
"lcdwizard": {
"type": "http",
"url": "<address>",
"headers": { "Authorization": "Bearer <your key>" }
}
}
}
Any client that speaks MCP over Streamable HTTP and can send a header works the same way. The hosted Claude apps on the web and on a phone connect by signing in and approving, not with a header. LCD Wizard does not offer that sign-in yet, so those apps cannot connect.
Working with an agent
Keep the project open in the designer while the agent works. A project with a key that may change it is worked on live, as a project shared with a client is. It saves itself, and each change the agent makes appears as the agent makes it.
- The title bar shows the agent's name while it is connected. Its menu has Undo its last change, Undo everything it changed this time and Stop it.
- The canvas outlines what the agent last changed, in the agent's colour.
- You can edit at the same time. Where you and the agent set the same value, the later change stands.
The client offers four prompts that start a piece of work. Review this design lists what is worth fixing and changes nothing. Design a new screen, Wire this screen up and Add a settings screen are for a key that may change the design.
Undoing what an agent did
- Undo its last change on the title bar takes back the agent's most recent change. A request the agent made as one batch is one change.
- Undo everything it changed this time takes back all of its changes since it started this spell of work.
- Version history. Before an agent's first change after ten quiet minutes, the server keeps the design as a version named "Kept before the AI agent changed the design". Restore it from File > Version history.
Ctrl+Z takes back what you did and never what the agent did. The agent's undo works the other way round. If you changed a value after the agent set it, undoing the agent's change leaves your value alone.
The server holds an agent's last fifty changes for six hours. After that, or after the server restarts, use the version history.
Pro features and plans
An agent acts for the project's owner, so the owner's plan decides what it can make. What needs Pro when you make it yourself needs Pro when an agent makes it for you. That covers creating a component, adding a named colour or a theme, adding a language, marking text for translation and saving a board. An agent can always use what a design already has.
Ready-made widgets and actions follow the usual rule. An agent can add one on any plan, and generating code for a design that uses one is part of Pro.
A plan's screen limit applies to screens an agent adds.
Switching an agent off
Stop it on the title bar revokes the key the agent is using. The dialog lists every key the project has, with when each was last used and how many changes it made, and a Revoke button beside each. A revoked key stops working at once. Deleting a project deletes its keys.
Limits
- A connection makes up to 120 calls a minute, of which 40 may change the design. A batch of steps counts as one change.
- An agent's picture is a PNG the server draws, no larger than the panel and at most 130 KB. The server never fetches a picture from a web address. A PNG or JPEG file has to be the exact size the design shows it at.
- An agent sees each widget in its default state. It does not see a pressed button or a running animation.
- An agent cannot import a font, change the target, publish to the gallery, share a project or restore a version.
- The picture an agent sees is the designer's own drawing. Text widths are within a few per cent of the panel's.
- LCD Wizard has not yet been tested with every MCP client. The official MCP client library for Node connects and edits a design.