jupyter-client
Jupyter protocol implementation and client libraries
Decision gist · record as of 2026-08-14
Yes. jupyter_client is a foundational library for the Jupyter ecosystem with low install friction, active maintenance, no known vulnerabilities, and permissive licensing. Install it if you are building Jupyter frontends, managing kernels programmatically, or integrating interactive computation into applications.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.10 or later; pyzmq requires a C compiler and ZMQ development libraries on some systems.
- Low friction installation with a pure-Python wheel and six stable runtime dependencies.
- Actively maintained with last commit 2026-06-12 and no known vulnerabilities.
License · maintenance · safety
permissive license (permissive) — BSD 3-Clause License permits commercial and private use with source redistribution; attribution required but no copyleft obligations.
last release 2026-06-09 (66 days) · last repo commit 2026-06-12 · 471 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 94,983,499 downloads/mo, #357 on PyPI
Alternatives
Verify before relying
pip install jupyter-client
from jupyter_client.kernelspec import KernelSpecManager
manager = KernelSpecManager()
kernels = manager.get_all_specs()- Whether the package supports kernel management for languages beyond Python
- Specific performance characteristics under high-concurrency kernel scenarios
- Backward compatibility guarantees across major version transitions
What it is and what it does
jupyter_client is the reference implementation of the Jupyter protocol, the standard for communication between Jupyter frontends and computational kernels. It provides both the protocol layer and high-level APIs for managing kernel lifecycle—launching kernels, routing messages, and handling shutdown. The package also supplies the `jupyter kernelspec` command-line tool for registering kernel specifications with Jupyter environments.
Developers use jupyter_client when building Jupyter frontends, creating custom kernel implementations, or integrating interactive computation into applications. It depends on pyzmq for message transport, tornado for async I/O, traitlets for configuration, python-dateutil for timestamp handling, jupyter-core for paths, and typing-extensions for type hints. The package requires Python 3.10 or later and is actively maintained by the Jupyter Development Team.
Use it for
- Build a custom Jupyter frontend that needs to launch and communicate with kernels over ZMQ
- Register a new kernel specification so it appears in Jupyter's kernel selector
- Embed interactive computation in a web application by managing kernel processes programmatically
- Debug kernel communication by inspecting protocol messages and kernel state
- Integrate multiple language kernels into a single interactive environment
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
jupyter_client is a foundational library for the Jupyter ecosystem with low install friction, active maintenance, no known vulnerabilities, and permissive licensing. Install it if you are building Jupyter frontends, managing kernels programmatically, or integrating interactive computation into applications.
Install
jupyter-client on PyPI
Before you install
Low friction installation with a pure-Python wheel and six stable runtime dependencies. Actively maintained with last commit 2026-06-12 and no known vulnerabilities.
Requires Python 3.10 or later; pyzmq requires a C compiler and ZMQ development libraries on some systems.
License in practice
BSD 3-Clause License permits commercial and private use with source redistribution; attribution required but no copyleft obligations.
Quickstart
pip install jupyter-client
from jupyter_client.kernelspec import KernelSpecManager
manager = KernelSpecManager()
kernels = manager.get_all_specs()
Verify before relying
- Whether the package supports kernel management for languages beyond Python
- Specific performance characteristics under high-concurrency kernel scenarios
- Backward compatibility guarantees across major version transitions
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.10 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 6 packagesjupyter-corepython-dateutilpyzmqtornadotraitletstyping-extensions |
| Maintenance | Actively maintained 66 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 94,983,499 / month, #357 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Framework :: JupyterIntended Audience :: DevelopersIntended Audience :: EducationIntended Audience :: Science/ResearchIntended Audience :: System AdministratorsLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3 |
Evidence: jupyter_client-8.9.1-py3-none-any.whl
Tags
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 kernel management”
- jupyter-clientImplements the Jupyter protocol and provides client and kernel…
- jupyter-kernel-gatewayJupyter Kernel Gateway is a web server that exposes Jupyter kernels…
- jupyter-serverJupyter Server provides the backend services, APIs, and REST…
Give your agent the search over MCP, or paste the wish link into any chat.
More Application Frameworks packages
FastAPI is a Python web framework for building REST APIs using type hints, with automatic request validation, serialization, and interactive API documentation.
Provides a way to document function parameters, class attributes, return types, and variables inline using Python's `Annotated` type hint syntax instead of traditional docstrings.
Textual is a Python framework for building cross-platform user interfaces that run in the terminal or web browser using a modern, component-based API.
Install it if you're developing CLI tools, dashboards, or interactive terminal applications.
Typer builds command-line applications from Python functions using type hints, automatically generating help text, argument parsing, and shell completion.
Install it if you are building CLIs in Python.
Build and connect to Model Context Protocol servers that expose tools, resources, and prompts to LLM applications over stdio, HTTP, or SSE transports.
Install it if you need to build or connect to servers.
Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.
See also ipykernel · jupyter-core · nbclient · jupyter-server · jupyter-kernel-gateway · jupyter-kernel-client · jupyter-nbmodel-client · jupyter-console · comm · jupyter-events