Skip to main content

MCP server for stateful Jupyter kernel development with multi-kernel support

Project description

Jupyter Kernel MCP

PyPI version Python 3.10+ License: MIT

A Model Context Protocol (MCP) server that provides stateful Jupyter kernel development with multi-kernel support for AI agents and assistants.

Table of contents

  1. Project description
  2. Who this project is for
  3. Project dependencies
  4. Instructions for using Jupyter Kernel MCP
  5. Troubleshooting
  6. Contributing guidelines
  7. Additional documentation
  8. How to get help
  9. Terms of use

Project description

With Jupyter Kernel MCP you can execute Python code in persistent, isolated environments that maintain state between executions—perfect for AI agents performing complex data analysis workflows.

Jupyter Kernel MCP helps you build stateful AI agent workflows that can load datasets, perform transformations, and analyze results across multiple interactions without losing variables or computed state.

Unlike traditional stateless code execution, Jupyter Kernel MCP preserves variables, imports, and computed results between AI agent messages, enabling sophisticated multi-step data science workflows.

Key Features

  • 🔄 Persistent State: Variables and imports persist between code executions
  • 🚀 Multi-Kernel Support: Create and manage multiple isolated kernel environments
  • 🤖 AI-Agent Ready: Seamless integration with Claude Code and other MCP clients
  • 📊 Data Science Workflows: Perfect for iterative data analysis and exploration
  • ⚡ Fast Communication: Direct socket-based communication with Jupyter kernels
  • 🛠 Easy Management: Simple kernel lifecycle management (start, stop, reset, list)

Who this project is for

This project is intended for AI developers, data scientists, and automation engineers who want to build intelligent agents that can perform stateful data analysis and complex computational workflows.

Perfect for:

  • Building AI agents that analyze datasets across multiple interactions
  • Creating persistent computational environments for LLMs
  • Developing stateful data science workflows with AI assistants
  • Prototyping and exploring APIs with maintained context

Project dependencies

Before using Jupyter Kernel MCP, ensure you have:

  • Python 3.10 or higher - Required for MCP SDK compatibility
  • Claude Code, Cline, or another MCP client - To interact with the server
  • Jupyter dependencies - Automatically installed with the package

Instructions for using Jupyter Kernel MCP

Get started with Jupyter Kernel MCP by installing the package and adding it to your MCP client.

Install Jupyter Kernel MCP

From PyPI (Stable Release)

  1. Install using pip:

    pip install jupyter-kernel-mcp
    

    Or using uv:

    uv add jupyter-kernel-mcp
    

From GitHub (Development Version)

To install the latest development version directly from GitHub:

uv tool install git+https://github.com/codewithcheese/jupyter-kernel-mcp.git

Verify Installation

jupyter-kernel-mcp --help

Configure with Claude Code

  1. Add the server to Claude Code:

    claude mcp add jupyter-kernel jupyter-kernel-mcp
    
  2. Verify the server is listed:

    claude mcp list
    

Configure with other MCP clients

  1. Add to your MCP client configuration (example for mcp_config.json):

    {
      "servers": {
        "jupyter-kernel": {
          "command": "jupyter-kernel-mcp"
        }
      }
    }
    

Run Jupyter Kernel MCP

  1. The server starts automatically when called by your MCP client

    No manual startup required - the server launches when your MCP client connects.

  2. Start your first kernel:

    In Claude Code or your MCP client:

    Please start a new Jupyter kernel for data analysis
    
  3. Execute stateful code:

    Load this dataset and show me the first few rows:
    
    import pandas as pd
    df = pd.read_csv('data.csv')
    df.head()
    
  4. Continue the analysis in follow-up messages:

    Now group the data by category and calculate the mean values
    

    The df variable persists from the previous execution!

Available Tools

Tool Description
start_kernel Create a new Jupyter kernel (with optional custom ID)
execute_python Execute Python code in a specific kernel
list_kernels Show all active kernels
list_variables Display variables in a kernel's namespace
get_kernel_status Get detailed kernel information
stop_kernel Stop and remove a specific kernel
reset_kernel Reset a kernel (clears all variables)

Troubleshooting

Issue Solution
Server won't start - "No module named 'jupyter_client'" Install dependencies: pip install jupyter-client
Kernel creation fails Ensure Python 3.10+ is installed and accessible
MCP client can't find server Verify installation: which jupyter-kernel-mcp
Variables not persisting between executions Ensure you're using the same kernel_id for related executions

Other troubleshooting resources:

  • Check server logs for detailed error messages
  • Verify your MCP client supports the required MCP protocol version
  • Ensure no firewall is blocking local kernel connections

Contributing guidelines

We welcome contributions! Please see our Contributing Guide for details on:

  • How to submit bug reports and feature requests
  • Development setup and testing procedures
  • Code style guidelines and review process

Additional documentation

For more information:

How to get help

Need assistance? Here's how to get support:

Terms of use

Jupyter Kernel MCP is licensed under the MIT License.


Built with ❤️ for the AI agent development community

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter_kernel_mcp-0.1.0.tar.gz (47.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jupyter_kernel_mcp-0.1.0-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_kernel_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: jupyter_kernel_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 47.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.11

File hashes

Hashes for jupyter_kernel_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c165aed90d5a970d2ea0f80dd3b1fd2a60dd12dafab4c0f24572096d7a6b0bd0
MD5 0c052b8f80c42b935855d8791b37c000
BLAKE2b-256 da6c2079d6af88c1af457d8c4aea624af9e0011c326e11ae4e14682ab5f5a947

See more details on using hashes here.

File details

Details for the file jupyter_kernel_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_kernel_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6a852116e7782a727ab1994dd62d2bbd79915d246bf0f8614fcda079309d1f05
MD5 3596385cb543400aa9062c42d3455821
BLAKE2b-256 14cd720f9d3240366b0afba01decfb28d8749652f3379b47ce1347c500b9aaaf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page