I use agents for that, and it does a shockingly good job. LSPs constantly take up resources, most are poorly written, and I have to worry about version compatibility, editor compatibility, etc. It's just a very annoying ecosystem to me.
External agent where I can say "rename this field from X to Y" or "rewrite this into a dedicated class and update all callers" and so on works way better. Obviously, you have to be careful reviewing it since its not working at the same level of guarantee an LSP is but its worth it.