- Home
- MCP servers
- Jupyter Notebook
Jupyter Notebook
- python
2
GitHub Stars
python
Language
5 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"shwetalsoni-jupyter-notebook-mcp-server": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp>=2.8.1",
"python",
"<absolute_path_to_jupyter_mcp_server>/main.py"
]
}
}
}This MCP Server lets you interact with Jupyter notebooks through a FastMCP client. You can read notebook cells, add new cells, execute single cells, run entire notebooks, and retrieve metadata and statistics, all with robust validation and progress reporting.
How to use
To connect your MCP client, ensure you have uv installed. Use the jupyter notebook MCP server by configuring your MCP client to start the server process and then issue requests for the notebook operations. All actions are exposed as MCP tools you can call from your client, such as reading cells, adding cells, executing specific cells, or running the entire notebook. You can also fetch metadata and progress updates for long-running operations.
How to install
# Prerequisites
- Ensure Python is installed
- Ensure uv is installed and accessible in your PATH
# Start the MCP server via uv as described in the config
Configuration and usage notes
The server is exposed to MCP clients through a local runtime command. Use the following configuration snippet in your MCP config to run the server with uv and the FastMCP runtime.
{
"mcpServers": {
"jupyter_notebook": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp>=2.8.1",
"python",
"<absolute_path_to_jupyter_mcp_server>/main.py"
]
}
}
}
Testing
To verify all features, run the test client to exercise read, add, execute, and metadata operations. The test client will demonstrate cell reading, insertion, and execution workflows.
python test_client.py
Security notes
Cell execution runs Python code directly via a subprocess. Only execute notebooks from trusted sources. Consider running in a sandboxed environment for production use. Timeout controls help prevent runaway executions.
Dependencies
- fastmcp - MCP server framework
Tools
The server provides a set of tools for working with Jupyter notebooks. Use these from your MCP client to perform common notebook operations.
🧠Available tools
-
read_notebook_cellsRead cells from a Jupyter notebook with optional filtering by cell type. -
add_cell_to_notebookAdd a new cell to a Jupyter notebook at a specified position. -
execute_notebook_cellExecute a specific cell in a Jupyter notebook. -
execute_entire_notebookExecute all code cells in a Jupyter notebook sequentially. -
get_notebook_infoGet basic information about a Jupyter notebook.
Available tools
read_notebook_cells
Read cells from a Jupyter notebook with optional filtering by cell type.
add_cell_to_notebook
Add a new cell to a Jupyter notebook at a specified position.
execute_notebook_cell
Execute a specific cell in a Jupyter notebook.
execute_entire_notebook
Execute all code cells in a Jupyter notebook sequentially.
get_notebook_info
Get basic information about a Jupyter notebook.