mcpField
F
Flutter + dart_mcp + AI Desktop App Demo

Flutter + dart_mcp + AI Desktop App Demo

github.com/leehack桌面应用3776 周前更新

关于 Flutter + dart_mcp + AI Desktop App Demo

Flutter + dart_mcp + AI 桌面应用演示展示如何在 Flutter 应用中实现 MCP 客户端。提供 MCP 服务器管理界面,支持 API 密钥管理、服务器配置和自定义环境变量设置。

主要功能

  1. 01API 密钥管理与本地存储
  2. 02MCP 服务器的添加、编辑和删除
  3. 03服务器连接状态管理
  4. 04自定义环境变量配置
  5. 05Stdio 服务器支持
  6. 06聊天消息代码块显示切换

适用场景

  1. 01在桌面应用中管理多个 MCP 服务器
  2. 02配置和测试 MCP 服务器连接
  3. 03与 Gemini 大模型集成构建 AI 聊天应用

MCP 相关

Flutter 客户端使用 dart_mcp 包与 stdio 服务器通信,管理 MCP 服务器连接和配置。

详细介绍

Flutter + dart_mcp + AI 桌面应用演示

这是一个基于 Flutter 的项目,旨在管理和配置 MCP(Model Context Protocol)服务。该应用为管理 API 密钥、配置服务设置和处理自定义环境变量提供了用户友好的界面。该应用使用 mcp_dart 包来促进与 MCP 服务的通信。

截图

主界面 设置 MCP 服务设置

功能

  • API 密钥管理:使用 SharedPreferences 安全地保存、清除和管理 API 密钥。
  • MCP 服务管理:
    • 添加、编辑和删除 MCP 服务配置。
    • 切换服务连接状态。
    • 应用更改以同步服务连接。
  • 自定义环境变量:为每个服务定义和管理自定义环境变量。
  • 显示设置:切换聊天消息中代码块的可见性。

安装

要运行此项目,请确保您的计算机上安装了 Flutter SDK。请遵循 指南。

  1. 克隆仓库:

    git clone [email protected]:leehack/flutter-mcp-ai-chat.git
    cd flutter-mcp-ai-chat
    
  2. 安装依赖:

    flutter pub get
    
  3. 运行应用:

    flutter run
    

使用

API 密钥管理

API 密钥是与 Gemini 模型通信所必需的。您可以通过设置屏幕管理 API 密钥。密钥可以从 Google AI Studio 创建。

  1. 导航到设置屏幕。
  2. 在提供的文本字段中输入您的 API 密钥。
  3. 点击保存密钥以将密钥本地存储。
  4. 使用清除密钥按钮删除存储的密钥。
MCP 服务管理

MCP 服务管理功能允许您添加、编辑和删除服务配置。您也可以切换每个服务的连接状态。目前,该应用仅支持基于 stdio 的服务。您可以从 https://github.com/modelcontextprotocol/servers 找到 MCP 服务的示例。

  1. 通过点击添加新 MCP 服务按钮来添加新服务。
  2. 填写服务详情,包括名称、命令、参数和自定义环境变量。
  3. 保存服务配置。
  4. 使用服务列表中的开关切换服务的连接状态。
  5. 应用更改以同步服务连接。
自定义环境变量
  1. 添加或编辑服务时,使用自定义环境变量部分定义键值对。
  2. 使用添加变量按钮添加新变量。
  3. 使用每个变量旁边的删除图标移除变量。

贡献

欢迎贡献!请遵循以下步骤:

  1. Fork 仓库。
  2. 为您的功能或错误修复创建新分支。
  3. 提交更改并推送到您的 fork。
  4. 提交包含详细描述的 pull request。

许可证

此项目基于 MIT 许可证授权。请参阅 LICENSE 文件了解详情。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。