Edit: Moved the personal views to my blog because this post got flagged as inappropriate.
PenPot 2.15.0 dropped. If you want to upgrade your self-hosted PenPot instance, the Frontend won’t come up. (I’m not using docker-compose but rootless Podman with SystemD files).
That’s because the host „penpot-mcp" is not found in upstream of NginX.
What’s needed is an update of the environment variable „PENPOT_FLAGS" to contain „disable-mcp" as well as „PENPOT_MCP_URI" to point to something like „http://127.0.0.1". (Note that there is another environment variable in the thread below for 2.15.2).
The help page is useless without a Frontend:
I eventually figured it out by reading the (I think is) offending PR:
Nothing works on my end : where do you put that env variable exactly ? Under the frontend or the backend ? Can’t penpot just interpret the lack of MCP-related env variables as “don’t enable that feature” ? What a pain…
Perhaps we should have the discussion, if MCP is unsafe for agents, how might those interfaces be shored up for all of us? It seems we are mixing more than one concern here. I see three and suspect there may be more:
The MCP feature contribution caused issues with self-install
MCP is not feature flagged (is this actually true though?)
Interfaces that the MCP feature accessed may not be safe (this requires verification)
What else am i missing? The linked blog post is aggressive. While i sympathise, we have more than one user’s needs to consider here.
In the container definition for penpot-frontend. It was the only container not coming back online.
Can’t penpot just interpret the lack of MCP-related env variables as “don’t enable that feature” ?
That would be ideal. Or have a default value in case it isn’t defined. At the very least I would have preferred to find a note in the release notes / CHANGES.md. It mentions that this service was added („MCP server integration") but not that it could have an impact on the configuration.
What a pain…
The first version of this thread OP got unlisted because I felt pain …
How would it? I mean, you’re telling the Frontend to wait for MCP, whereas the question here is how to get PenPot operating without running a MCP server.
I understand what you’re saying @Ryuno-Ki; the PR simply ensures that the default implementation provided by the docker-compose.yml file in the repository doesn’t throw any errors.