Language Server Protocol support#
Warning
Language Server Protocol (LSP) support for JupyrterLab is an experimental feature. It is based on the jupyterlab-lsp extension. More detailed documentation can be found on their page.
JupyterLab 4.0 ships with components on both backend and frontend to lay the infrastructure for handling and communicating with language servers.
This means that other extensions can be built on top of JupyterLab’s services to provide LSP features for notebooks and files.
The LSP service is disabled by default, it can be enabled by togging the Activate option in the Language Servers section of the setting page.
Requirements#
By default JupyterLab does not come with any language servers preinstalled, you need to install the servers by yourself. Supported language servers and the suggested package managers to install them are listed in the tables below:
Languages |
Implementation |
Installation |
---|---|---|
python |
pip: |
|
python |
pip: |
|
julia |
julia: |
|
r |
cran: |
|
robotframework |
pip: |
Languages |
Implementation |
Installation |
---|---|---|
bash |
npm: |
|
dockerfile |
npm: |
|
python |
npm: |
|
sql |
npm: |
|
javascript |
npm: |
|
markdown |
npm: |
|
css |
npm: |
|
html |
npm: |
|
json |
npm: |
|
yaml |
npm: |
For other community-supported language servers, see the extension documentation.
Settings#
The settings for language servers can be found on the settings page of JupyterLab (Settings > Settings Editor > Language Servers).
Activate: this option allows users to enable or disable the LSP services.
Language Server: this section allows users to configure the installed language servers.

Language servers setting page.#