Flutter_mcp について
Clean Architecture に従う Flutter ベースの Claude AI デスクトップアプリで、Melos で管理されたモジュール型モノレポを使用し、MCP プロトコルを実装して AI 対話とツール呼び出しに対応します。
主な機能
- 01Windows、macOS、Linux 向けクロスプラットフォームアプリ
- 02MCP クライアント・サーバー実装
- 03ストリーミング更新対応のチャットインターフェース
- 04MCP サーバーの管理と設定
- 05組み込み AI と関数呼び出しサポート
活用シーン
- 01Gemini との対話用ローカル AI デスクトップアプリ
- 02複数 MCP サーバーの接続・管理で機能拡張
- 03Flutter での Clean Architecture 実装リファレンス
MCP 対応
このアプリは MCP クライアントを実装し、構造化メッセージ、ツール登録と呼び出し、コンテンツ埋め込み、および接続ライフサイクル管理を通じてバックエンド MCP サーバーと対話します。
詳細
Flutter MCP クライアント — Flutter で構築された Claude AI デスクトップインターフェースです。クリーンアーキテクチャの原則に従い、Melos を使用したモジュール型モノレポで実装されています。このアプリケーションは、Model Context Protocol (MCP) の実装を示し、AI ドリブンのリッチなインタラクションを可能にします。
🧰 機能
- 🖥️ デスクトップファーストの Flutter アプリ
- 🧼 モジュール型モノレポを使用したクリーンアーキテクチャ
- 📦 Flutter Bloc を使用した状態管理
- 🔌 Gemini と連携するための MCP クライアント/サーバー実装
- 💬 リアルタイムストリーム更新対応のチャットインターフェース
- ⚙️ MCP サーバーの追加、編集、管理
- 🧠 組み込みの AI とファンクションコーリング対応
- 🎨 カスタムウィジェットとクリーンな UI
📁 プロジェクト構造
このリポジトリは Melos を使用したモノレポアプローチで編成されています:
apps/ # Main Flutter applications
external/ # External SDKs or libraries (e.g., LLM Kit)
packages/ # Feature-specific packages (Clean Architecture layers)
主要レイヤー
flutter_mcp_entities: AI、チャット、MCP のデータモデルflutter_mcp_datasources: ローカルおよびリモートデータ処理flutter_mcp_repositories: 依存性注入用リポジトリflutter_mcp_usecases: コアロジックを実装するユースケースflutter_mcp_state: BLoC/Cubit 状態管理flutter_mcp_widgets: カスタム再利用可能 UI コンポーネント
🚀 はじめに
前提条件
次のツールがインストールされていることを確認してください:
-
Flutter SDK
-
Dart SDK
-
Melos (モノレポマネージャー):
dart pub global activate melos
インストール
# Clone the repository
git clone https://github.com/your-org/flutter_mcp.git
cd flutter_mcp
# Bootstrap all packages
melos bootstrap
アプリの実行
# Navigate to app directory
cd apps/flutter_mcp
# Launch for your platform
flutter run -d windows
flutter run -d macos
flutter run -d linux
🧪 テストの実行
melos run test
🔍 パッケージ概要
packages/ 内の各パッケージは、特定のレイヤーまたは機能をカプセル化しています:
| パッケージ | 説明 |
|---|---|
flutter_mcp_entities | ドメインモデルとエンティティ |
flutter_mcp_datasources | ローカル永続化およびデータソース |
flutter_mcp_repositories | ドメインリポジトリの抽象化レイヤー |
flutter_mcp_usecases | ビジネスロジックとユーザーインタラクション |
flutter_mcp_state | Cubit/Bloc ベースの状態管理 |
flutter_mcp_widgets | カスタム UI コンポーネント |
🎨 UI & UX
- Copernicus と StyreneB などのフォントを使用
- レスポンシブレイアウトとカスタムテーマ
- 再利用可能なフォームフィールド、チャットバブル、接続インジケータ
📡 MCP プロトコル対応
このアプリは MCP (Model Context Protocol) クライアントを実装し、構造化されたメッセージ、ツール呼び出し、コンテンツ埋め込みを通じて AI インタラクションを可能にします。
対応機能には以下が含まれます:
- ストリーミングチャット更新
- ツール登録と呼び出し
- 埋め込みコンテンツ処理(テキスト、画像、リソース)
- 接続ライフサイクル管理
🤝 貢献
貢献を歓迎します!はじめるには:
melos bootstrap
melos run analyze
GitHub でイシューやプルリクエストを送信してください。
📜 ライセンス
MIT ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。