jupyter-ai-tools
A suite of tools for AI agents in Jupyter
What it is and what it does
jupyter_ai_tools is a Jupyter Server extension that provides a collection of tools designed for AI agents (such as those in Jupyter AI) to programmatically interact with notebooks, files, and Git repositories. It exposes four main toolkits: file system operations (read, write, search, glob, grep, ls), notebook operations (read, add, edit, delete cells), Git operations (clone, status, log, pull, push, commit), and bash execution. The tools are compatible with OpenAI-style function calling and MCP tool schemas, making them suitable for integration with AI agents that need to modify notebooks or manage version control.
The package includes a collaborative_tool decorator that enables real-time collaboration awareness, allowing other users in the same Jupyter environment to see when an AI tool is actively working on shared notebooks. It depends on jupyter-server, jupyter-ydoc, and pycrdt for its runtime, and supports Python 3.10 through 3.14. The extension is actively maintained and installs with low friction.
Use it for:
- Enable AI agents to automatically generate, edit, and organize notebook cells in response to user requests.
- Provide version control operations (commit, push, pull) to agents managing code repositories within Jupyter.
- Allow agents to search and modify files across a project using file system tools like grep and search-and-replace.
- Support collaborative notebook editing by showing other users when an AI agent is actively modifying shared notebooks.
- Execute bash commands from agents to run tests, build processes, or system utilities within the Jupyter environment.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
A Jupyter Server extension that exposes file system, notebook, Git, and code execution tools for AI agents to programmatically interact with notebooks and repositories.
Yes, if you are building AI agents that need to interact with Jupyter notebooks or Git repositories. The extension is actively maintained, has low install friction, carries a permissive BSD license, and exposes a well-designed toolkit for agent-driven automation. Install with caution if your use case requires extensive performance testing with large notebooks, as that is not documented in the fact sheet.
Install
jupyter-ai-tools on PyPI
pip
pip install jupyter-ai-toolsuv
uv add jupyter-ai-toolspoetry
poetry add jupyter-ai-toolsInstalling jupyter-ai-tools
Before you install
Low friction install with three runtime dependencies (jupyter-server, jupyter-ydoc, pycrdt). Active maintenance with a release 29 days ago; repo is not archived and last commit was recent.
License in practice
BSD 3-Clause License permits commercial and private use with attribution and liability disclaimers; no restrictions on modification or redistribution.
Quickstart
pip install jupyter_ai_tools
from jupyter_ai_tools.utils import collaborative_tool
user_info = {"name": "Alice", "color": "var(--jp-collaborator-color1)", "display_name": "Alice Smith"}
@collaborative_tool(user=user_info)
async def my_tool(file_path: str, content: str):
return f"Processed {file_path}"
Requires Jupyter Server to be running; Python 3.10 or later.
Verify before relying
- Whether the collaborative_tool decorator requires additional setup beyond the decorator application shown in the excerpt.
- Performance characteristics when managing large notebooks or repositories through the toolkit.
- Compatibility with Jupyter environments other than Jupyter Server (e.g., JupyterHub, JupyterLite).
Package facts
| License | BSD 3-Clause License Copyright (c) 2025, Project Jupyter All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the… (full text in the JSON record) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — jupyter-server, jupyter-ydoc, pycrdt |
| Maintenance | actively maintained — 29 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 101,840/month — #12,910 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: jupyter_ai_tools-0.6.1-py3-none-any.whl
Keywords: Extension, Jupyter
Tags
More Application Frameworks packages
FastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
textualTextual is a Python framework for building…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
mcpBuild and connect to Model Context Protocol…
permissive · top 1,000 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
jupyter-mcp-serverAn MCP server that exposes Jupyter notebooks…
permissive · top 15,000 on PyPI
jupyter-ai-magicsJupyter AI Magics provides a JupyterLab…
permissive · top 15,000 on PyPI
jupyter-aiJupyter AI is a JupyterLab extension that…
permissive · top 15,000 on PyPI
jupyter-mcp-toolsExposes JupyterLab commands as MCP (Model…
permissive · top 15,000 on PyPI
jupyter-server-fileidA Jupyter Server extension that provides a File…
permissive · top 5,000 on PyPI
jupyterlab_notebook_awarenessA JupyterLab extension that tracks which…
permissive · top 15,000 on PyPI
jupyter-collaboration-uiAdds real-time collaboration UI elements to…
permissive · top 15,000 on PyPI
jupyter-server-documentsA JupyterLab extension that moves document…
permissive · top 15,000 on PyPI
jupyter-server-ydocAdds real-time collaborative editing to Jupyter…
permissive · top 5,000 on PyPI
jupyter-server-terminalsAdds terminal support to Jupyter Server,…
permissive · top 1,000 on PyPI