[project]
name = "mcp-server-outlook-email"
version = "0.2.0"
description = "Email Processing MCP Server with MongoDB integration - Cross-platform support"
readme = "README.md"
requires-python = ">=3.10"
# Core dependencies (all platforms)
dependencies = [
"python-dotenv",
"langchain",
"langchain_core",
"langchain-community",
"langchain-ollama",
"langchain-mongodb",
"pymongo",
"mcp[cli]",
"pydantic",
"pytz",
]
[project.optional-dependencies]
# Windows-specific dependencies
windows = [
"pywin32",
]
# Graph API dependencies (cross-platform cloud access)
graph = [
"msal",
"requests",
]
# All dependencies (useful for development)
all = [
"pywin32; sys_platform == 'win32'",
"msal",
"requests",
]
# Development dependencies
dev = [
"pytest",
"pytest-asyncio",
"ruff",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src"]
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.ruff.lint]
select = ["E", "F", "W", "I"]
ignore = ["E501"] # Line too long - handled by formatter
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]