jupyterlab-commands-toolkit
A Jupyter extension that provides an AI toolkit for JupyterLab commands.
Decision gist · record as of 2026-08-14
Yes, if you need programmatic access to JupyterLab commands or are building AI-assisted workflows. The extension is actively maintained, has low install friction, carries a permissive BSD license, and integrates cleanly with jupyter-server-mcp. Install with caution only if your JupyterLab version is older than 4.5.0a3 or if you need to verify compatibility with your specific extensions.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Must run within an initialized Jupyter Server process (e.g., via jupyter-server-mcp or another server extension); requires JupyterLab >= 4.5.0a3.
- Low install friction; pure Python wheel with only two runtime dependencies (jupyter-server and jupyterlab-eventlistener).
- Active maintenance with recent releases; repository is not archived.
License · maintenance · safety
permissive license (permissive) — BSD 3-Clause License permits commercial and private use with minimal restrictions; you must retain copyright notices and disclaimers in distributions.
last release 2026-04-29 (107 days) · last repo commit 2026-08-11 · 4 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 81,077 downloads/mo, #14,252 on PyPI
Alternatives
Verify before relying
pip install jupyterlab_commands_toolkit
from jupyterlab_commands_toolkit.tools import execute_command, list_all_commands
async def main():
commands = await list_all_commands()
result = await execute_command("filebrowser:toggle-main")- Whether the extension works with JupyterLab versions between 4.5.0a3 and the latest stable release.
- Performance characteristics when listing or executing commands with high frequency.
- Compatibility with custom JupyterLab command plugins or third-party extensions.
What it is and what it does
jupyterlab_commands_toolkit is a JupyterLab server extension that bridges Python code and AI assistants to JupyterLab's command system. It provides two main functions: discovering all available commands with their metadata, and executing any command programmatically. The extension is designed to integrate with jupyter-server-mcp, automatically exposing its tools to AI clients like Claude Desktop via the Model Context Protocol, making JupyterLab automation accessible to language models and other MCP-compatible tools.
The package consists of a Python server component (installed via pip) and a frontend NPM component (installed automatically with the extension). It requires only jupyter-server and jupyterlab-eventlistener as runtime dependencies, keeping installation lightweight. The extension is intended for use within a running Jupyter Server process, where it can intercept and execute commands like toggling the file browser or running notebook cells—typical operations that would otherwise require manual UI interaction.
Use it for
- Enable AI assistants to discover and execute JupyterLab commands programmatically via the Model Context Protocol.
- Automate repetitive JupyterLab tasks (e.g., running cells, toggling panels) from server-side Python code.
- Expose JupyterLab command capabilities to external tools or workflows that integrate with jupyter-server-mcp.
- Build custom server extensions that need to interact with JupyterLab's command registry without direct UI access.
- Integrate JupyterLab automation into AI-driven notebook workflows or assistants.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need programmatic access to JupyterLab commands or are building AI-assisted workflows.
The extension is actively maintained, has low install friction, carries a permissive BSD license, and integrates cleanly with jupyter-server-mcp. Install with caution only if your JupyterLab version is older than 4.5.0a3 or if you need to verify compatibility with your specific extensions.
Install
jupyterlab-commands-toolkit on PyPI
Before you install
Low install friction; pure Python wheel with only two runtime dependencies (jupyter-server and jupyterlab-eventlistener). Active maintenance with recent releases; repository is not archived.
Must run within an initialized Jupyter Server process (e.g., via jupyter-server-mcp or another server extension); requires JupyterLab >= 4.5.0a3.
License in practice
BSD 3-Clause License permits commercial and private use with minimal restrictions; you must retain copyright notices and disclaimers in distributions.
Quickstart
pip install jupyterlab_commands_toolkit
from jupyterlab_commands_toolkit.tools import execute_command, list_all_commands
async def main():
commands = await list_all_commands()
result = await execute_command("filebrowser:toggle-main")
Verify before relying
- Whether the extension works with JupyterLab versions between 4.5.0a3 and the latest stable release.
- Performance characteristics when listing or executing commands with high frequency.
- Compatibility with custom JupyterLab command plugins or third-party extensions.
Package facts
| License | permissive license permissive |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 2 packagesjupyter-serverjupyterlab-eventlistener |
| Maintenance | Actively maintained 107 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 81,077 / month, #14,252 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Framework :: JupyterFramework :: Jupyter :: JupyterLabFramework :: Jupyter :: JupyterLab :: 4Framework :: Jupyter :: JupyterLab :: ExtensionsFramework :: Jupyter :: JupyterLab :: Extensions :: PrebuiltLicense :: OSI Approved :: BSD LicenseProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9 |
Evidence: jupyterlab_commands_toolkit-0.1.6-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 › “jupyterlab command execution python”
- jupyterlab-commands-toolkitExposes JupyterLab commands to Python code and AI assistants via a…
- jupyter-mcp-toolsExposes JupyterLab commands as MCP (Model Context Protocol) tools,…
- ipylabipylab lets you control JupyterLab's interface and behavior from…
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 jupysql-plugin · jupyter-ai-chat-commands · jupyter-server-mcp · jupyterlab-code-formatter · jupyter-builder · jupyterlab-server · jupyter-ai · jupyter-ai-magics · jupyter-mcp-tools · jupyter-ai-router