pyproject.tomlā¢2.9 kB
[build-system]
requires = ["setuptools>=75.8.0"]
build-backend = "setuptools.build_meta"
[project]
name = "mcp-toolz"
version = "0.3.7"
description = "Save contexts and todos across Claude Code sessions, get feedback from ChatGPT, Claude, Gemini, and DeepSeek"
readme = "README.md"
requires-python = ">=3.13"
license = "MIT"
authors = [
{name = "Taylor Leese", email = "tleese22@gmail.com"}
]
keywords = [
"mcp",
"model-context-protocol",
"claude-code",
"context-management",
"todo-persistence",
"ai-assistant",
"chatgpt",
"anthropic",
"gemini",
"deepseek"
]
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.13",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: Scientific/Engineering :: Artificial Intelligence",
]
dependencies = [
"mcp==1.20.0",
"pydantic==2.12.3",
"openai==2.6.1",
"anthropic==0.72.0",
"google-generativeai==0.8.5",
"click==8.3.0",
"python-dotenv==1.2.1",
"aiosqlite==0.21.0",
]
[project.urls]
Homepage = "https://github.com/taylorleese/mcp-toolz"
Repository = "https://github.com/taylorleese/mcp-toolz"
Issues = "https://github.com/taylorleese/mcp-toolz/issues"
Documentation = "https://github.com/taylorleese/mcp-toolz#readme"
[project.scripts]
mcp-toolz = "context_manager.cli:main"
[tool.black]
line-length = 140
target-version = ['py313']
[tool.isort]
profile = "black"
line_length = 140
[tool.ruff]
line-length = 140
target-version = "py313"
[tool.ruff.lint]
select = ["E", "F", "I", "N", "W", "UP", "B", "A", "C4", "DTZ", "T10", "EM", "ISC", "ICN", "PIE", "PT", "Q", "RSE", "RET", "SIM", "TID", "ARG", "PLE", "PLW", "RUF"]
ignore = []
[tool.ruff.lint.per-file-ignores]
"tests/*" = ["ARG002"] # Allow unused arguments in tests (common with mock fixtures)
[tool.mypy]
python_version = "3.13"
strict = true
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
mypy_path = "src"
explicit_package_bases = true
[[tool.mypy.overrides]]
module = "src.context_manager.cli"
disallow_untyped_decorators = false
[[tool.mypy.overrides]]
module = "tests.*"
disallow_untyped_decorators = false
[[tool.mypy.overrides]]
module = "google.*"
ignore_missing_imports = true
[tool.bandit]
exclude_dirs = ["tests", "venv"]
skips = ["B101"]
[tool.pydocstyle]
convention = "google"
add_ignore = ["D100", "D104"] # Ignore missing docstrings in modules and packages
[tool.vulture]
exclude = ["venv/", "build/"]
min_confidence = 80
[tool.coverage.run]
omit = [
"*/context_manager/__main__.py",
"*/mcp_server/__main__.py",
]
[tool.coverage.report]
exclude_lines = [
"pragma: no cover",
"def __repr__",
"raise AssertionError",
"raise NotImplementedError",
"if __name__ == .__main__.:",
]