Getting Started
To use Jupyter MCP Server, you first need to decide which setup fits your needs:
- MCP Server Location - It can be running as a Standalone MCP Server or inside the Jupyter Server as a Jupyter Server Extension - The last one has for advantage to avoid running 2 separate servers (Jupyter server + MCP server) but only supports Streamable HTTP transport.
- MCP Transport - It supports both STDIO Transport and Streamable HTTP Transport
- Jupyter Code Sandbox - It can connect to Jupyter Server (local or remote), JupyterHub, Datalayer, Kaggle, Monty, Google Colab, Modal, Daytona, E2B, CoreWeave, and Cloudflare.
This guide will help you set up a Jupyter MCP Server to connect your preferred MCP client to a JupyterLab instance.
The Jupyter MCP Server acts as a bridge between the MCP client and the JupyterLab server, allowing you to interact with Jupyter notebooks seamlessly.
You can customize the setup further based on your requirements. Refer to the server configuration for more details on the possible configurations.
Choosing Your Transport
Jupyter MCP Server supports two types of transport to connect to your MCP client: STDIO and Streamable HTTP. Choose the one that best fits your needs.
For more details on the different transports, refer to the official MCP documentation here.
STDIO Transport
Best for: Desktop applications, Docker deployments, single-user setups
- ✅ Simple configuration
- ✅ Works with most MCP clients (Claude Desktop, Cursor, Windsurf, VS Code)
- ✅ No additional server ports needed
- ❌ One client connection at a time
👉 Get started with STDIO Transport
Streamable HTTP Transport
Best for: Web applications, multiple concurrent clients, production deployments
- ✅ Multiple clients can connect simultaneously
- ✅ Web-based access
- ✅ Can run as Jupyter Server Extension (no separate MCP server process)
- ❌ Requires opening network ports
If you choose Streamable HTTP transport, you can also choose to run the MCP server:
- As a Jupyter Server Extension - MCP server runs inside Jupyter (recommended, simpler setup)
- As a Standalone Server - MCP server runs as a separate process
Code Sandbox Options
Choose where notebook code runs. The MCP tools remain the same whichever backend you use; the provider-specific pages explain credentials and setup.
| Code sandbox | Best suited for | Setup |
|---|---|---|
| Jupyter Server (local or remote) | Standard JupyterLab and Jupyter Notebook servers | Jupyter Server documentation |
| JupyterHub | Multi-user deployments with authentication and resource management | JupyterHub setup guide |
| Datalayer | Hosted Jupyter with collaboration and security features | Datalayer documentation |
| Kaggle | Kaggle interactive notebook runtimes | Kaggle documentation |
| Monty | Secure, in-process execution of lightweight Python snippets | Monty documentation |
| Google Colab | Google Colab notebook runtimes (experimental) | Google Colab documentation |
| Modal | Isolated, on-demand cloud execution | Modal documentation |
| Daytona | Cloud sandboxes with GPU and preemptible GPU capacity | Daytona documentation |
| E2B | Sandboxes where each context is a Jupyter kernel with rich outputs | E2B documentation |
| CoreWeave | Containers running on CoreWeave's GPU cloud | CoreWeave documentation |
| Cloudflare | Sandboxes reached through the sandbox bridge Worker | Cloudflare documentation |
With Jupyter Server, you can use STDIO, Streamable HTTP as a standalone server, or Streamable HTTP as a Jupyter Server extension.
If you're deploying for multiple users, see the Multi-User Documentation for architecture patterns and best practices.
MCP Client Configuration
Once you've set up your MCP server, you need to configure your MCP client. Choose your client:
- Claude Desktop - Anthropic's desktop app
- VS Code - GitHub Copilot integration
- Cursor - AI-first code editor
- Cline - VS Code extension
- Windsurf - Collaborative coding environment
Next Steps
After setting up your MCP server and client:
🔧 Explore Available Tools - Learn about the MCP tools for interacting with notebooks
📝 Use Prompts - Discover prompt features for citing and referencing notebooks
🔒 Secure Your Deployment - Review authentication and security best practices for token management and authentication
📚 Learn More - Check out the Resources section for tutorials, videos, and community content
Additional Resources
- Configuration Reference - Complete environment variable and CLI option documentation
- Community - Join discussions, get help, and connect with other users
- Releases - See what's new in each version