[project] name = "zerto-rewind-mcp" version = "0.1.0" description = "PoC MCP: find Zerto protection, tagged checkpoints before guest mutations, FLR from that tag" readme = "README.md" requires-python = ">=3.12" dependencies = [ "httpx>=0.27", "mcp[cli]>=1.9,<2", "pydantic>=2.7", "pydantic-settings>=2.4", ] [project.optional-dependencies] dev = [ "pytest>=8.2", "pytest-asyncio>=0.23", "ruff>=0.6", ] [project.scripts] zerto-rewind-mcp = "zerto_rewind_mcp.server:main" [build-system] requires = ["setuptools>=69"] build-backend = "setuptools.build_meta" [tool.setuptools.packages.find] where = ["src"] [tool.ruff] line-length = 100 target-version = "py312" src = ["src", "tests"] [tool.ruff.lint] extend-select = ["E", "F", "I", "B", "UP", "ASYNC", "RUF"] ignore = ["ASYNC240"] [tool.pytest.ini_options] asyncio_mode = "auto" testpaths = ["tests"] pythonpath = ["src"] [tool.ruff.lint.per-file-ignores] # A PreToolUse hook runs inside the host's tool call. If it raises, it breaks # the call it was meant to protect, so it swallows everything and logs instead. "hooks/*.py" = ["BLE001", "S110"]