Flutter MCP聊天AI应用程序
Flutter聊天应用程序与模型上下文协议(MCP)集成,可增强AI功能。
由...创建 塔纳顿·查纳法6511454
关于本项目
这是一个现代的Flutter聊天应用程序,与模型上下文协议(MCP)集成,提供增强的AI功能。该应用程序具有干净直观的界面,支持在线人工智能服务和离线回退响应。
特性
- 💬 实时聊天界面:简洁且响应迅速的聊天界面,带有消息气泡
- 🆓 免费AI服务:使用拥抱脸内置免费人工智能响应-无需API密钥!
- 🔌 MCP集成:连接到MCP服务器以扩展AI功能
- 🤖 高级AI支持:可选的Anthropic Claude API集成
- ⚡ 始终可用:智能回退响应确保应用程序始终正常工作
- 🛠️ 工具集成:通过聊天界面执行MCP工具
- 🎨 材料设计:遵循谷歌设计原则的现代用户界面
- 📱 交叉平台的:可在iOS、Android、Web和桌面上运行
如何跑步
先决条件
- Flutter SDK:版本3.35.3或更高版本
- Dart SDK:包含在Flutter中
- Git:用于克隆存储库
分步安装
- 克隆仓库:
git clone https://github.com/ZillerDX/flutter-mcp-chat-clean.git
cd flutter-mcp-chat-clean- 安装Flutter依赖项:
flutter pub get- 生成所需代码:
dart run build_runner build- 运行应用程序:
flutter run应用程序将启动并显示一个配置对话框,您可以在其中选择设置:
- 增强人工智能响应的人类API关键
- 用于工具集成的MCP服务器URI
在特定平台上运行
- 安卓:
flutter run -d android - iOS:
flutter run -d ios(需要macOS和Xcode) - 网络:
flutter run -d chrome - 桌面:
flutter run -d windows/macos/linux
应用程序配置
🚀 即时设置-无需API密钥!
该应用 立即工作 免费的AI服务!您可以立即开始聊天,无需任何配置。
当你第一次启动应用程序时,你会看到一个带有可选设置的设置对话框:
- 免费AI服务 (默认):
- ✅ 已启用 -开箱即用 - 使用拥抱无脸层进行人工智能响应 - 回归到明智的本地响应 - 无需设置!
- 无烟煤API密钥 (可选):
- 从以下位置获取密钥https://console.anthropic.com/ - 启用高级Claude AI响应 - 可选升级以增强对话
- MCP服务器URI (可选):
- 连接到MCP服务器(例如。, ws://localhost:8080) - 实现工具集成和扩展功能 - 可选-无需MCP连接即可进行基本聊天
服务优先级
该应用程序按以下顺序使用服务:
- 您的人类API (如有提供)-保费回复
- 免费AI服务 (拥抱的脸)-高质量的回应
- 本地智能回退 -始终离线可用
项目结构
lib/
├── main.dart # App entry point
├── models/ # Data models and JSON serialization
│ ├── mcp_message.dart
│ └── mcp_message.g.dart
├── services/ # Core business logic
│ ├── mcp_client.dart
│ └── ai_chat_service.dart
├── providers/ # State management
│ └── chat_provider.dart
├── widgets/ # Reusable UI components
│ ├── chat_bubble.dart
│ └── chat_input.dart
└── screens/ # Application screens
└── chat_screen.dart主要特征说明
MCP集成
该应用程序实现了模型上下文协议,以:
- 通过WebSocket连接到外部MCP服务器
- 列出连接服务器中的可用工具
- 执行工具调用并将结果集成到聊天中
- 处理连接管理和错误恢复
AI聊天服务
- 与Anthropic的Claude API集成,实现智能响应
- 提供带有聊天历史记录的上下文对话
- 当API不可用时,返回到基于模式的响应
- 通过MCP协议支持工具集成
状态管理
使用Flutter的提供者模式:
- 管理聊天消息和对话状态
- 处理加载状态和错误消息
- UI和服务之间的协调
- 整个应用程序的响应式更新
开发命令
# Install dependencies
flutter pub get
# Run code generation
dart run build_runner build
# Run tests
flutter test
# Analyze code
flutter analyze
# Build for production
flutter build apk --release # Android
flutter build ios --release # iOS
flutter build web --release # Web故障排除
应用程序无法启动?
- 确保Flutter SDK已正确安装:
flutter doctor - 确保已安装依赖项:
flutter pub get
无法连接到MCP服务器?
- 验证服务器URI是否正确以及服务器是否正在运行
- 检查网络连接
- 确保WebSocket连接未被防火墙阻止
API不工作?
- 验证您的Anthropic API密钥是否有效
- 检查互联网连接
- 如果API失败,应用程序将使用回退响应
______________________________________________________________________
由Tanathon Chanapha创建6511454
