[project]
name = "fastmcp-weather-server"
version = "0.1.0"
description = "A weather MCP server exposing a stdio, sse, StreamableHttp(state/stateless) transport"
readme = "README.md"
requires-python = ">=3.10"
authors = [
    { name = "Anthropic, PBC. & fastmcp & weedge", email = "weege007@gmail.com" },
]
keywords = ["mcp", "llm", "http", "streamable", "stdio", "sse", "weather"]
license = { text = "MIT" }
dependencies = [
    "anyio>=4.5",
    "click>=8.1.0",
    "httpx>=0.27",
    "fastmcp",
    "starlette",
    "uvicorn",
    "achatbot",
]

[project.scripts]
fastmcp-weather-stdio = "python -m mcp_server.cmd.weather.fastmcp --transport stdio"
fastmcp-weather-streamablehttp = "python -m mcp_server.cmd.weather.fastmcp --transport streamable-http"
fastmcp-weather-streamablehttp-stateless = "python -m mcp_server.cmd.weather.fastmcp --transport streamable-http --stateless-http"

[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[tool.hatch.build.targets.wheel]
packages = ["mcp_server.cmd.weather.fastmcp"]

[tool.pyright]
include = ["."]
venvPath = "."
venv = ".venv"

[tool.ruff.lint]
select = ["E", "F"]
ignore = ["F403"]

[tool.ruff]
line-length = 100
indent-width = 4
target-version = "py310"

[tool.uv]
dev-dependencies = ["pyright>=1.1.378", "pytest>=8.3.3", "ruff>=0.6.9"]
