Python SDK for Undisk MCP — undo-first versioned file storage for AI agents
Project description
undisk-mcp
[!TIP] Home: https://mcp.undisk.app Issues: https://github.com/kiarashplusplus/undisk-mcp-tracker/issues
Python SDK for Undisk MCP — undo-first versioned file storage for AI agents.
Install
pip install undisk-mcp
Quick Start
import asyncio
from undisk_mcp import UndiskClient
async def main():
async with UndiskClient(api_key="your-api-key") as client:
await client.initialize()
# Write a file
await client.write_file("hello.txt", "Hello from Python!")
# Read it back
result = await client.read_file("hello.txt")
print(result.text)
# List all files
files = await client.list_files()
print(files.text)
asyncio.run(main())
Features
- Typed client with convenience methods for common MCP tools
- Session management (automatic
Mcp-Session-Idtracking) - Retry with exponential backoff (configurable)
- Async-first design using
httpx - Context manager support (
async with)
API Reference
UndiskClient
client = UndiskClient(
api_key="your-key",
endpoint="https://mcp.undisk.app", # default
max_retries=3, # default
timeout=60.0, # default
)
Methods
| Method | Description |
|---|---|
initialize() |
Initialize MCP session |
call_tool(name, args) |
Call any MCP tool by name |
read_file(path) |
Read a file |
write_file(path, content) |
Write a file |
create_file(path, content) |
Create a new file (fails if exists) |
list_files(path) |
List files |
delete_file(path) |
Delete a file |
move_file(from_path, to_path) |
Move or rename a file |
search_files(pattern) |
Search file contents |
list_versions(path) |
Get version history |
restore_version(path, version_id) |
Restore a version |
get_diff(path, from_version, to_version) |
Compare two versions |
append_log(path, content) |
Append to a log file |
close() |
Close the client |
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
undisk_mcp-0.53.2.tar.gz
(14.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file undisk_mcp-0.53.2.tar.gz.
File metadata
- Download URL: undisk_mcp-0.53.2.tar.gz
- Upload date:
- Size: 14.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6b87fae0bab90dc902249f7e4e5085d436c9da1353607d62d48b3212abfa79c8
|
|
| MD5 |
eadb39f33a360d564173f134bf0e68e4
|
|
| BLAKE2b-256 |
b90e2fdea72eefe0db77915a944c17047767d65d7752fcba0645773c95fc79b8
|
File details
Details for the file undisk_mcp-0.53.2-py3-none-any.whl.
File metadata
- Download URL: undisk_mcp-0.53.2-py3-none-any.whl
- Upload date:
- Size: 12.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8bed72ceb66f3d11903167ac3ca33456f77b0496f311abd57170a06c20e58b48
|
|
| MD5 |
c6400f7ada77aa7bbee81468c2c3ca66
|
|
| BLAKE2b-256 |
de86558c338b5d4fb09ad7bff6a8ec67c7c94875888cf12e88d244da69538ae5
|