[project] name = "sharepoint-mcp" dynamic = ["version"] description = "Production-grade MCP Server for Microsoft SharePoint — manage folders, documents, and metadata with any MCP-compatible AI agent." readme = "README.md" license = { text = "MIT" } requires-python = ">=3.10" keywords = ["mcp", "sharepoint", "microsoft365", "llm", "ai-agent", "model-context-protocol"] classifiers = [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Internet", ] dependencies = [ "mcp>=1.2.1", "office365-rest-python-client>=2.6.1", "msal>=1.30.0", "requests>=2.31.0", "requests-toolbelt>=1.0.0", "gql>=3.5.0", "aiohttp>=3.9.0", "python-dotenv>=1.0.0", "pymupdf>=1.23.0", "pandas>=2.0.0", "openpyxl>=3.1.0", "python-docx>=1.1.0", "structlog>=24.0.0", "tenacity>=8.2.0", "pydantic>=2.0.0", ] [[project.authors]] name = "Ravi Kant" email = "developerrk1918@gmail.com" [project.urls] Homepage = "https://github.com/ravikant1918/sharepoint-mcp" Documentation = "https://github.com/ravikant1918/sharepoint-mcp/tree/main/docs" Repository = "https://github.com/ravikant1918/sharepoint-mcp" "Bug Tracker" = "https://github.com/ravikant1918/sharepoint-mcp/issues" Changelog = "https://github.com/ravikant1918/sharepoint-mcp/blob/main/docs/changelog.md" [project.optional-dependencies] dev = [ "pytest>=8.0", "pytest-asyncio>=0.23", "pytest-mock>=3.12", "ruff>=0.3.0", ] [project.scripts] sharepoint-mcp = "mcp_sharepoint:run" [build-system] requires = ["setuptools>=61.0", "setuptools_scm[toml]>=8.0"] build-backend = "setuptools.build_meta" [tool.setuptools.packages.find] where = ["src"] [tool.pytest.ini_options] asyncio_mode = "auto" testpaths = ["tests"] pythonpath = ["src"] [tool.ruff] line-length = 100 target-version = "py310" [tool.ruff.lint] select = ["E", "F", "I", "UP"] [tool.setuptools_scm] write_to = "src/mcp_sharepoint/_version.py"