Skip to main content

No project description provided

Project description

jupyter_ai_tools

Github Actions Status

jupyter_ai_tools is a Jupyter Server extension that exposes a collection of powerful, agent-friendly tools for interacting with notebooks and Git repositories. It is designed for use by AI personas (like those in Jupyter AI) to programmatically modify notebooks, manage code cells, and interact with version control systems.


✨ Features

This extension provides runtime-discoverable tools compatible with OpenAI-style function calling or MCP tool schemas. These tools can be invoked by agents to:

🧠 YNotebook Tools

  • read_cell: Return the full content of a cell by index
  • read_notebook: Return all cells as a JSON-formatted list
  • add_cell: Insert a blank cell at a specific index
  • delete_cell: Remove a cell and return its contents
  • write_to_cell: Overwrite the content of a cell with new source
  • get_max_cell_index: Return the last valid cell index

🌀 Git Tools

  • git_clone: Clone a Git repo into a given path
  • git_status: Get the working tree status
  • git_log: View recent commit history
  • git_add: Stage files (individually or all)
  • git_commit: Commit staged changes with a message
  • git_push: Push local changes to a remote branch
  • git_pull: Pull remote updates
  • git_get_repo_root_from_notebookpath: Find the Git root from a notebook path

These tools are ideal for agents that assist users with code editing, version control, or dynamic notebook interaction.


Requirements

  • Jupyter Server

Install

To install the extension, execute:

pip install jupyter_ai_tools

Uninstall

To remove the extension, execute:

pip uninstall jupyter_ai_tools

Troubleshoot

If you are seeing the frontend extension, but it is not working, check that the server extension is enabled:

jupyter server extension list

Contributing

Development install

# Clone the repo to your local environment
# Change directory to the jupyter_ai_tools directory
# Install package in development mode - will automatically enable
# The server extension.
pip install -e .

You can watch the source directory and run your Jupyter Server-based application at the same time in different terminals to watch for changes in the extension's source and automatically rebuild the extension. For example, when running JupyterLab:

jupyter lab --autoreload

If your extension does not depend a particular frontend, you can run the server directly:

jupyter server --autoreload

Running Tests

Install dependencies:

pip install -e ".[test]"

Development uninstall

pip uninstall jupyter_ai_tools

Packaging the extension

See RELEASE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jupyter_ai_tools-0.2.1.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

jupyter_ai_tools-0.2.1-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file jupyter_ai_tools-0.2.1.tar.gz.

File metadata

  • Download URL: jupyter_ai_tools-0.2.1.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-httpx/0.28.1

File hashes

Hashes for jupyter_ai_tools-0.2.1.tar.gz
Algorithm Hash digest
SHA256 61fc02be7d95c7cfb559f47dae27a1901f0eb4291d0db73e12d29f3dca7b5fa5
MD5 4099028186cfb6f61f8054597fc35584
BLAKE2b-256 5a9a5128de20ec33cb1cdaaf7d64b099aca46648d8f97910aa196500126c13e7

See more details on using hashes here.

File details

Details for the file jupyter_ai_tools-0.2.1-py3-none-any.whl.

File metadata

File hashes

Hashes for jupyter_ai_tools-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 28fc76c256dda9043b5f3b682578171099239bb86b24b531a663586503fd6e77
MD5 22bade252cb17ecc38545fdd44216eda
BLAKE2b-256 71e3f753970da529582ceef77a2792d24d79ba1e38825d1a9d63befe88069e27

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page