pyproject.toml•4 kB
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "mcp-prefect"
version = "0.2.3419"
description = "MCP Server for Prefect"
readme = "README.md"
requires-python = ">=3.12"
license = { text = "MIT" }
authors = [
{ name = "James Munsch", email = "james.a.munsch@gmail.com" },
]
dependencies = [
"aiosqlite>=0.21.0",
"alembic>=1.16.5",
"annotated-types>=0.7.0",
"anyio>=4.10.0",
"apprise>=1.9.4",
"asgi-lifespan>=2.1.0",
"asyncpg>=0.30.0",
"attrs>=25.3.0",
"authlib>=1.6.4",
"cachetools>=6.2.0",
"certifi>=2025.8.3",
"cffi>=2.0.0",
"charset-normalizer>=3.4.3",
"click>=8.3.0",
"cloudpickle>=3.1.1",
"colorama>=0.4.6",
"coolname>=2.2.0",
"cryptography>=46.0.1",
"dateparser>=1.2.2",
"deprecated>=1.2.18",
"docker>=7.1.0",
"exceptiongroup>=1.3.0",
"fastapi>=0.117.1",
"fastmcp>=2.12.3",
"fsspec>=2025.9.0",
"graphviz>=0.21",
"greenlet>=3.2.4",
"griffe>=1.14.0",
"h11>=0.16.0",
"h2>=4.3.0",
"hpack>=4.1.0",
"httpcore>=1.0.9",
"httpx>=0.28.1",
"httpx-sse>=0.4.1",
"humanize>=4.13.0",
"hyperframe>=6.1.0",
"idna>=3.10",
"importlib-metadata>=8.7.0",
"jinja2>=3.1.6",
"jinja2-humanize-extension>=0.4.0",
"jsonpatch>=1.33",
"jsonpointer>=3.0.0",
"jsonschema>=4.25.1",
"jsonschema-specifications>=2025.9.1",
"mako>=1.3.10",
"markdown>=3.9",
"markdown-it-py>=4.0.0",
"markupsafe>=3.0.2",
"mcp>=1.14.1",
"mdurl>=0.1.2",
"oauthlib>=3.3.1",
"openapi-pydantic>=0.5.1",
"opentelemetry-api>=1.37.0",
"orjson>=3.11.3",
"packaging>=25.0",
"pathspec>=0.12.1",
"pendulum>=3.1.0",
"pip>=24.2",
"prefect>=3.4.19",
"prometheus-client>=0.23.1",
"pycparser>=2.23",
"pydantic>=2.11.9",
"pydantic-core>=2.33.2",
"pydantic-extra-types>=2.10.5",
"pydantic-settings>=2.10.1",
"pygments>=2.19.2",
"pyproject-freeze>=0.1.1",
"python-dateutil>=2.9.0.post0",
"python-dotenv>=1.1.1",
"python-multipart>=0.0.20",
"python-slugify>=8.0.4",
"python-socks>=2.7.2",
"pytz>=2025.2",
"pyyaml>=6.0.2",
"readchar>=4.2.1",
"referencing>=0.36.2",
"regex>=2025.9.18",
"requests>=2.32.5",
"requests-oauthlib>=2.0.0",
"rfc3339-validator>=0.1.4",
"rich>=14.1.0",
"rpds-py>=0.27.1",
"ruamel-yaml>=0.18.15",
"ruamel-yaml-clib>=0.2.12",
"shellingham>=1.5.4",
"six>=1.17.0",
"sniffio>=1.3.1",
"sqlalchemy>=2.0.43",
"sse-starlette>=3.0.2",
"starlette>=0.48.0",
"text-unidecode>=1.3",
"time-machine>=2.19.0",
"toml>=0.10.2",
"tomlkit>=0.13.2",
"typer>=0.17.4",
"typing-extensions>=4.15.0",
"typing-inspection>=0.4.1",
"tzdata>=2025.2",
"tzlocal>=5.3.1",
"ujson>=5.11.0",
"urllib3>=2.5.0",
"uv>=0.8.19",
"uvicorn>=0.36.0",
"websockets>=15.0.1",
"wrapt>=1.17.3",
"zipp>=3.23.0",
]
[project.scripts]
mcp-prefect = "mcp_prefect.main:main"
[project.optional-dependencies]
dev = [
"pytest>=7.0.0",
"pytest-asyncio>=0.21.1",
"black>=23.0.0",
"isort>=5.0.0",
"mypy>=1.0.0",
]
[tool.hatch.build.targets.wheel]
packages = ["src/mcp_prefect"]
[tool.hatch.metadata]
allow-direct-references = true
[tool.hatch.envs.default]
dependencies = [
"pytest>=7.0.0",
"black>=23.0.0",
"isort>=5.0.0",
"mypy>=1.0.0",
]
[tool.hatch.envs.default.scripts]
test = "pytest {args:tests}"
lint = "black src tests && isort src tests"
typecheck = "mypy src"
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
python_files = "test_*.py"
python_classes = "Test*"
python_functions = "test_*"
log_cli = true
log_cli_level = "INFO"
[tool.black]
line-length = 100
[tool.isort]
profile = "black"
line_length = 100
[tool.mypy]
python_version = "3.9"
warn_return_any = true
warn_unused_configs = true
disallow_untyped_defs = true
disallow_incomplete_defs = true