A standalone Model Context Protocol (MCP) server that provides terminal execution, binary detection, and shell detection capabilities.
A standalone Model Context Protocol (MCP) server that provides terminal execution, binary detection, and shell detection capabilities. Exposed over MCP by the enhanced terminal mcp mcp server, that capability becomes something an assistant can invoke while it works, not something you go and do afterwards.
Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client.
Everything the assistant can do here goes through one of these:
Tools — 1. enhanced_terminal - Execute shell commands with smart async switching - Streaming Output: Real-time output notifications in sync mode -Prerequisites — The Prerequisites tool exposed by this serverDebugging — Enable detailed logging to see sudo priming/wrapping behavior:Configuration — The Configuration tool exposed by this serverenhanced_terminal — Basic synchronous execution (completes quickly). cwd is optional; omitting it uses the MCP server process working directory supplied by theenhanced_terminal_job_status — Get full output. job_status returns the command summary by default; pass full_command: true only when you need the full command text: json {enhanced_terminal_job_list — Filter by working directory: json { "max_jobs": 50, "cwd_filter": "/home/user/project" }enhanced_terminal_job_cancel — The enhanced_terminal_job_cancel tool exposed by this serverenhanced_terminal_job_stdin — Write input to a running async job. Newlines are not appended automatically, so include \n when you want to submit a line:detect_binaries — The detect_binaries tool exposed by this serverBuilding — The Building tool exposed by this serverTesting — The Testing tool exposed by this serverYou will need 2 environment variables: API_KEY, ENHANCED_TERMINAL_CALL_LOG_PATH. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
Plenty of file and storage access servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Enhanced Terminal MCP's toolset — Tools, Prerequisites, Debugging and 11 more — is a fair guide to whether it matches your workflow. It is maintained by tsoernes; worth a glance at recent repository activity before you build anything load-bearing on it.
SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.
| Tool | What it does |
|---|---|
| Tools | 1. **enhanced_terminal** - Execute shell commands with smart async switching - **Streaming Output**: Real-time output notifications in sync mode - Automatically switches to background after 50 seconds (configurable) - PT |
| Prerequisites | The Prerequisites tool exposed by this server. |
| Debugging | Enable detailed logging to see sudo priming/wrapping behavior: |
| Configuration | The Configuration tool exposed by this server. |
| enhanced_terminal | Basic synchronous execution (completes quickly). cwd is optional; omitting it uses the MCP server process working directory supplied by the caller/client: json { "command": "ls -la", "cwd": ".", "shell": "bash" } |
| enhanced_terminal_job_status | Get full output. job_status returns the command summary by default; pass full_command: true only when you need the full command text: json { "job_id": "brave-river-1", "incremental": false, "full_command": true } |
| enhanced_terminal_job_list | Filter by working directory: json { "max_jobs": 50, "cwd_filter": "/home/user/project" } |
| enhanced_terminal_job_cancel | The enhanced_terminal_job_cancel tool exposed by this server. |
| enhanced_terminal_job_stdin | Write input to a running async job. Newlines are not appended automatically, so include \n when you want to submit a line: |
| detect_binaries | The detect_binaries tool exposed by this server. |
| Building | The Building tool exposed by this server. |
| Testing | The Testing tool exposed by this server. |
| Dependencies | The Dependencies tool exposed by this server. |
| Performance | The Performance tool exposed by this server. |
| Variable | Description | Required |
|---|---|---|
| API_KEY | Credential the server authenticates with. | Yes |
| ENHANCED_TERMINAL_CALL_LOG_PATH | Filesystem location the server is allowed to use. | Optional |
Scoped local file access — read, write, search and reorganise files in directories you explicitly allow.
Search and read your Drive — Docs, Sheets and files become context your assistant can actually use.
Query, modify and analyse local SQLite databases in conversation — the fastest way to chat with a data file.
Build a programmable telecommunications stack for connecting telephony services with the Internet via a cloud-based utility.
Chat with your second brain — search, read and write vault notes through the Local REST API.
Connects AI models to an Obsidian knowledge base for direct access and manipulation of notes and folders.