- Run ruff format across entire codebase - Fix 159 automatic code quality issues - Improve code consistency and readability - Maintain compatibility with Python 3.8+ Changes include: - Whitespace and blank line cleanup - Import organization and optimization - Code style standardization - Removed unused imports and variables - Enhanced readability throughout Remaining linting issues are intentional (fallback lambdas, compatibility code) or require manual review.
100 lines
2.7 KiB
TOML
100 lines
2.7 KiB
TOML
[build-system]
|
|
requires = ["setuptools>=45", "wheel"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "enhanced-mcp-tools"
|
|
version = "1.0.0"
|
|
description = "Enhanced MCP tools server with comprehensive development utilities"
|
|
readme = "README.md"
|
|
requires-python = ">=3.10"
|
|
license = "MIT"
|
|
authors = [
|
|
{name = "Ryan Malloy", email = "ryan@supported.systems"},
|
|
]
|
|
classifiers = [
|
|
"Development Status :: 3 - Alpha",
|
|
"Intended Audience :: Developers",
|
|
"Topic :: Software Development :: Tools",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3.13",
|
|
]
|
|
dependencies = [
|
|
"fastmcp>=2.8.1",
|
|
]
|
|
|
|
[tool.setuptools.packages.find]
|
|
where = ["src"]
|
|
include = ["enhanced_mcp*"]
|
|
exclude = ["tests*", "docs*", "examples*", "scripts*", "config*"]
|
|
|
|
[project.optional-dependencies]
|
|
# Core enhanced functionality (recommended)
|
|
enhanced = [
|
|
"aiofiles>=23.0.0", # Async file operations
|
|
"watchdog>=3.0.0", # File system monitoring
|
|
"psutil>=5.9.0", # Process and system monitoring
|
|
"requests>=2.28.0", # HTTP requests for Sneller and APIs
|
|
]
|
|
|
|
# All optional features
|
|
full = [
|
|
"enhanced-mcp-tools[enhanced]",
|
|
"rich>=13.0.0", # Enhanced terminal output
|
|
"pydantic>=2.0.0", # Data validation
|
|
]
|
|
|
|
dev = [
|
|
"enhanced-mcp-tools[full]",
|
|
"pytest>=7.0.0",
|
|
"pytest-asyncio>=0.21.0",
|
|
"pytest-cov>=4.0.0",
|
|
"black>=22.0.0",
|
|
"ruff>=0.1.0"
|
|
]
|
|
|
|
[project.scripts]
|
|
enhanced-mcp = "enhanced_mcp.mcp_server:run_server"
|
|
|
|
[tool.black]
|
|
line-length = 100
|
|
target-version = ['py38']
|
|
|
|
[tool.ruff]
|
|
line-length = 100
|
|
target-version = "py38"
|
|
|
|
[tool.ruff.lint]
|
|
select = [
|
|
"E", # pycodestyle errors
|
|
"W", # pycodestyle warnings
|
|
"F", # pyflakes
|
|
"I", # isort
|
|
"B", # flake8-bugbear
|
|
"C4", # flake8-comprehensions
|
|
"UP", # pyupgrade
|
|
]
|
|
ignore = [
|
|
"E501", # Line too long (handled by black)
|
|
"B008", # Do not perform function calls in argument defaults
|
|
"C901", # Too complex
|
|
"F403", # 'from .base import *' used; unable to detect undefined names
|
|
"F405", # May be undefined, or defined from star imports
|
|
]
|
|
|
|
# Additional ignore patterns for star imports in specific files
|
|
[tool.ruff.lint.per-file-ignores]
|
|
"src/enhanced_mcp/*/base.py" = ["F403", "F405"]
|
|
"src/enhanced_mcp/*" = ["F403", "F405"] # Allow star imports throughout the enhanced_mcp package
|
|
"tests/*" = ["E501", "F401", "F811", "F403", "F405"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
python_files = ["test_*.py", "*_test.py"]
|
|
asyncio_mode = "auto"
|