You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> 🚨 **Latest Release: v0.14.0**: **Multi-notebook support!**You can now seamlessly switch between multiple notebooks in a single session. [📋 Read more in the release notes](https://jupyter-mcp-server.datalayer.tech/releases)
31
+
> 🚨 **Latest Release: v17.0**: **JupyterLab Mode Integration!**Enhanced UI integration with automatic notebook opening. [📋 Read more in the release notes](https://jupyter-mcp-server.datalayer.tech/releases)
32
32
33
33

34
34
@@ -42,14 +42,14 @@
42
42
-[Contributing](#-contributing)
43
43
-[Resources](#-resources)
44
44
45
-
46
45
## 🚀 Key Features
47
46
48
47
- ⚡ **Real-time control:** Instantly view notebook changes as they happen.
49
48
- 🔁 **Smart execution:** Automatically adjusts when a cell run fails thanks to cell output feedback.
50
49
- 🧠 **Context-aware:** Understands the entire notebook context for more relevant interactions.
51
50
- 📊 **Multimodal support:** Support different output types, including images, plots, and text.
52
51
- 📚 **Multi-notebook support:** Seamlessly switch between multiple notebooks.
- 🤝 **MCP-compatible:** Works with any MCP client, such as Claude Desktop, Cursor, Windsurf, and more.
54
54
55
55
Compatible with any Jupyter deployment (local, JupyterHub, ...) and with [Datalayer](https://datalayer.ai/) hosted Notebooks.
@@ -89,6 +89,14 @@ The server provides a rich set of tools for interacting with Jupyter notebooks,
89
89
|`insert_execute_code_cell`| A convenient tool to insert a new code cell and execute it in one step. |
90
90
|`execute_ipython`| Execute IPython code directly in the kernel, including magic and shell commands. |
91
91
92
+
### JupyterLab Integration
93
+
94
+
*Available only when JupyterLab mode is enabled. It is enabled by default.*
95
+
96
+
| Name | Description |
97
+
|:---|:---|
98
+
|`notebook_run-all-cells`| Execute all cells in the current notebook sequentially using JupyterLab's native commands. |
99
+
92
100
For more details on each tool, their parameters, and return values, please refer to the [official Tools documentation](https://jupyter-mcp-server.datalayer.tech/tools).
Copy file name to clipboardExpand all lines: docs/docs/deployment/jupyter/index.mdx
+6Lines changed: 6 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,6 +6,12 @@ The Jupyter MCP Server acts as a bridge between the MCP client and the JupyterLa
6
6
7
7
You can customize the setup further based on your requirements. Refer to the [server configuration](/configure) for more details on the possible configurations.
8
8
9
+
:::tip JupyterLab Mode
10
+
11
+
**New in v0.17.0**: Enable JupyterLab mode for enhanced UI integration! When enabled, notebooks automatically open in JupyterLab and additional UI tools become available. See the [JupyterLab Mode configuration](/configure#jupyterlab-mode) for details.
12
+
13
+
:::
14
+
9
15
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.
10
16
For more details on the different transports, refer to the official MCP documentation [here](https://modelcontextprotocol.io/specification/2025-06-18/basic/transports).
Copy file name to clipboardExpand all lines: docs/docs/deployment/jupyter/stdio/index.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@
7
7
Make sure you have the following packages installed in your environment. The collaboration package is needed as the modifications made on the notebook can be seen thanks to [Jupyter Real Time Collaboration](https://jupyterlab.readthedocs.io/en/stable/user/rtc.html).
Copy file name to clipboardExpand all lines: docs/docs/deployment/jupyter/streamable-http/standalone/index.mdx
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,7 +7,7 @@
7
7
Make sure you have the following packages installed in your environment. The collaboration package is needed as the modifications made on the notebook can be seen thanks to [Jupyter Real Time Collaboration](https://jupyterlab.readthedocs.io/en/stable/user/rtc.html).
- 🤝 **MCP-compatible:** Works with any MCP client, such as [Claude Desktop](/clients/claude_desktop), [Cursor](/clients/cursor), [Cline](/clients/cline), [Windsurf](/clients/windsurf) and more.
30
31
31
32
To use Jupyter MCP Server, you first need to decide which setup fits your needs:
Copy file name to clipboardExpand all lines: docs/docs/tools/index.mdx
+14-1Lines changed: 14 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# Tools
2
2
3
-
The server currently offers 16 tools organized into 3 categories:
3
+
The server currently offers 16 tools organized into 3 categories, plus 1 additional JupyterLab-specific tool:
4
4
5
5
## Server Management Tools (3 tools)
6
6
@@ -164,3 +164,16 @@ The server currently offers 16 tools organized into 3 categories:
164
164
-`timeout`(int): Execution timeout in seconds (default: 60s)
165
165
- Returns:
166
166
-`list[Union[str, ImageContent]]`: List of outputs from the executed code (supports multimodal output including images)
167
+
168
+
## JupyterLab-Specific Tools (1 tool)
169
+
170
+
*Available only when JupyterLab mode is enabled (`--jupyterlab` or `jupyterlab: true` in config). It is set to `True` by default.*
171
+
172
+
#### 17. `notebook_run-all-cells`
173
+
174
+
- Execute all cells in the current notebook sequentially.
175
+
- This tool provides a convenient way to run the entire notebook from start to finish, which is particularly useful for batch execution or notebook validation.
176
+
- Only available when JupyterLab mode is enabled for enhanced UI integration.
177
+
- Input: None
178
+
- Returns: Success message indicating that all cells have been executed
179
+
- Note: This tool uses JupyterLab's native execution commands for optimal performance and UI feedback.
0 commit comments