pyproject.toml•1.35 kB
[project]
name = "usolver_mcp"
version = "0.1.0"
description = "A best effort universal solver interface for MCP"
author="Stephen Diehl"
readme = "README.md"
requires-python = ">=3.12"
license = {text = "Apache-2.0"}
dependencies = [
"z3-solver>=4.14.1.0",
"pydantic>=2.0.0",
"returns>=0.20.0",
"fastmcp>=0.1.0",
"cvxpy",
"ortools<9.15.0",
"highspy>=1.11.0",
]
[dependency-groups]
dev = [
"black>=25.1.0",
"pytest>=8.4.0",
"ruff>=0.11.2",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.ruff]
line-length = 120
indent-width = 4
target-version = "py312"
[tool.ruff.lint]
select = ["E", "F", "B", "I", "N", "UP", "ANN", "RUF"]
[tool.ruff.lint.per-file-ignores]
"examples/*.py" = ["ANN201", "ANN001"]
[tool.pytest.ini_options]
testpaths = ["tests", "examples"]
python_files = ["test_*.py", "*_test.py", "*.py"]
python_functions = ["test_*"]
filterwarnings = [
"ignore::DeprecationWarning",
"ignore::PendingDeprecationWarning",
"ignore::UserWarning:cvxpy.*",
"ignore:Type google._upb._message.*:DeprecationWarning",
]
norecursedirs = ["examples/full"]
[tool.hatch.build.targets.wheel]
packages = ["usolver_mcp"]
[tool.hatch.build.targets.wheel.scripts]
usolver = "usolver_mcp.server.main:main"
[project.scripts]
usolver = "usolver_mcp.server.main:main"