I've been using d2-mcp in Cursor with Claude Sonnet or Opus (o3 was not great). Cursor provides project structure and details (depending on the level abstraction you want in the diagram) to give really great results.
Before creating d2-mcp, Claude would give okay diagrams, but giving it the ability to "see" what it created, gives it the ability to see its own mistakes and fix them, and optimize for human readability.