flutter-mcp-toolkit

MCP-сервер и пакет для Flutter: агент видит запущенное приложение, нажимает на виджеты, вводит текст, делает hot reload и читает логи

  • 397 ★ репозитория
  • Последний коммит
  • MIT
MCP-сервер

Расширенный доступ

Почему такой уровень

  • Агент нажимает на виджеты, вводит текст и вычисляет выражения Dart в запущенном приложении, поэтому подключать его стоит только к отладочной сборке
  • Бинарный файл ставится скриптом, который скачивается с GitHub и запускается в оболочке
Все причины и проверки

arenukvern/mcp_flutter

Установка

Ручная установка

curl -fsSL https://raw.githubusercontent.com/Arenukvern/mcp_flutter/main/install.sh | bash

Ставит бинарный файл flutter-mcp-toolkit и короткое имя fmtk. Затем в проекте выполните flutter-mcp-toolkit codegen-init и flutter-mcp-toolkit init с именем агента.

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • Агент нажимает на виджеты, вводит текст и вычисляет выражения Dart в запущенном приложении, поэтому подключать его стоит только к отладочной сборке
  • Бинарный файл ставится скриптом, который скачивается с GitHub и запускается в оболочке

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

flutter-mcp-toolkit замыкает цикл между агентом и работающим Flutter-приложением. Сервер на Dart подключается к приложению в режиме отладки, а агент снимает его состояние, нажимает на виджеты, прокручивает экран, заполняет формы, перезагружает код горячо и читает журнал, не выходя из диалога. По умолчанию доступно 31 инструмент с префиксом `fmt_`, с флагом `--dumps` их 35. Они делятся на осмотр (семантический снимок, сведения о дереве, ошибки, скриншоты, данные виртуальной машины), действия (нажатие, прокрутка, ввод, заполнение форм, переходы, ожидание), отладку (журнал и вычисление выражений на Dart) и жизненный цикл (поиск запущенных приложений, hot reload, hot restart). Тяжелые дампы дерева рендеринга по умолчанию выключены, потому что дают огромный вывод. Приложение само может регистрировать свои инструменты и ресурсы MCP во время работы через пакет mcp_toolkit, так что агент получает команды, которые знают устройство вашего проекта. Те же возможности доступны из командной строки через `flutter-mcp-toolkit` и короткое имя `fmtk`, а для повторяемых сценариев на Dart есть пакет flutter_mcp_harness.

Для кого. Для Flutter-разработчиков, которые хотят, чтобы агент сам запускал приложение, проходил по экранам, проверял правку и читал ошибки, без догадок по исходному коду.

Подходит, если

  • Агент правит экран Flutter, и вам нужно, чтобы он сам открыл приложение, нажал кнопку и показал результат скриншотом
  • Нужно найти причину ошибки: агент читает журнал и ошибки запущенного приложения и сверяет их с кодом
  • Форму регистрации надо пройти по шагам, вводя текст и переходя между экранами, без ручной проверки
  • Приложению нужны собственные команды для агента, например сброс тестовых данных, которые оно регистрирует во время работы
  • Проверки интерфейса нужно запускать в скриптах и CI из командной строки, не ограничиваясь диалогом

Не подходит, если

  • Нужны только инструменты Dart вроде анализа, форматирования и запуска тестов: для них есть официальный сервер команды Flutter, на который ссылается автор
  • Приложение не запущено в режиме отладки: сервер работает через сервисы отладки и без них не подключится
  • Нужно тестировать на реальных пользователях в продакшене: инструмент рассчитан на отладочную сборку
  • Задача не связана с Flutter: сервер заточен под его дерево виджетов и виртуальную машину Dart

Пример запроса к агенту

Запусти приложение в режиме отладки, открой экран входа, введи тестовую почту, нажми «Войти» и покажи скриншот с ошибкой, если она появится.

MCP

Транспорт
stdio
Авторизация
не нужна

Ограничения

Приложение должно работать в режиме отладки: в сборке для выпуска сервер к нему не подключится. Для подключения нужен порт сервисов отладки. Если запущено несколько приложений, сервер может ответить кодом connection_selection_required, и тогда в запросе указывают адрес или идентификатор цели. Самый надежный способ, который советует автор, это передать точный адрес WebSocket из машинного вывода Flutter.

Дампы дерева рендеринга выключены по умолчанию и включаются флагом `--dumps`: вывод получается огромным и расходует много токенов. Серверный бинарный файл ставится из релизов GitHub, на pub.dev лежат только пакеты для самого приложения. Минимальная версия Flutter указана в бейдже README как 3.44. Доступность из России не зависит от сторонних сервисов, но установочный скрипт качается с GitHub.

Как отключить. Уберите сервер flutter-mcp-toolkit из конфигурации MCP клиента и перезапустите клиента. Из приложения удалите зависимость mcp_toolkit и вызов инициализации, который добавила команда codegen-init. Скиллы удаляются из каталога скиллов агента.

Частые вопросы

Как поставить flutter-mcp-toolkit в Claude Code?

Либо подключите каталог плагинов командой /plugin marketplace add Arenukvern/mcp_flutter и установите flutter-mcp-toolkit, либо поставьте бинарный файл установочным скриптом и выполните flutter-mcp-toolkit init claude-code. Вторая команда сама пропишет сервер и скиллы.

Что надо добавить в само Flutter-приложение?

Пакет mcp_toolkit. Команда flutter-mcp-toolkit codegen-init добавляет его в проект и выводит фрагмент для main.dart. После этого запускайте приложение через flutter run --debug.

Чем flutter-mcp-toolkit отличается от официального MCP-сервера Flutter?

Официальный сервер команды Flutter отдает инструменты Dart. Этот проект управляет самим запущенным приложением: снимает семантическое состояние, нажимает на виджеты, вводит текст, а еще позволяет приложению регистрировать собственные инструменты MCP во время работы.

Как запустить сервер в Docker?

В конфигурации MCP укажите команду docker с аргументами run, -i, --rm, --network=host и образом ghcr.io/arenukvern/flutter-mcp-toolkit с нужной версией. Образ описан в официальном реестре MCP.

Можно ли пользоваться без MCP, из командной строки?

Да. Тот же набор действий доступен через flutter-mcp-toolkit и короткое имя fmtk, например для разовых команд в скриптах и CI. Для повторяемых сценариев автор предлагает пакет flutter_mcp_harness.

Обсуждение

Вопросов и отзывов пока нет.

MCP-серверы
Официальный

Плагин команды Flutter для агентов: скиллы по Flutter и Dart, сервер Dart MCP и правило горячей перезагрузки для Claude Code, Cursor и Codex

ПлагинРасширенный доступ3,2 тыс.Звезды репозитория
Официальный

Buoy MCP дает агенту читать работающее приложение на React Native или Flutter, нажимать на экран и смотреть сеть

MCP-серверШирокий доступ696Звезды репозитория

Mobile Device MCP управляет iOS и Android: касания, ввод, скриншоты и дерево элементов, несколько устройств одновременно

MCP-серверШирокий доступ53Звезды репозитория

MCP-сервер для управления iOS и Android: симуляторы, эмуляторы и реальные устройства через дерево доступности и скриншоты

MCP-серверШирокий доступ10,5 тыс.Звезды репозитория
Официальный

MCP-сервер дает агенту экран Android, поиск элементов, нажатия, ввод и снимки для проверки собственных приложений.

MCP-серверШирокий доступ525Звезды репозитория
Официальный

Приложение для Android-отладки на macOS с MCP-сервером: агент читает данные Reactotron из React Native на localhost

MCP-серверРасширенный доступ64Звезды репозитория

Сравнение с похожими

Карточки с тем же главным запросом: чем они отличаются.

ИнструментОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
flutter-mcp-toolkit (эта карточка)нетне нужна397
Marionette MCP — агент внутри Flutter-приложениянетне нужна503тоже управляет запущенным Flutter-приложением, но без собственных инструментов, которые приложение регистрирует само
Flutter Agent Pluginsда3 172плагин команды Flutter с навыками Dart и серверной частью для инструментов Dart

Коротко о README

README ведет по четырем шагам: установка бинарного файла, добавление пакета в приложение, установка скиллов для агента и запуск. Дальше описана цепочка уровней автоматизации, от интерактивного MCP до сценариев на Dart и сборщика oka, и папка showcase с двумя демонстрационными приложениями, которые проверяют стек целиком. Раздел новостей фиксирует выпуск 6.0.0 от 2 октября 2026 года.

Бейдж для README

Сообщить о проблеме