These days, high end electrum servers directly read blk.dat files straight from Bitcoin Core's blocks folder in the process of creating their initial internal indexes. I guess they also do in the course of their lifespan to keep indexes in sync, but unsure about that.
First things first, I've just read here that it is bad practice for technical reasons.
Also, Bitcoin Core makes sure those files are readable ONLY by its own user. Thus, the only solution I found to sync those electrum servers is to run them with that same user. Giving rights to those pieces of software to modify block files seems a bit awkward, to say the least.
This concerns me a bit. Many projects need those bitcoin addresses indexes, thus, I guess most of them accept that compromise. I think the best option would be for electrum servers to NOT use those files. Though, the reality we have to live with is that they DO as we speak.
Although the best solution might be for electrum servers to stick to RPC calls, I doubt they will for performance reasons, I guess. Then, why doesn't Bitcoin Core include a configuration switch to at least allow readonly access to those files?