Skip to content

Arenukvern/mcp_flutter

Repository files navigation

MCP Server + Flutter MCP Toolkit

For AI-Powered Development

License: MIT Flutter smithery badge Verified on MseeP All Contributors

Flutter Inspector Server MCP server

πŸ” Model Context Protocol (MCP) server that connects your Flutter apps with AI coding assistants like Cursor, Claude, Cline, Windsurf, RooCode or any other AI assistant that supports MCP server

View Screenshots

πŸ“– Documentation

Note

There is a new experimental package in development from Flutter team which exposes Dart tooling development.

Therefore my current focus is

  1. to stabilize and polish tools which are useful in development (so it would be more plug & play, for example: it will return not only the errors, but prompt for AI how to work with that error) see more in MCP_RPC_DESCRIPTION.md
  2. fine-tune process of MCP server tools creation by making it customizable.

Hope it will be useful for you,

Have a nice day!

πŸŽ‰ v2 released! πŸŽ‰

Now Flutter MCP server works without forwarding server and devtools extension. See more in CHANGELOG.md.

⚠️ WARNING

Dump RPC methods (like dump_render_tree), may cause huge amount of tokens usage or overload context. Therefore now they are disabled by default, but can be enabled via environment variable DUMPS_SUPPORTED=true.

See more details about environment variables in .env.example.

πŸš€ Getting Started

  • (Experimental) You can try to install MCP server and configure it using your AI Agent. Use the following prompt: Please install MCP server using this link: https://github.com/Arenukvern/mcp_flutter/blob/main/llm_install.md

  • with Cursor: https://www.youtube.com/watch?v=pyDHaI81uts

  • with VSCode + Cline: use prompt Please install MCP server using this link: https://github.com/Arenukvern/mcp_flutter/blob/main/llm_install.md

  • Quick Start is available in QUICK_START.md

  • Configuration options are available in CONFIGURATION.md

🎯 AI Agent Tools

Error Analysis

  • get_app_errors [Resource|Tool] - Retrieves precise and condensed error information from your Flutter app Usage:

    • Uses only short description of the error. Should filter duplicate errors, to avoid flooding Agent context window with the same errors.
    • Uses Error Monitor to capture Dart VM errors. All errors captured in Flutter app, and then available by request from MCP server.

    Tested on: βœ… macOS, βœ… iOS Not tested on: 🚧 Android, πŸ€” Windows, πŸ€” Linux, ❌ Web See issue

Development Tools

  • view_screenshot [Resource|Tool] - Captures a screenshots of the running application. Configuration:

    • Enable with --images flag or IMAGES_SUPPORTED=true environment variable
    • Will use PNG compression to optimize image size.
  • get_view_details [Resource|Tool] - size of screen, pixel ratio. May unlock ability for an Agent to use widget selection.

All tools default to using port 8181 if no port is specified. You can override this by providing a specific port number.

πŸ“š Please see more in MCP_RPC_DESCRIPTION

πŸ”’ Security

Generally, since you use MCP server to connect to Flutter app in Debug Mode, it should be safe to use. However, I still recommend to review how it works in ARCHITECTURE.md, how it can be modified to improve security if needed.

This MCP server is verified by MseeP.ai.

MseeP.ai Security Assessment Badge

πŸ”§ Troubleshooting

  1. Connection Issues

    • Ensure your Flutter app is running in debug mode
    • Verify the port matches in both Flutter app and MCP server
    • Check if the port is not being used by another process
  2. AI Tool Not Detecting Inspector

    • Restart the AI tool after configuration changes
    • Verify the configuration JSON syntax
    • Check the tool's logs for connection errors

The Flutter MCP Server is registered with Smithery's registry, making it discoverable and usable by other AI tools through a standardized interface.

Integration Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                 β”‚     β”‚  Flutter App with     β”‚     β”‚                 β”‚
β”‚  Flutter App    β”‚<--->β”‚  mcp_toolkit (VM Svc.  β”‚<--->β”‚   MCP Server   β”‚
β”‚  (Debug Mode)   β”‚     β”‚  Extensions)          β”‚     β”‚                 β”‚
β”‚                 β”‚     β”‚                       β”‚     β”‚                 β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

🀝 Contributing

Contributions are welcome! Please feel free to submit pull requests or report issues on the GitHub repository.

✨ Contributors

Huge thanks to all contributors for making this project better!

Henry Mao
Henry Mao

πŸš‡
Marwen
Marwen

πŸ“–
Lawrence Sinclair
Lawrence Sinclair

πŸ“– πŸ›‘οΈ
Frank Fiegel
Frank Fiegel

πŸš‡
Harish Anbalagan
Harish Anbalagan

πŸ““ πŸ›
Torben Keller
Torben Keller

πŸ““ πŸ›

πŸ“– Learn More

Star History

Star History Chart

πŸ“„ License

MIT - Feel free to use in your projects!


Flutter and Dart are trademarks of Google LLC.

About

MCP server for Dart VM and Flutter

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6