Smart Terminal MCP Server

A PTY-based MCP server with strong Windows support, giving MCP-capable AI clients and their agents persistent, interactive shell access via pseudo-terminals (node-pty). Its README documents 17 tools, including terminal_start, terminal_exec, terminal_run. It runs locally over stdio via the published package.

People connecting this server to Claude, Cursor, VS Code, or another MCP client. The project is written in JavaScript.

VERIFIED ACTIVE

LAST COMMIT 2026-08-16 · ★ 12 · #195 OF 848 MAINTAINED OTHER · VERIFIED 2026-08-25

JavaScript servers · how we verify → /methodology

01 · Install Smart Terminal

before you install - you'll need

Set SMART_TERMINAL_DISABLED_TOOLS before connecting.

Claude Code

claude mcp add pungggi-smart-terminal-mcp -- npx -y smart-terminal-mcp

Claude Desktop / Cursor / VS Code - add to config

{
  "mcpServers": {
    "pungggi-smart-terminal-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "smart-terminal-mcp"
      ]
    }
  }
}

Same JSON for Cursor. For VS Code, rename the top-level key from `mcpServers` to `servers`.

Using another client? Same JSON, different key

Claude Desktop · mcpServers

Cursor · mcpServers

VS Code · servers

Windsurf · mcpServers

Zed · context_servers

Cline · mcpServers

Roo Code · mcpServers

Continue · mcpServers

LibreChat · mcpServers

Gemini CLI · mcpServers

Codex CLI · mcp_servers

Full setup guides: every client.

02 · Evidence

Security posture

What to check before giving this server access to your agent - from the registry, GitHub, and our own probes. We don't score safety; we show what's verifiable.

runs as local process (stdio) - runs on your machine with your user's permissions

license no standard license detected - usage rights unclear; check the repo before commercial use

npm package smart-terminal-mcp - unscoped; check the name against the project README before installing

registry namespace io.github.pungggi is GitHub-verified and matches the repo owner

03 · What Smart Terminal can do

Prose above is summarized from the project's README and registry record - no invented capabilities.

What you can build

With this server connected, an agent can start a new interactive terminal session, write raw data to a terminal (for interactive programs). Follow with terminal_read, list all active terminal sessions, and send a named special key.

The 17 tools it gives your agent

Extracted from the project's README - what smart-terminal lets an agent do.

terminal_start
- Start a new interactive terminal session.
terminal_exec
- Execute a command with deterministic completion detection. Large outputs are truncated to head + tail based on maxLines. If the MCP client sends a progressToken
terminal_run
- Run a one-shot non-interactive command using cmd + args with shell=false. Safer than terminal_exec for predictable automation. Output is capped by maxOutputByte
terminal_write
- Write raw data to a terminal (for interactive programs). Follow with terminal_read.
terminal_read
- Read buffered output with idle detection. Large outputs are truncated to head + tail based on maxLines. Pass since to read incrementally - returns only output e
terminal_wait
- Wait for a specific pattern in the output stream. By default, responses return only the last tailLines; use returnMode: "full" for the full matched output or "m
terminal_stop
- Stop and clean up a terminal session. Optionally capture a snapshot of recent output or write the full transcript to disk before stopping. On Unix, kills the en
terminal_list
- List all active terminal sessions.
terminal_extra
- Meta-tool for discovering and calling extra tools.
terminal_send_key
- Send a named special key.
terminal_run_paged
- Run a read-only one-shot command using cmd + args with shell=false and return a single page of stdout lines from the captured output. This pages the returned re
terminal_get_history
- Retrieve past terminal output without consuming it. Non-destructive - returns historical output from a rolling buffer (last ~10,000 lines). Useful for reviewing
show all 17 tools
terminal_retry
- Retry a command in the same terminal session until it succeeds or retries are exhausted.
terminal_diff
- Run two commands in the same terminal session and return a bounded unified diff of their outputs.
terminal_resize
- Resize terminal dimensions.
terminal_write_file
- Write content directly to a file on disk. Resolves paths relative to the session's CWD. Safer and more robust than piping content through echo - handles special
terminal_watch
- Wait for one or more trigger patterns in session output. Returns on first match, quiet detection, timeout, or process exit. Replaces manual poll loops - a singl

04 · Who maintains Smart Terminal

smart-terminal is maintained by pungggi. It's the only MCP server we track from this author; the repo dates to Feb 2026.

05 · Facts

category
other - ranked #195 of 848 actively-maintained other servers as of 2026-08-25.
registry
io.github.pungggi/smart-terminal (active, first published 2026-03-08 · 5 versions)
packages
npm:smart-terminal-mcp

06 · Smart Terminal FAQ

Is Smart Terminal still maintained?

Yes - as of 2026-08-25, its last commit was 2026-08-16. We re-verify nightly.

What can Smart Terminal do?

With this server connected, an agent can start a new interactive terminal session, write raw data to a terminal (for interactive programs). Follow with terminal_read, list all active terminal sessions, and send a named special key.

How do I install Smart Terminal?

Run `npx -y smart-terminal-mcp`. The README documents one environment variable (SMART_TERMINAL_DISABLED_TOOLS) to set first. Set SMART_TERMINAL_DISABLED_TOOLS before connecting. You can also paste the ready-made client config above.

Does Smart Terminal run locally?

Yes - it's a stdio server: it runs on your machine (via npx) with your user's permissions. Your data stays local unless the server itself calls external APIs.

07 · Alternatives to Smart Terminal