$npx skillfedfor your agent

jupyter-lsp

Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server

With conditionsPyPI WWW/HTTPReleased Apr 202638.9M downloads / moBSD-3-ClausePure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — jupyter_lsp-2.3.1-py3-none-any.whl
v2.3.1 · released 2026-04-02 · Python >=3.8 · 2 runtime deps: jupyter_server, importlib_metadata

Yes, if you use Jupyter Notebook or JupyterLab and want IDE-like code intelligence features. Install friction is low, maintenance is active, and the permissive BSD-3-Clause license poses no restrictions. The only gotcha is that you must install language servers separately—jupyter-lsp is the proxy layer only. No known security vulnerabilities.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires Python 3.8 or later; language servers must be installed separately—jupyter-lsp provides only the proxy infrastructure, not the servers themselves.
  • Low friction install with only two runtime dependencies (jupyter_server and importlib_metadata).
  • Actively maintained with recent releases and a stable repository.

License · maintenance · safety

BSD-3-Clause (permissive) — BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; suitable for most projects.

last release 2026-04-02 (134 days) · last repo commit 2026-06-21 · 2,000 stars

0 known vulnerabilities (OSV.dev, 2026-08-14) · 38,916,606 downloads/mo, #705 on PyPI

Verify before relying

pip install jupyter-lsp

Import and configure in your Jupyter environment after installing a separate language server. jupyter-lsp detects and proxies it automatically.
  • Which language servers are supported and how to install them alongside jupyter-lsp
  • Whether language server auto-discovery works across all common installation methods
  • Performance impact of the WebSocket proxy on notebook responsiveness with concurrent requests
Same gist for agents: .md · .json

What it is and what it does

jupyter-lsp is a WebSocket proxy that connects Language Server Protocol servers to Jupyter Notebook and JupyterLab, bridging the gap between standalone language servers and Jupyter's web-based editor. It does not include any language servers itself; instead, it detects and proxies language servers you install separately to provide real-time code features like autocompletion, diagnostics, hover information, and refactoring hints directly in the notebook cell editor.

The package runs as a Jupyter server extension and handles the WebSocket communication layer transparently. It is designed to work with JupyterLab through the companion jupyterlab-lsp client extension, and supports Jupyter Notebook as well. Since its first release in 2019, it has become a standard way to add IDE-like language features to Jupyter environments without modifying the notebook format or core server.

Use it for

  • Add code completion and linting to Jupyter notebooks by installing a language server alongside jupyter-lsp
  • Enable multi-language support in JupyterLab notebooks by proxying their respective language servers
  • Provide real-time error diagnostics and inline documentation in notebook cells for faster debugging
  • Integrate Jupyter into a development workflow where developers expect consistent IDE-like features

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

With conditions

Yes, if you use Jupyter Notebook or JupyterLab and want IDE-like code intelligence features.

Install friction is low, maintenance is active, and the permissive BSD-3-Clause license poses no restrictions. The only gotcha is that you must install language servers separately—jupyter-lsp is the proxy layer only. No known security vulnerabilities.

Install

jupyter-lsp on PyPI

Before you install

Low friction install with only two runtime dependencies (jupyter_server and importlib_metadata). Actively maintained with recent releases and a stable repository.

Requires Python 3.8 or later; language servers must be installed separately—jupyter-lsp provides only the proxy infrastructure, not the servers themselves.

License in practice

BSD-3-Clause permissive license allows commercial and private use with minimal restrictions; suitable for most projects.

Quickstart

pip install jupyter-lsp

Import and configure in your Jupyter environment after installing a separate language server. jupyter-lsp detects and proxies it automatically.

Verify before relying

  • Which language servers are supported and how to install them alongside jupyter-lsp
  • Whether language server auto-discovery works across all common installation methods
  • Performance impact of the WebSocket proxy on notebook responsiveness with concurrent requests

Package facts

LicenseBSD-3-Clause permissive
Python supportSupports the current Python release >=3.8
Install frictionLow. Pure-Python wheel
Runtime dependencies
2 packages
jupyter_serverimportlib_metadata
MaintenanceActively maintained 134 days since the last release
Last repo commit
First released
Downloads38,916,606 / month, #705 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Framework :: JupyterIntended Audience :: DevelopersIntended Audience :: Information TechnologyLicense :: OSI Approved :: BSD LicenseProgramming Language :: Python

Evidence: jupyter_lsp-2.3.1-py3-none-any.whl

Tags

Capabilities
jupyter lsp language servercode completion jupyter notebooklanguage server protocol jupyterjupyter lab lsp integrationnotebook code intelligencejupyter diagnostics lintinglsp websocket proxy
Topics
jupyter-extensionlanguage-server-protocolcode-intelligence
PyPI keywords
InteractiveLanguage ServerLSP

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “jupyter lsp language server”

  • jupyter-lspBridges Language Server Protocol servers to Jupyter Notebook and Lab…
  • jedi-language-serverA Language Server Protocol implementation for Python that provides…
  • jupyterlab-lspAdds Language Server Protocol (LSP) integration to JupyterLab,…

Give your agent the search over MCP, or paste the wish link into any chat.

More WWW/HTTP packages

urllib3 Worth it
PyPI · Libraries · released May 2026

urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.

MITpure Python · 3.10+
1.8Bdownloads / mo
requests Worth it
PyPI · Libraries · released May 2026

Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.

Apache-2.0pure Python · 3.10+
1.8Bdownloads / mo
h11 With conditions
PyPI · WWW/HTTP · released Apr 2025

h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.

MITpure Python · 3.8+aging
894.9Mdownloads / mo
httpx Worth it
PyPI · WWW/HTTP · released Dec 2024

HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.

Install it if you are building new projects or modernizing existing ones that rely on HTTP.

BSD-3-Clausepure Python · 3.8+
797.0Mdownloads / mo
httpcore With conditions
PyPI · WWW/HTTP · released Apr 2025

A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.

BSD-3-Clausepure Python · 3.8+aging
783.6Mdownloads / mo
aiohttp Worth it
PyPI · WWW/HTTP · released Jul 2026

aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.

Install it if you need async HTTP client or server capabilities in asyncio-based applications.

permissive licensecompiled wheel · 3.10+
643.6Mdownloads / mo

See also jupyter-http-over-ws · jupyterlab-lsp · jupyter-server-proxy · jupyterlab · pygls · leanclient · jupyter-server-documents · ruff-lsp · jupyter-nbmodel-client · jupyter-collaboration-ui