jupyter-mcp-server  by datalayer

MCP server for Jupyter notebooks

Created 7 months ago
668 stars

Top 50.4% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

This project provides a Model Context Protocol (MCP) server for Jupyter, enabling interaction with Jupyter notebooks from external applications like Claude Desktop. It targets developers and researchers who need to programmatically control and interact with notebook environments, facilitating AI-assisted coding and analysis workflows.

How It Works

The server acts as a bridge, translating MCP requests into actions within a JupyterLab instance. It leverages Jupyter Real Time Collaboration to ensure synchronized notebook state. The core functionality is exposed through tools that can add and execute code cells or add markdown cells, returning the output or success messages.

Quick Start & Requirements

  • Install: pip install jupyterlab==4.4.1 jupyter-collaboration==4.0.2 ipykernel followed by pip uninstall -y pycrdt datalayer_pycrdt and pip install datalayer_pycrdt==0.12.15.
  • Run JupyterLab: jupyter lab --port 8888 --IdentityProvider.token MY_TOKEN --ip 0.0.0.0 or make jupyterlab.
  • Prerequisites: JupyterLab, jupyter-collaboration, ipykernel, datalayer_pycrdt. Docker is used for the MCP server itself.
  • Setup: Requires installing specific versions of Jupyter packages and the datalayer_pycrdt library. Configuration for external clients like Claude Desktop involves setting environment variables for server URL, token, and notebook path.
  • Docs: MCP documentation website

Highlighted Details

  • Supports programmatic addition and execution of code cells within Jupyter notebooks.
  • Enables adding markdown cells to notebooks.
  • Integrates with Claude Desktop for AI-assisted notebook interaction.
  • Offers Docker image for deployment.

Maintenance & Community

  • Project is maintained by datalayer.
  • Installation via Smithery is supported: npx -y @smithery/cli install @datalayer/jupyter-mcp-server --client claude.

Licensing & Compatibility

  • The README does not explicitly state a license. Compatibility for commercial use or closed-source linking is not specified.

Limitations & Caveats

The Linux setup for Claude Desktop is marked as UNOFFICIAL. The project relies on specific versions of JupyterLab and jupyter-collaboration, which might lead to compatibility issues with newer versions.

Health Check
Last Commit

17 hours ago

Responsiveness

1 week

Pull Requests (30d)
8
Issues (30d)
5
Star History
80 stars in the last 30 days

Explore Similar Projects

Starred by Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), Gabriel Almeida Gabriel Almeida(Cofounder of Langflow), and
1 more.

genai by rgbkrk

0.3%
353
IPython extension for generative AI assistance in Jupyter notebooks
Created 3 years ago
Updated 1 year ago
Starred by Will Brown Will Brown(Research Lead at Prime Intellect) and Joe Walnes Joe Walnes(Head of Experimental Projects at Stripe).

mito by mito-ds

0.3%
3k
Jupyter extensions for faster Python coding
Created 3 years ago
Updated 19 hours ago
Feedback? Help us improve.