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.51.1.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.51.1.tar.gz.
File metadata
- Download URL: undisk_mcp-0.51.1.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 |
ddb3eadb4e454edbea5a47d40c6d3e680a83590d68590d8288561d2ae98fc903
|
|
| MD5 |
2f05b2bc1e7d1a4dc53c599d84923060
|
|
| BLAKE2b-256 |
65c783ecddc06899d596528888abd5eaa71822b50c37d16772958cf8d04410ad
|
File details
Details for the file undisk_mcp-0.51.1-py3-none-any.whl.
File metadata
- Download URL: undisk_mcp-0.51.1-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 |
b5c78d5fe950c2486cd5996c8679cbcc520bd7cc869836ba6c6158b48e983418
|
|
| MD5 |
7ee9bbd3fb8992178a65f7b8670437a2
|
|
| BLAKE2b-256 |
459248626b04e3aeb71ac27a9f786cf95c437f14b2d61d9437b764a7e47fc13f
|