mcpField
T
Terminal MCP Server

Terminal MCP Server

ローカル
github.com開発ツール2143 週間前に更新

Terminal MCP Server について

Terminal MCP Server は、AI エージェントが構造化されたターミナル状態ツリーを通じてターミナルアプリケーションを操作できる MCP サーバーです。ターミナル版の Playwright と説明されています。TUI やコマンドラインプログラムの自動化・テストを対象とし、Claude、Codex、Cursor など MCP 対応のクライアントで利用できます。

主な機能

  1. 01ターミナルセッションの作成、一覧表示、リサイズ、終了
  2. 02検出された UI 要素を含むスナップショット
  3. 03テキスト入力とキー操作
  4. 04テキストや要素、アイドル状態の待機
  5. 05ヘッドレスモードと可視ウィンドウモード

活用シーン

  1. 01htop などの対話型プログラムをエージェントに操作させる
  2. 02TUI アプリケーションの画面状態の自動テスト
  3. 03WSL を使った Windows での全機能の利用

MCP 対応

本プロジェクトは MCP サーバーとして動作し、セッション管理、スナップショット、入力、出力読み取りのための terminal_ で始まるツールを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"aybelatchane-mcp-server-terminal": {
"command": "npx",
"args": [
"-y",
"mcp-server-terminal"
],
"env": {
"DISPLAY": "<DISPLAY>",
"RUST_LOG": "<RUST_LOG>"
}
}
}
}
起動コマンドnpx -y mcp-server-terminal
設定が必要な環境変数
DISPLAYX11 display for visual mode (Linux/WSL). Example: :0
RUST_LOGLogging level: error, warn, info, debug, trace

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmmcp-server-terminal1.0.3

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Terminal MCP サーバー

npm version npm downloads License: MIT

構造化されたターミナル状態ツリー表現を通じて、AI エージェントがターミナルアプリケーションを操作できるようにする MCP サーバーです。Model Context Protocolをサポートするあらゆる AI アシスタントで利用できます。

インストール

npm 経由(推奨)
npx mcp-server-terminal
GitHub Releases 経由

Releasesからビルド済みバイナリをダウンロードします。

ソースからビルド
git clone https://github.com/aybelatchane/mcp-server-terminal.git
cd mcp-server-terminal
cargo build --release
# Binary: ./target/release/terminal-mcp

設定

Claude
Claude Code(CLI)
claude mcp add terminal -- npx mcp-server-terminal
Claude Desktop

~/.claude.json(macOS/Linux)または %APPDATA%\Claude\claude_desktop_config.json(Windows)に追加します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"]
    }
  }
}

OpenAI Codex
Codex CLI
codex mcp add terminal -- npx mcp-server-terminal
Codex 設定ファイル

~/.codex/config.tomlに追加します。

[mcp_servers.terminal]
command = "npx"
args = ["mcp-server-terminal"]

Google Gemini
Gemini CLI
gemini mcp add terminal npx mcp-server-terminal

VS Code / GitHub Copilot

VS Code 1.101+はMCPをサポートしています。VS Codeの設定(settings.json)に追加します。

{
  "mcp.servers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"]
    }
  }
}

Cursor

~/.cursor/mcp.jsonまたはプロジェクト内の.cursor/mcp.jsonに追加します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"]
    }
  }
}

Windsurf

~/.codeium/windsurf/mcp_config.jsonに追加します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"]
    }
  }
}

Zed

Zedの設定(Preferences → Settings)に追加します。

{
  "context_servers": {
    "terminal": {
      "command": {
        "path": "npx",
        "args": ["mcp-server-terminal"]
      }
    }
  }
}

Cline(VS Code拡張機能)

MCP Serversアイコンをクリックし、Configure → Advanced MCP Settingsを選択して、次を追加します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"]
    }
  }
}

AWS Bedrock

BedrockエージェントのMCP設定に追加します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"]
    }
  }
}

その他のMCPクライアント

MCP互換クライアントでは、次のようにサーバーを設定します。

  • コマンド:npx
  • 引数:["mcp-server-terminal"]

バイナリを直接使用する場合:

  • コマンド:terminal-mcp

使用方法

AIエージェントに次のように依頼します。

  • 「htopを実行するターミナルセッションを作成して」
  • 「ターミナルのスナップショットを撮って」
  • 「下矢印キーを押して」
  • 「'ls -la'と入力してEnterを押して」

MCPツール

ツール説明
terminal_session_createターミナルセッションを開始
terminal_session_listアクティブなセッションを一覧表示
terminal_session_closeセッションを終了
terminal_session_resizeターミナルのサイズを変更
terminal_snapshotUI要素を含むターミナル状態をキャプチャ
terminal_typeターミナルにテキストを入力
terminal_press_keyキーを押す(矢印、Fキー、Ctrl+X)
terminal_click検出されたUI要素をクリック
terminal_wait_forテキスト、要素、またはアイドル状態を待機
terminal_read_outputターミナルの生出力を読み取る

ビジュアルモード

デフォルトでは、セッションを起動すると可視のターミナルウィンドウ(xterm)が開きます。ヘッドレスで動作させるには:

npx mcp-server-terminal --headless

または、MCP設定で次のように指定します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal", "--headless"]
    }
  }
}
X11の設定(Linux/WSL)

ビジュアルモードにはX11が必要です。MCP設定にDISPLAY環境変数を追加します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"],
      "env": {
        "DISPLAY": ":0"
      }
    }
  }
}

ログ

RUST_LOG環境変数を設定します。

{
  "mcpServers": {
    "terminal": {
      "command": "npx",
      "args": ["mcp-server-terminal"],
      "env": {
        "RUST_LOG": "info"
      }
    }
  }
}

ログレベル:error、warn、info、debug、trace

ログはstderrに出力されます(stdoutはMCPプロトコル用に予約されています)。

プラットフォームのサポート

プラットフォームアーキテクチャ状態ビジュアルモード
Linuxx64, arm64✅ 完全サポートxterm + tmux
macOSx64, arm64✅ 完全サポートTerminal.app / iTerm2
Windows(WSL)x64, arm64✅ 完全サポートxterm + tmux(X11経由)
Windows(ネイティブ)x64⚠️ ヘッドレスのみ非サポート

Windowsユーザーへ: ビジュアルモードを含むすべての機能を利用するには、WSLを使用してください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。