Terminal Command Runner MCP Server について
Terminal Command Runner MCP Serverは、AIアシスタント向けにターミナル操作とファイルシステム操作を提供し、プロセス管理にも対応します。コマンドのブラックリスト、テキスト編集、システム情報の取得、数式評価も行えます。
主な機能
- 01コマンド実行とバックグラウンドプロセス管理
- 02ファイルの読み書き
- 03ファイルの検索、移動、情報取得
- 04ブラックリストによるコマンド制限
- 05テキスト編集とシステム情報取得
- 06数式の評価
活用シーン
- 01コマンドを実行して長時間処理の出力を確認
- 02ファイルやディレクトリの管理
- 03指定したコマンドの実行防止
- 04システム情報の確認や数式の評価
MCP 対応
MCPを通じて、AIアシスタントにターミナル、ファイルシステム、テキスト編集、システムのツールを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ターミナルコマンド実行 MCP サーバー
RESTful API インターフェースを通じて、AI アシスタントにターミナルコマンドの実行機能とファイルシステム管理機能を提供する、強力な Model Control Protocol(MCP)サーバーです。
🌟 特長
ターミナル管理
- タイムアウトを設定してコマンドを実行
- 長時間実行されるプロセスをバックグラウンドで管理
- 実行中のコマンドセッションから出力を取得
- すべてのアクティブなセッションとシステムプロセスを一覧表示
- プロセスを終了または強制終了
- セキュリティのためにコマンドをブラックリストに登録
ファイルシステム操作
- ファイルの読み取りと書き込み
- ディレクトリの作成
- ディレクトリの内容を一覧表示
- ファイルの移動と名前変更
- glob パターンを使ったファイル検索
- ファイルの詳細情報を取得
高度な機能
- 検索と置換による正確なテキスト編集
- システム情報の取得
- 数式の評価
🚀 クイックスタート
前提条件
- Python 3.13+
- uv パッケージマネージャー(推奨)
インストール
- リポジトリをクローンします:
git clone https://github.com/neoforge-dev/neoforge-mcp-server.git
cd python-server-mcp
- 仮想環境を作成し、依存関係をインストールします:
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e .
- MCP サーバーを起動します:
python server.py
サーバーは http://0.0.0.0:8000 で起動します。
🧪 テスト
このプロジェクトには、機能を検証するための包括的なテストスイートが含まれています:
# Install test dependencies
uv pip install -r requirements.txt
# Run all tests
./run_tests.py
# Run tests with coverage report
./run_tests.py --coverage
# Run tests with verbose output
./run_tests.py --verbose
# Run specific test file
./run_tests.py --test tests/test_command_execution.py
テストスイートでは、次の項目をテストします:
- コマンドの実行とプロセス管理
- ファイルシステム操作
- システムユーティリティ
- セキュリティ機能
🔧 設定
~/.cursor/mcp.json ファイルにこの MCP サービスを追加して、Cursor が使用できるように設定します:
{
"mcpServers": {
"NeoMCP": {
"command": "/path/to/uv",
"args": [
"run",
"--with",
"mcp[cli]",
"mcp",
"run",
"/path/to/python-server-mcp/server.py"
]
}
}
}
📖 API リファレンス
ターミナルツール
execute_command:タイムアウトを設定してコマンドを実行read_output:実行中のプロセスから出力を取得force_terminate:実行中のコマンドを停止list_sessions:すべてのアクティブなコマンドセッションを表示list_processes:すべてのシステムプロセスを表示kill_process:PID を指定してプロセスを強制終了block_command:コマンドをブラックリストに追加unblock_command:コマンドをブラックリストから削除
ファイルシステムツール
read_file:ファイルの内容を読み取るwrite_file:ファイルにデータを書き込むcreate_directory:新しいディレクトリを作成list_directory:ディレクトリの内容を一覧表示move_file:ファイルやディレクトリを移動または名前変更search_files:パターンに一致するファイルを検索get_file_info:ファイルの詳細情報を取得
編集ツール
edit_block:diff に似た構文を使って、テキストを正確に置換
システムツール
system_info(リソース):システムの詳細情報を取得calculate:数式を評価
🔒 セキュリティに関する考慮事項
- 危険なコマンドを防ぐため、サーバーはコマンドのブラックリスト機能を実装しています
- 読み取り操作にはファイルサイズの上限があります
- 数式評価には安全対策が施されています
- デフォルトのコマンド安全性チェック
🤝 コントリビューション
コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。
📄 ライセンス
このプロジェクトは MIT ライセンスのもとでライセンスされています。詳細は LICENSE ファイルをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。