content: # Copyright Materialize, Inc. and contributors. All rights reserved.
  #
  # Licensed under the Apache License, Version 2.0 (the "License");
  # you may not use this file except in compliance with the License.
  # You may obtain a copy of the License in the LICENSE file at the
  # root of this repository, or online at
  #
  #     http://www.apache.org/licenses/LICENSE-2.0
  #
  # Unless required by applicable law or agreed to in writing, software
  # distributed under the License is distributed on an "AS IS" BASIS,
  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  # See the License for the specific language governing permissions and
  # limitations under the License.
  
  [project]
  name = "mcp-materialize"
  version = "0.3.1"
  description = "A server that exposes Materialize indexes as tools over the Model Context Protocol (MCP)"
  readme = "README.md"
  requires-python = ">=3.13"
  authors = [
      {name = "Materialize Inc", email = "support@materialize.com"}
  ]
  
  keywords = ["materialize", "mcp", "database", "api"]
  dependencies = [
      "aiohttp>=3.11.18",
      "aiorwlock>=1.5.0",
      "fastapi>=0.115.12",
      "mcp>=1.10.1",
      "psycopg-pool>=3.2.6",
      "psycopg[binary]>=3.2.6",
      "pytest>=8.4.1",
      "pytest-asyncio>=1.0.0",
      "pyyaml>=6.0.2",
      "requests>=2.32.3",
  ]
  
  [project.scripts]
  mcp-materialize = "mcp_materialize:main"
  
  [build-system]
  requires = ["hatchling"]
  build-backend = "hatchling.build"
  
  [tool.hatch.build.targets.wheel]
  packages = ["mcp_materialize"]
  
  [tool.hatch.build]
  
  [dependency-groups]
  dev = [
      "pytest-asyncio>=0.26.0",
      "pytest>=8.3.5",
      "hatch>=1.9.4"
  ]
  
  [tool.ruff]
  line-length = 88
  lint.select = ["I", "UP", "F", "E"]
  lint.extend-select = ["E501"]
  