Flutter + dart_mcp + AI Desktop App Demo について
Flutter + dart_mcp + AI デスクトップアプリデモは、Flutter アプリケーションに MCP クライアントを実装する方法を示します。MCP サーバー設定、API キー、カスタム環境変数の管理インターフェースを提供します。
主な機能
- 01API キー管理とローカルストレージ
- 02MCP サーバー設定の追加・編集・削除
- 03サーバー接続状態管理
- 04カスタム環境変数設定
- 05Stdio サーバー対応
- 06チャットのコードブロック表示切り替え
活用シーン
- 01デスクトップアプリで複数の MCP サーバーを管理
- 02MCP サーバー接続の設定とテスト
- 03Gemini モデルと統合した AI チャットアプリを構築
MCP 対応
Flutter クライアントが dart_mcp パッケージを使用して stdio サーバーと通信し、MCP サーバー接続と設定を管理します。
詳細
Flutter + dart_mcp + AI デスクトップアプリ デモ
このFlutterベースのプロジェクトは、MCP(Multi-Connection Protocol)サーバーを管理・設定するために設計されています。このアプリケーションは、APIキーの管理、サーバー設定の構成、カスタム環境変数の処理のためのユーザーフレンドリーなインターフェースを提供します。アプリケーションはmcp_dartパッケージを使用してMCP サーバーとの通信を実現しています。
スクリーンショット
機能
- APIキー管理:
SharedPreferencesを使用してAPIキーを安全に保存、クリア、管理します。 - MCP サーバー管理:
- MCP サーバー設定の追加、編集、削除。
- サーバー接続状態のトグル。
- サーバー接続を同期するための変更の適用。
- カスタム環境変数: 各サーバーのカスタム環境変数を定義・管理します。
- 表示設定: チャットメッセージ内のコードブロックの表示を切り替えます。
インストール
このプロジェクトを実行するには、マシンにFlutter SDKがインストールされていることを確認してください。ガイドラインに従ってください。
-
リポジトリをクローンします:
git clone [email protected]:leehack/flutter-mcp-ai-chat.git cd flutter-mcp-ai-chat -
依存関係をインストールします:
flutter pub get -
アプリケーションを実行します:
flutter run
使い方
APIキー管理
APIキーはGeminiモデルと通信するために必要です。設定画面でAPIキーを管理できます。キーはGoogle AI Studioから作成できます。
- 設定画面に移動します。
- 提供されたテキストフィールドにAPIキーを入力します。
- キーを保存をクリックしてキーをローカルに保存します。
- キーをクリアボタンを使用して保存されたキーを削除します。
MCP サーバー管理
MCP サーバー管理機能を使用すると、サーバー設定を追加、編集、削除できます。各サーバーの接続状態もトグルできます。現在のところ、このアプリケーションはstdioベースのサーバーのみをサポートしています。MCP サーバーの例はhttps://github.com/modelcontextprotocol/serversで見つけることができます。
- 新しいMCP サーバーを追加ボタンをクリックして新しいサーバーを追加します。
- 名前、コマンド、引数、カスタム環境変数を含むサーバーの詳細を入力します。
- サーバー設定を保存します。
- サーバーリストのスイッチを使用してサーバーの接続状態をトグルします。
- サーバー接続を同期するために変更を適用します。
カスタム環境変数
- サーバーを追加または編集する際に、カスタム環境変数セクションを使用してキーと値のペアを定義します。
- 変数を追加ボタンを使用して新しい変数を追加します。
- 各変数の横の削除アイコンを使用して変数を削除します。
貢献
貢献を歓迎します。以下の手順に従ってください:
- リポジトリをフォークします。
- 機能やバグ修正のための新しいブランチを作成します。
- 変更をコミットしてフォークにプッシュします。
- 変更の詳細な説明と共にプルリクエストを提出します。
ライセンス
このプロジェクトはMITライセンスの下でライセンスされています。詳細はLICENSEファイルを参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。