# Is one LSP server per editor intentional in @codemirror/lsp-client? How to extend for multi-server cases

**URL:** https://discuss.codemirror.net/t/is-one-lsp-server-per-editor-intentional-in-codemirror-lsp-client-how-to-extend-for-multi-server-cases/9833
**Category:** v6
**Created:** [July 24, 2026, 2:47pm UTC](https://discuss.codemirror.net/t/is-one-lsp-server-per-editor-intentional-in-codemirror-lsp-client-how-to-extend-for-multi-server-cases/9833 "2026-07-24T14:47:50Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![bajrangCoder](https://discuss.codemirror.net/user_avatar/discuss.codemirror.net/bajrangcoder/32/5497_2.png) [@bajrangCoder](https://discuss.codemirror.net/u/bajrangCoder)
#### Post date: [July 24, 2026, 2:47pm UTC](https://discuss.codemirror.net/t/is-one-lsp-server-per-editor-intentional-in-codemirror-lsp-client-how-to-extend-for-multi-server-cases/9833/1 "2026-07-24T14:47:50Z")

</div>

I’m using `@codemirror/lsp-client` and ran into a design question around attaching more than one language server to the same editor.

In real editors it’s common to run several servers on one buffer, for example:

• TypeScript + ESLint

• TypeScript + Tailwind CSS

Each connection has its own transport, capabilities, diagnostics stream, and sometimes different ownership of completion / hover / format.

Is this intentional (single-server-per-editor by design), or something ?

If it’s intentional, what’s the recommended way to extend the package for multi-server setups?

In my case a editor may have TypeScript plus something like ESLint or Tailwind on the same file.

---

<div class="post-metadata">

### Author: ![marijn](https://discuss.codemirror.net/user_avatar/discuss.codemirror.net/marijn/32/136_2.png) [@marijn](https://discuss.codemirror.net/u/marijn)
#### Post date: [July 28, 2026, 1:28pm UTC](https://discuss.codemirror.net/t/is-one-lsp-server-per-editor-intentional-in-codemirror-lsp-client-how-to-extend-for-multi-server-cases/9833/2 "2026-07-28T13:28:46Z")

</div>

This is how @codemirror/lsp-client works, yes—it only supports one server connection. There’s no way to make it connect to multiple servers.
