jtpio/xtralab
Connect a coding agent to xtralab and JupyterLab: the Jupyter MCP server, and skills to open and stop xtralab in a folder, customize the UI, and give guided code walkthroughs.
Use this skill whenever the user wants to change how JupyterLab or xtralab looks or behaves — hide or show sidebar tabs, change the default theme, disable extensions, hide the status bar, move the activity bar, register a language server, tweak CodeMirror or notebook defaults, customize the xtralab launcher or sidebar, change keyboard shortcuts, edit context or menu items, set per-user defaults that survive reinstalls. Also use it when the user wants to _add_ new UI or behavior — a toolbar button, status-bar item, sidebar panel, custom command, menu entry, launcher card, file handler, mime renderer, or any "ad-hoc extension" — since those need a labextension, not a config tweak. Use it even when the user does not say "JupyterLab" or "xtralab" explicitly, as long as the context is a Jupyter notebook environment or the xtralab desktop app. Teaches the four config surfaces (page_config.d, default_setting_overrides.d, jupyter_server_config.d, lab/user-settings) and the fifth surface for runtime behavior (share/jupyter/labextensions/), how to find them with jupyter --paths, and where to write changes safely without touching installed package files.
Start xtralab (JupyterLab) in a folder from the terminal and open it in the browser. Use when the user asks to open, start, launch, or show xtralab or JupyterLab for a folder, a git worktree, or the current project, for example "open xtralab in this worktree", "start xtralab here", "show me these changes in xtralab". Runs uvx xtralab open, so nothing is installed into the project. Prints the URL, reuses a server that already serves the folder, and can update xtralab to the latest release.
Stop the xtralab (JupyterLab) server that serves a folder, stop all xtralab servers, or list the running ones. Use when the user asks to stop, close, shut down, or kill xtralab or JupyterLab for a folder, a git worktree, or the current project, or asks which xtralab servers run, for example "stop xtralab", "close the xtralab server for this worktree", "stop all xtralab servers", "which xtralab servers are running?". Runs uvx xtralab stop and uvx xtralab list, which find servers by folder, so no port is needed.