mcp-server-jupyter について
JupyterLab や Jupyter Notebook の notebook を読み取り、編集し、実行するための MCP サーバーです。notebook ファイルを AI アシスタントから直接操作したいデータ分析者を対象としています。
主な機能
- 01出力の有無を選んで notebook 内容を読み取り
- 02セルの追加と編集
- 03指定したセルを実行し出力を返却
- 04個別セルの出力を読み取り
活用シーン
- 01notebook に保存された結果を AI アシスタントで分析
- 02チャットを通じて notebook のセルを修正または追加
- 03セルを実行してコードの出力を確認
MCP 対応
本プロジェクトは MCP サーバーであり、notebook のセルの読み取り、追加、編集、実行を行うツールを MCP クライアントに公開します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
mcp-server-jupyter
Jupyter ノートブックをプログラムから管理し、操作するための MCP サーバーです。

コンポーネント
ツール
このサーバーは、ノートブックを操作するための 6 つのツールを提供します。
-
read_notebook_with_outputs:セルの出力を含むノートブックの内容を読み取ります- 必須:
notebook_path(文字列)
- 必須:
-
read_notebook_source_only:出力を含めずにノートブックの内容を読み取ります- 必須:
notebook_path(文字列) - 出力を含むノートブック全体を読み取るとサイズ制限に達する場合に使用します
- 必須:
-
read_output_of_cell:特定のセルの出力を読み取ります- 必須:
notebook_path(文字列)cell_id(文字列)
- 必須:
-
add_cell:ノートブックに新しいセルを追加します- 必須:
notebook_path(文字列)source(文字列)
- 任意:
cell_type(文字列):「code」または「markdown」position(整数):挿入位置のインデックス(-1 の場合は末尾に追加)
- 必須:
-
edit_cell:既存のセルの内容を変更します- 必須:
notebook_path(文字列)cell_id(文字列):編集するセルの一意の IDsource(文字列)
- 必須:
-
execute_cell:特定のセルを実行し、その出力を返します- 必須:
notebook_path(文字列)cell_id(文字列)
- セルの実行と出力を確認する際に便利です
- 必須:
Claude Desktop での使用方法
Step1:JupyterLab または Jupyter Notebook を起動する
uv を使用して Jupyter ノートブックを実行すると、仮想環境やパッケージのインストールをより簡単に管理できます。
詳細はuv の Jupyter ドキュメントをご覧ください。
uv venv --seed
source .venv/bin/activate
uv pip install jupyterlab
.venv/bin/jupyter lab
注記:この環境は、MCP サーバーの環境変数 UV_PROJECT_ENVIRONMENT として使用してください(次の手順を参照)。Jupyter を起動したのと同じフォルダーで実行してください。
echo $(pwd)/.venv
Step2:Claude Desktop を設定する。Claude Desktop の設定ファイルに次の設定を追加します:
PyPi パッケージ:
// ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"Jupyter-notebook-manager": {
"command": "uv",
"args": ["run", "--with", "mcp-server-jupyter", "mcp-server-jupyter"],
"env": {
"UV_PROJECT_ENVIRONMENT": "/path/to/venv_for_jupyter/.venv"
}
}
}
}
Git リポジトリのフォーク
// ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"Jupyter-notebook-manager": {
"command": "uv",
"args": [
"run",
"--directory",
"/Users/inna/mcp-server-jupyter/src/mcp_server_jupyter",
"mcp-server-jupyter"
],
"env": {
"UV_PROJECT_ENVIRONMENT": "/path/to/venv_for_jupyter/.venv"
}
}
}
}
Step 3:ノートブックと Claude チャットを開く
JupyterLab または Jupyter Notebook でノートブックを開くか、新規作成します。
ノートブックのフルパスを取得します:
- JupyterLab の場合:ファイルブラウザーでノートブックを右クリックし、→「パスをコピー」を選択します
- Jupyter Notebook の場合:URL からパスをコピーします(システム上のフルパスに変更してください)
Claude Desktop のチャットでは:
- ツールを呼び出す際は、必ずノートブックのフルパスを使用してください
- 例:
/Users/username/projects/my_notebook.ipynb
重要な注意事項:
- Claude で変更(add_cell、edit_cell)を行った後は:
- JupyterLab または Jupyter Notebook でノートブックのページを再読み込みしてください
- 現在のバージョンは自動再読み込みに対応していません
- Claude を使用している間は、JupyterLab または Jupyter Notebook のインスタンスを起動したままにしてください
ライセンス
このプロジェクトは MIT License の下でライセンスされています。詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。