Skip to main content
Glama

Interactive Automation MCP Server

pyproject.toml3.99 kB
[build-system] requires = ["setuptools>=61.0", "wheel"] build-backend = "setuptools.build_meta" [project] name = "terminal-control-mcp" version = "1.0.3" description = "Terminal Control MCP Server" readme = "README.md" requires-python = ">=3.9" license = {text = "MIT"} authors = [ {name = "Mark Wernsdorfer", email = "wernsdorfer@gmail.com"}, ] keywords = ["mcp", "terminal", "control", "debugging", "ssh", "database"] classifiers = [ "Development Status :: 4 - Beta", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "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", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Systems Administration", "Topic :: Software Development :: Debuggers", ] dependencies = [ "mcp>=1.12.2", "typing-extensions>=4.0.0", "pydantic>=2.11.7", "pydantic-settings>=2.10.1", "fastapi>=0.104.0", "uvicorn>=0.24.0", "websockets>=12.0", "jinja2>=3.1.0", "rich>=13.0.0", "libtmux>=0.15.0", ] # System Dependencies (must be installed separately): # - tmux: Terminal multiplexer for session management [project.optional-dependencies] dev = [ "mcp[cli]>=1.0.0", "black>=22.0.0", "isort>=5.10.0", "mypy>=1.17", "ruff>=0.12.5", "pytest>=7.0.0", "pytest-asyncio>=0.21.0", "vulture>=2.3", "twine>=6.1.0", "build>=1.3.0", ] [project.urls] Homepage = "https://github.com/wehnsdaefflae/terminal-control-mcp" Documentation = "https://github.com/wehnsdaefflae/terminal-control-mcp/blob/main/README.md" Repository = "https://github.com/wehnsdaefflae/terminal-control-mcp" Issues = "https://github.com/wehnsdaefflae/terminal-control-mcp/issues" [project.scripts] terminal-control-mcp = "terminal_control_mcp.main:main_sync" [tool.setuptools.packages.find] where = ["src"] [tool.setuptools.package-dir] "" = "src" [tool.setuptools.package-data] terminal_control_mcp = [ "templates/*.html", "static/css/*.css", "static/js/*.js", ] [tool.black] line-length = 88 target-version = ['py311'] include = '\.pyi?$' extend-exclude = ''' /( # directories \.eggs | \.git | \.hg | \.mypy_cache | \.tox | \.venv | build | dist )/ ''' [tool.isort] profile = "black" multi_line_output = 3 line_length = 88 known_first_party = ["terminal_control_mcp"] [tool.mypy] python_version = "3.11" warn_return_any = true warn_unused_configs = true disallow_untyped_defs = true disallow_incomplete_defs = true check_untyped_defs = true disallow_untyped_decorators = true no_implicit_optional = true warn_redundant_casts = true warn_unused_ignores = true warn_no_return = true warn_unreachable = true strict_equality = true [tool.ruff] target-version = "py311" line-length = 88 [tool.ruff.lint] select = [ "E", # pycodestyle errors "W", # pycodestyle warnings "F", # pyflakes "I", # isort "B", # flake8-bugbear "C4", # flake8-comprehensions "UP", # pyupgrade "C90", # flake8-mccabe (complexity checks) "PLR", # pylint refactor rules (includes line count limits) ] ignore = [ "E501", # line too long, handled by black ] [tool.ruff.lint.per-file-ignores] "__init__.py" = ["F401"] "tests/*.py" = ["PLR0915"] # Allow longer test functions [tool.ruff.lint.mccabe] # Set the maximum allowed complexity. Functions exceeding this will be flagged. max-complexity = 10 [tool.ruff.lint.pylint] # Set maximum number of statements in a function max-statements = 20 [tool.vulture] # Scan your source code directory paths = ["src"] # Minimum confidence level to report (0-100). 80 is a good starting point. min_confidence = 80 # Ignore names that Vulture may falsely flag (like script entry points) ignore_names = ["main_sync"]

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/wehnsdaefflae/MCPAutomationServer'

If you have feedback or need assistance with the MCP directory API, please join our Discord server