reserveScript reads the record keys of the binding set's members, which it cannot declare in KEYS, and its declared keys hash to different slots, so Redis Cluster refuses it and a key-pattern ACL must allow the whole <prefix>mcp: range. The script's comment, the pier README's mcp.sessions.store row (which also no longer says the store opens on the first request) and docs/services/mcp.md say so.