[build-system]
requires = ["setuptools>=61.0", "setuptools_scm>=8"]
build-backend = "setuptools.build_meta"

[project]
name = "xmind-mcp"
dynamic = ["version"]
description = "XMind MCP stdio tools: create/read/analyze/convert mind maps without a server"
readme = "README.md"
requires-python = ">=3.9"
license = {text = "MIT"}
authors = [{ name = "XMind MCP Project", email = "dev@example.com" }]
classifiers = [
  "License :: OSI Approved :: MIT License",
  "Programming Language :: Python :: 3",
  "Programming Language :: Python :: 3 :: Only",
  "Programming Language :: Python :: 3.9",
  "Programming Language :: Python :: 3.10",
  "Programming Language :: Python :: 3.11",
  "Topic :: Office/Business",
]
dependencies = [
  "beautifulsoup4>=4.12.0",
  "python-docx>=0.8.11",
  "openpyxl>=3.1.0",
  "xmind>=0.2.0",
  "lxml>=4.9.0",
]

[project.optional-dependencies]
server = [
  "fastapi>=0.104.0",
  "uvicorn[standard]>=0.24.0",
  "python-multipart>=0.0.6",
  "aiohttp>=3.8.0",
  "requests>=2.31.0",
]

[project.scripts]
xmind-mcp = "xmind_mcp_stdio:main"

[tool.setuptools]
py-modules = [
  "xmind_core_engine",
  "universal_xmind_converter",
  "validate_xmind_structure",
  "xmind_ai_extensions",
  "xmind_mcp_stdio",
]

[tool.setuptools_scm]
# 初次发布使用稳定兜底版本；后续通过 Git tag 自动管理版本
fallback_version = "1.0.1"
version_scheme = "post-release"
local_scheme = "no-local-version"