# Why This Repo Matters

Originally this project was about creating Dart MCP server to debug Flutter apps (when there was no official library existed).

When official Dart MCP landed - it shifted my priority and implementation principles.

At first, I was thinking to abandon project, however while I was developing next version, I came to unexpected idea - to redesign tools and resources as Toolkit - to allow agents to develop it for any app, and share it from the app, not ship with server.

That lead me to continue working on this project from that point - and that's the main difference between official Dart Server and this MCP Toolkit - they supposed to work side by side.

Most of the changes / motivation is described in [Changelog for v2](https://github.com/Arenukvern/mcp_flutter/blob/main/CHANGELOG.md#210)

And the current goal: to make Flutter debugging and automation usable and customizable for AI Agents for all Flutter applicaitons.  

## The Problem

Generic MCP or Dart-only tooling can expose low-level VM data, but real Flutter debugging usually needs:

- app-level errors with useful summaries
- UI screenshots and view metadata
- fast actions like hot reload/hot restart
- app-specific tools that know your domain

## What This Repo Adds

- A Dart MCP server (`flutter-mcp-toolkit-server`) focused on Flutter workflows.
- A CLI (`flutter-mcp-toolkit`) for deterministic automation, snapshots, and CI.
- `flutter_mcp_toolkit` package for in-app extensions.
- Dynamic tool/resource registration from the running app.
- Target-resolution and retry guidance for multi-app debug sessions.

## Get started in 4 steps

```bash
# 1. Install the binary
curl -fsSL https://raw.githubusercontent.com/Arenukvern/flutter-mcp-toolkit/main/install.sh | bash

# 2. Add the toolkit to your Flutter app
cd my-flutter-app
flutter-mcp-toolkit codegen-init   # adds flutter_mcp_toolkit + emits main.dart snippet

# 3. Install skills for your AI agent
flutter-mcp-toolkit init claude-code   # or: cursor | codex | cline | all

# 4. Run the app
flutter run --debug
```

That's it. Your AI agent can now inspect and drive the running app.

## Relationship To Official Dart MCP Server

The official Dart MCP server from the Flutter/Dart team is important and useful for Dart tooling.

This repo focuses on a different goal: Flutter app-centric workflows and dynamic runtime tools. Many teams can use both, depending on needs.

## Who Benefits

- Flutter teams that want AI-assisted debugging with runtime context.
- Teams building custom agent workflows around app-specific diagnostics.
- Contributors experimenting with MCP tools inside real Flutter apps.
