Agents losing context across sessions or overwriting each other's state is a real pain, and this is the clearest three-layer map I have seen for solving it. The CLAUDE.md versus Git versus MCP framing correctly separates durable conventions from live coordination, which most discussions lump together.
One angle I would add: the MCP memory layer depends on identity and permissions inside the MCP server itself. Without that, when two agents on different machines read and write to the same store, there is no way to trace which agent wrote what, lock a claim to a specific agent, or revoke access when an agent is decommissioned. The coordination primitives you mentioned like file claims and task boards work best when the server can verify the caller's identity and enforce scoped access.
That identity layer is the piece most MCP memory discussions skip. A memory store without authentication is just a shared scratchpad. Adding verifiable agent identities turns it into a reliable coordination layer where each agent owns its context and cannot impersonate another.