What it does
This MCP server bridges Claude and Jupyter notebooks, enabling real-time interaction with running kernels. It exposes tools to read notebook cells, execute code, manage multiple notebooks on a single Jupyter server, and retrieve cell outputs—including multimodal results like plots and images. Integrates with JupyterLab for enhanced UI automation.
Who it's for
Data scientists and engineers using Claude Code or Claude Desktop who need to execute and iterate on Jupyter notebooks without context-switching. Useful for AI-assisted analysis, exploratory work, and iterating on code based on Claude's suggestions within a running notebook environment.
Common use cases
- Execute notebook cells from Claude and read outputs in real-time
- Iterate on data analysis—modify cells and immediately see results without leaving Claude
- Switch between multiple notebooks and manage kernels through Claude's tool use
- Generate plots, images, or other multimodal outputs and view them in Claude
- Automate notebook workflows and testing through Claude-driven execution
Setup pitfalls
- Requires
MCP_TOKENenvironment variable in the MCP client configuration (breaking change in v1.0.0) - Reads and writes filesystem via Jupyter server—ensure the server has appropriate file permissions and sandbox constraints if running untrusted notebooks
- Makes network calls to Jupyter server; verify connectivity and firewall rules for your Jupyter deployment
- 3 secrets detected in codebase—review before deploying to production environments