Enables comprehensive manipulation of Jupyter notebook files through position-based operations, including listing, reading, editing, inserting, and deleting cells, as well as cell type conversion and bulk edits.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Jupyter Completelist all cells in analysis.ipynb and show their content"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Jupyter Complete
A comprehensive Model Context Protocol (MCP) server for Jupyter notebook manipulation with position-based operations and VS Code integration.
Features
🎯 Position-Based Operations
list_cells- List all cells with indices and type informationget_cell_source- Get source code of specific cells by indexedit_cell_source- Edit cell content by indexinsert_cell- Insert new cells at specific positionsdelete_cell- Delete cells by index with automatic reindexing
🚀 Enhanced Operations
move_cell- Move cells between positionsconvert_cell_type- Convert between code/markdown/raw cellsbulk_edit_cells- Perform multiple operations in a single call
🔧 VS Code Integration
trigger_vscode_reload- Force VS Code to reload notebook filesFile watcher support for automatic reloading
VS Code workspace and settings generation
Extension recommendations for optimal Jupyter experience
Installation
Clone the repository:
git clone https://github.com/tofunori/mcp-jupyter-complete.git cd mcp-jupyter-completeInstall dependencies:
npm installMake executable (optional):
npm link
Configuration
Add to your ~/.claude.json configuration:
Or if installed globally via npm:
Usage Examples
Basic Cell Operations
Advanced Operations
VS Code Integration
VS Code Setup
For optimal VS Code integration:
Install recommended extensions:
Python
Jupyter
Jupyter Keymap
Jupyter Renderers
Configure auto-reload: Add to VS Code settings:
{ "files.watcherExclude": { "**/.ipynb_checkpoints/**": true }, "notebook.diffEditor.ignoreTrimWhitespace": false }Use with Claude Code: When using with Claude Code, notebook changes made via MCP will automatically trigger VS Code to prompt for reload.
API Reference
Core Functions
Function | Parameters | Description |
|
| Lists all cells with indices |
|
| Gets cell source code |
|
| Edits cell content |
|
| Inserts new cell |
|
| Deletes cell |
Enhanced Functions
Function | Parameters | Description |
|
| Moves cell position |
|
| Converts cell type |
|
| Bulk operations |
VS Code Functions
Function | Parameters | Description |
|
| Forces VS Code reload |
Cell Types
Supported cell types:
code- Python/executable code cellsmarkdown- Markdown text cellsraw- Raw text cells
Error Handling
The server provides detailed error messages for:
Invalid cell indices
File read/write permissions
Malformed notebook JSON
Invalid cell type conversions
Development
Testing
Linting
Development Mode
Contributing
Fork the repository
Create a feature branch
Make your changes
Add tests if applicable
Submit a pull request
License
MIT License - see LICENSE file for details.
Changelog
v1.0.0
Initial release
Position-based cell operations
VS Code integration
Bulk operations support
Comprehensive error handling