Arash, I think your suggestion of recommending `with-eval-after-load`
is pertinent and should be added to the manual.

Eli, even though we provide a healthy dose of built-in server invocations
in that variable, we can't and shouldn't aim at being exhaustive.

Eglot's manual is meant to be a go-to guide for knowing how to resolve
simple problems such as this one, which is very common.  The problems
solved by eglot-workspace-configuration and other variables are also
very common. The manual should be reasonably self sufficient, not too
terse or relying on the user's knowledge.

The "Quick Start" section that Eli added is a great example of that
pragmatism, but other parts need to follow suit.

So we really do need a copy-paste recipe for things like this.  I'll be
committing Arash's trivial and effective suggestion today or tomorrow
unless someone seriously objects.

That said, I have no objection to converting eglot-server-programs into
a defcustom, if someone will commit to translating and maintaining all
the complex combination of options into "widget" form.  I don't have the
time or inclination for this task, but maybe someone has.

Tim, I'm on board with making sure the documentation can
demonstrate to users how to perform complex customizations
of this variable, like the one you suggest.   But here, I think
I tend to prefer documenting such complex things in one place only,
and I see no problem in teaching the user to C-h f to the variable's
docstring, which is the canonical source of truth to that interface.

Thanks,
João