jupyter-mcp-server
mcp2.1.12๐ช ๐ง Model Context Protocol (MCP) Server for Jupyter.
By datalayer | 47 findings | Scanned 9/11/2026 | tooltrust-scanner/v0.3.19 | 1.3k
Risk Summary
Needs ApprovalDep Visibility plus Excessive Permissions raises enough risk that this tool should not be auto-trusted.
Potential impact: This finding indicates the tool should be reviewed before it is trusted.
Recommended action: Keep this tool behind manual approval and avoid unattended runs until the risky capabilities are narrowed or removed.
Suggested policy: keep this tool behind manual approval, do not allow unattended runs, and re-scan after narrowing risky permissions.
Security Findings (47)
tool name or description implies arbitrary script/code execution (evaluate_script, execute javascript, etc.)
execute_codeinsert_execute_code_cellFix: This tool can execute arbitrary code or shell commands on the host system. Remove it unless strictly required. If kept: (1) restrict access to trusted users/agents only, (2) require human approval before each invocation (Claude Desktop: set approval_required: true; other clients: enable equivalent confirmation), (3) use the most restrictive sandbox or read-only mode available, and (4) never expose this tool to untrusted input sources.
read_notebook:tool name "read_notebook" implies read-only operation but declares exec permission
Fix: Ensure tool names, descriptions, and permission declarations are internally consistent. Use explicit naming conventions that fully reflect actual capabilities.
tool performs network or execution operations but declares no rate-limit, timeout, or retry configuration
clear_cell_outputconnect_to_jupyterread_notebookrestart_notebookuse_sandboxFix: Declare explicit rate-limit, timeout, and retry configuration for all network and execution tools. Implement exponential back-off and surface resource state to the calling agent.
launch_sandbox:input schema exposes 12 properties (threshold: 10)
Fix: Tool requests broad permissions (exec/fs/network). Validate input parameters using Enums where possible, and restrict file system operations to explicit allowed directories.
declared capabilities: code/command execution
clear_cell_outputexecute_cellexecute_codeinsert_execute_code_cellread_notebookuse_sandboxdeclared capabilities: network access, filesystem access, HTTP requests
connect_to_jupyterdeclared capabilities: filesystem access
delete_celllist_filesoverwrite_cell_sourceuse_notebookdeclared capabilities: code/command execution, network access, environment variables
launch_sandboxdeclared capabilities: HTTP requests
restart_notebookFix: Tool requests broad permissions (exec/fs/network). Validate input parameters using Enums where possible, and restrict file system operations to explicit allowed directories.
Tool did not expose metadata.dependencies or repo_url, so supply-chain coverage is limited.
clear_cell_outputconnect_to_jupyterdelete_celledit_cell_sourceexecute_cellexecute_codeinsert_cellinsert_execute_code_celllaunch_sandboxlist_fileslist_kernelslist_notebookslist_sandboxesmove_celloverwrite_cell_sourceread_cellread_notebookrestart_notebookterminate_sandboxunuse_notebookuse_notebookuse_sandboxFix: Review and remediate the identified issue.
input parameter "jupyter_token" accepts a credential (informational; not evidence of insecure handling)
connect_to_jupyterinput parameter "proxy_token" accepts a credential (informational; not evidence of insecure handling)
launch_sandboxinput parameter "token" accepts a credential (informational; not evidence of insecure handling)
launch_sandboxFix: Avoid accepting raw credentials as input parameters. Use secret managers (e.g. 1Password CLI, AWS Secrets Manager) and ensure credentials are never logged or stored in agent traces.
Scan this tool yourself
Reproduce this audit locally, integrate into CI, or let your agent audit its own tools.
Install once, then scan any MCP server:
$ curl -sfL https://raw.githubusercontent.com/AgentSafe-AI/tooltrust-scanner/main/install.sh | bash$ tooltrust-scanner scan --server "npx -y jupyter-mcp-server"Adjust the package name if your npm registry name differs from the tool ID. View source
Add badge to your README
Copy this Markdown to show your ToolTrust grade on GitHub.
[](https://github.com/AgentSafe-AI/tooltrust-directory)