mcpField
M
Mcp Interactive

Mcp Interactive

ローカル
github.com/ivan-mezentsevAI・エージェント556 週間前に更新

Mcp Interactive について

Mcp Interactiveは、Electronインターフェースを備えたMCPサーバーです。タスク中にユーザーへの確認が必要な場面で、質問ダイアログを表示して返答を待ちます。

主な機能

  1. 01ポップアップでユーザーに質問
  2. 02対話形式の返答を待機
  3. 03返答待ちのタイムアウト設定
  4. 04複数のMCPクライアントに対応

活用シーン

  1. 01曖昧なタスク要件の確認
  2. 02コーディング中の判断の依頼
  3. 03完了前のユーザー確認

MCP 対応

`ask_user`ツールを公開し、Electronダイアログで質問を提示してユーザーの返答を返します。クライアント設定で待ち時間を指定できます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"interactive": {
"command": "npx",
"args": [
"-y",
"mcp-interactive"
]
}
}
}
起動コマンドnpx -y mcp-interactive

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

パッケージ
npmmcp-interactive

ツール

1

掲載時のツール一覧 · 3 週間前に更新

パラメーター型必須説明
projectNamestringはいリクエストを行うコンテキスト/プロジェクトを識別します
messagestringはいユーザーへの具体的な質問。Markdown形式に対応しています。
predefinedOptionsarrayいいえユーザーが選択する事前定義の選択肢です(任意)

詳細

MCP Interactive

npm version npm downloads License: MIT GitHub issues

ユーザーとの対話に対応する Electron インターフェースを備えた、インタラクティブな MCP(Model Context Protocol)サーバーです。

主な機能

この MCP サーバーは LLM の連携を強化し、より高い制御性と予測可能性を実現するとともに、1 つのタスク内でのユーザーとのやり取りを最小限に抑えることで、課金対象となるリクエストを大幅に削減します。

変更履歴の詳細については、変更履歴をご覧ください。

デモ

デモ

互換性

  • テスト済み・動作確認済み:
    • Trae IDE
    • Claude for Mac
    • augment code
    • Cursor IDE
    • VSCode with Copilot

利用可能なツール

ask_user - ポップアップのコマンドプロンプトを通じてユーザーに質問し、対話による回答を待ちます。

入力スキーマ:

{
  "type": "object",
  "properties": {
    "projectName": {
      "type": "string",
      "description": "Identifies the context/project making the request"
    },
    "message": {
      "type": "string",
      "description": "The specific question for the user. Supports Markdown formatting."
    },
    "predefinedOptions": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Predefined options for the user to choose from (optional)"
    }
  },
  "required": [
    "projectName",
    "message"
  ]
}

インストール

npx を使用する場合
{
  "mcpServers": {
    "interactive": {
      "command": "npx",
      "args": [
        "mcp-interactive",
        "-t",
        "300"
      ]
    }
  }
}
ローカルインストール

依存関係をインストールします:

npm install

MCP サーバーを設定します:

{
  "mcpServers": {
    "interactive": {
      "command": "node",
      "args": [
        "/path/to/project/mcp-interactive/index.js",
        "-t",
        "300"
      ]
    }
  }
}

Visual Studio Code、Cursor IDE 向けシステムプロンプトの推奨事項

## Decision Making
- **Ambiguous tasks**: ALWAYS clarify using `mcp_interactive_ask_user` tool
- **Requires decisions**: ALWAYS clarify using `mcp_interactive_ask_user` tool

## Code Development
- **Final confirmation**: MUST ask user if all requirements from specification are completed using `mcp_interactive_ask_user` tool with work report

## Final gate
- Before ANY final answer (after actions/edits/checks), it is **MANDATORY** to call `mcp_interactive_ask_user` with a report on the work done and the option ["Yes, everything is OK"].
- If the answer is not "Yes, everything is OK" — continue working until the comments are resolved and repeat every time `mcp_interactive_ask_user`.
- There are no exceptions (including minor edits).
Visual Studio Code のチャットでの「Human In The Loop」モードの例
Can you check the docs and explain how the project works? #interactive

Trae IDE 向けシステムプロンプトの推奨事項

このセクションでは、最適な対話とタスク実行を実現するために、LLM 向けのシステムプロンプトやルールとして推奨されるガイドラインを説明します。

## Decision Making
- **Ambiguous tasks**: ALWAYS clarify using `ask_user` tool via MCP
- **Requires decisions**: ALWAYS clarify using `ask_user` tool via MCP

## Code Development
- **Final confirmation**: MUST ask user if all requirements from specification are completed using `ask_user` tool via MCP with work report

## Final gate
- Before ANY final answer (after actions/edits/checks), it is **MANDATORY** to call `ask_user` with a report on the work done and the option ["Yes, everything is OK"].
- If the answer is not "Yes, everything is OK" — continue working until the comments are resolved and repeat every time `ask_user`.
- There are no exceptions (including minor edits).

コマンドラインオプション

  • --timeout または -t(秒):ユーザーの応答ダイアログを待つ時間を指定します。この時間内に応答がない場合、「User did not reply: Timeout occurred.」という返信が送信されます。

トラブルシューティング

よくある問題

Electron が起動しない:

  • 最新の Node.js がインストールされていることを確認してください
  • npm install を実行して依存関係を再インストールしてみてください

回答のタイムアウトに関する問題(プログレスバー):

  • -t パラメーターを使用してタイムアウト値を増やしてください
  • デフォルトのタイムアウトは 60 秒です。必要に応じて調整してください

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。大きな変更を加える場合は、まずイシューを作成して、変更したい内容についてご相談ください。

必要に応じてテストを更新し、既存のコードスタイルに従ってください。

サポート

問題が発生した場合やご質問がある場合は、GitHub でイシューを作成してください。

依存関係

このプロジェクトには、Markdown の解析機能のために marked.js(marked.min.js)のローカルコピーが含まれています。Marked は MIT ライセンスで提供され、Marked.js チームおよびコントリビューターによって保守されています。

ライセンス

MIT

サードパーティライセンス
  • marked.js:MIT License - Copyright (c) 2018+, MarkedJS contributors

コメント

MCP は初めてですか?

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

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