AI聊天应用

一个集成了模型上下文协议(MCP)的Flutter聊天应用,提供增强的AI功能,包括实时聊天界面、免费AI服务和MCP集成。

  • by ZillerDX
  • Dart
  • 本地部署
  • 更新于
在 GitHub 查看 ZillerDX/flutter-mcp-chat-clean

使用说明

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:用于克隆存储库

分步安装

  1. 克隆仓库:
git clone https://github.com/ZillerDX/flutter-mcp-chat-clean.git
cd flutter-mcp-chat-clean
  1. 安装Flutter依赖项:
flutter pub get
  1. 生成所需代码:
dart run build_runner build
  1. 运行应用程序:
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服务!您可以立即开始聊天,无需任何配置。

当你第一次启动应用程序时,你会看到一个带有可选设置的设置对话框:

  1. 免费AI服务 (默认):

    • ✅ 已启用 -开箱即用
    • 使用拥抱无脸层进行人工智能响应
    • 回归到明智的本地响应
    • 无需设置!
  2. 无烟煤API密钥 (可选):

    • 从以下位置获取密钥https://console.anthropic.com/
    • 启用高级Claude AI响应
    • 可选升级以增强对话
  3. MCP服务器URI (可选):

    • 连接到MCP服务器(例如。, ws://localhost:8080)
    • 实现工具集成和扩展功能
    • 可选-无需MCP连接即可进行基本聊天

服务优先级

该应用程序按以下顺序使用服务:

  1. 您的人类API (如有提供)-保费回复
  2. 免费AI服务 (拥抱的脸)-高质量的回应
  3. 本地智能回退 -始终离线可用

项目结构

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

链接