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.0a0jupyterlab-commands-toolkit >=0.1.6
- 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. To wire it up to Claude Code:
claude mcp add jupyter-mcp -- uvx --prerelease allow --from jupyter-server-mcp jupyter-server-mcp-proxy
jupyter-server-mcpis currently a pre-release.uvxskips pre-releases by default, so pass--prerelease allowor it silently installs the older stable release and the proxy/server versions won't match.
Alternatively, for a single server on a fixed port, connect directly over HTTP:
claude mcp add --transport http jupyter-mcp 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