-
released this
2026-08-20 12:55:47 -05:00 | 37 commits to main since this releaseThe boot summary had grown to nineteen fields on one line. It is the line this project tells you to check after every deploy — it is how
version=andtenant=get confirmed — so it is read often, and at that width it wraps three times in Portainer's viewer and gets skimmed instead.The split
One line per group, behind a short
mcp-gateway startingline carrying onlyversionandtenant:mcp-gateway starting | version=0.24.1 tenant=icloudmail account | tenant=icloudmail imap=imap.mail.me.com:993 mail_address_domain=icloud.com timezone=America/Chicago serving | bind=0.0.0.0:8787 mcp_path=/icloudmail allowed_hosts=icloudmail.mcp.jrendar.org grants | mail_folders=3 allowlisted mail_writable_folders=3 writable trash_folder=(default) unsubscribe=on auth | auth_mode=oauth resource_url=... forgejo_url=... allowed_subjects=joeyr fastmcp_home=/var/lib/fastmcp limits | max_messages=200 mail_body_max_bytes=262144 attachment_max_bytes=5242880 imap_timeout=60Ordered by what gets read first when a deploy looks wrong: which account, then whether it is serving on the right hostname, then what it may do, and only then the auth wiring and the numbers.
grantsis the line the split exists for; on the flat line it sat between a timeout and a URL.The grouping is a partition of
summary(), not a filter, and a test pins that on every tenant: a field is on exactly one line, and a field on no line fails the suite. Without it a setting added later silently stops printing — and the settings most likely to be added here are grants, where "it never printed" and "it is off" look identical from a log.unsubscribe=on|offNot hypothetical, because 0.24.0 had just done it.
unsubscribe_messageshipped with no boot field at all, so whether the tool was registered was answerable only by reading the connector's tool list from a client — and when it was missing there, nothing in the log said why. It is the grant with the widest reach on this tenant, being the sole outbound request to a host the operator did not choose, and every other grant was already confirmable from the boot log.MAIL_UNSUBSCRIBE_ENABLEDis documented0.24.0 missed that too. Every other setting is documented in
.env.exampleat length; this one existed only in code and in a deployment file that is not in this repo — which put the full rationale (the allowlist of non-blocking hygiene flags,dmarc=pass, DKIM coverage of the unsubscribe headers, and what one-click does not cover) nowhere a reader of this project would find it.No behaviour change to any tool. 940 tests pass.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
Source code (ZIP)