Agent-ready JupyterLab.
ajlab is a small meta-package that installs JupyterLab plus a few extensions
useful for agent workflows, and ships some defaults under etc/jupyter/labconfig.
Minimum versions (see pyproject.toml):
jupyterlab >=4.6.1jupyter-docprovider >=3.0.0andjupyter-server-ydoc >=3.0.0jupyter-server-mcp >=0.3.0jupyterlab-commands-toolkit >=0.2.0
- Hidden files shown in the file browser.
pip install ajlabOnce installed, start JupyterLab with:
jupyter labAgent connectivity is provided by jupyter-server-mcp, which runs inside
JupyterLab and exposes an MCP endpoint (default port 3001) that any MCP client
can connect to.
The recommended way to connect a client is the stdio proxy, which auto-discovers
the running Jupyter MCP server and bridges stdio to its HTTP endpoint. It keeps
working unchanged when several Jupyter servers run side by side or when the port
is assigned dynamically. The proxy is installed alongside ajlab, so to wire it
up to Claude Code from a JupyterLab terminal:
claude mcp add jupyter -- jupyter-server-mcp-proxyFrom an environment where jupyter-server-mcp-proxy is not on the PATH, run it
with uvx instead:
claude mcp add jupyter -- uvx --from jupyter-server-mcp jupyter-server-mcp-proxyAlternatively, for a single server on a fixed port, connect directly over HTTP:
claude mcp add --transport http jupyter http://localhost:3001/mcpSee the jupyter-server-mcp README for tool registration via
jupyter_config.py and snippets for other MCP clients.
BSD-3-Clause
