Jupyter MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ALLOW_IMG | No | Whether to allow returning images as base64; set to 'true' to enable. | true |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connect_notebookA | Connect to a notebook and corresponding kernel. It is the FIRST STEP before ANY subsequent operations. |
| list_notebookA | List all currently connected Notebooks. It will return unique name, Jupyter URL and Path of all connected Notebooks |
| restart_notebookA | Restart the kernel of a specified Notebook, clear all imported packages and variables |
| read_notebookA | Read the source content (without output) of a connected Notebook. It will return the formatted content of the Notebook (including Index, Cell Type, Execution Count and Full Source Content). ONLY used when the user explicitly instructs to read the full content of the Notebook. |
| list_cellA | List the basic information of cells. It will return Index, Type, Execution Count and First Line of the Cell. It will be used to quickly overview the structure and current status of the Notebook or locate the index of specific cells for following operations(e.g. delete, insert). |
| read_cellB | Read the detailed content of a specific cell. It will return the source code, execution count and output of the cell. |
| delete_cellA | Delete a specific cell. When deleting many cells, MUST delete them in descending order of their index. |
| insert_cellB | Insert a cell at the specified index. When inserting many cells, MUST insert them in ascending order of their index. |
| execute_cellC | Execute a specific cell with a timeout. It will return the output of the cell. |
| overwrite_cellB | Overwrite the content of a specific cell
It will return a comparison (diff style, |
| append_execute_code_cellA | Add a new code cell to the end of a Notebook and immediately execute it.
It is highly recommended for replacing the combination of |
| execute_temporary_codeA | Execute a temporary code block (not saved to the Notebook) and will return the output. It will recommend to use in following cases:
DO NOT USE IN THE FOLLOWING CASES:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose. For example, append_execute_code_cell versus execute_cell differ in that one creates a new cell before executing, while execute_cell runs an existing one. execute_temporary_code is separate for temporary code. All other tools operate on different aspects (connect, list, read, write, delete, etc.), leaving no ambiguity.
All tool names follow a consistent verb_noun pattern in snake_case, such as connect_notebook, list_cell, overwrite_cell, restart_notebook. The compound verb in append_execute_code_cell is still systematic and matches the pattern.
With 12 tools, the set is well-scoped for a Jupyter notebook interaction server. Each tool serves a distinct operation (connect, list, read, write, execute, etc.) without unnecessary duplication or excessive granularity.
The tools cover core workflows: connecting, listing, reading, executing, inserting, deleting, overwriting cells, and restarting kernels. Minor gaps exist, such as no explicit save tool or ability to create a new notebook, but these are non-critical for typical agent interactions.