用于AI驱动的开发
</div> <a href="https://glama.ai/mcp/servers/qnu3f0fa20"> <img width="380" height="200" src="https://gips2.baidu.com/it/u=1267426417,642496746&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Flutter Inspector Server MCP server" /> </a>🔍 模型上下文协议(MCP)服务器,连接您的Flutter应用程序与AI编码助手,如Cursor、Claude、Cline、Windsurf、RooCode或其他支持MCP服务器的AI助手。
<!-- 媒体 -->
[!NOTE] 存在一个官方的Flutter团队的MCP服务器,它暴露了Dart工具。
本项目的主要目标是通过在Flutter应用中创建它们来利用MCP服务器工具的力量,使用动态MCP工具注册。请参阅简短YouTube视频了解其工作原理。请参阅快速开始以获取更多详细信息。请参阅原始动机。
此外,次要目标是稳定并完善在开发中有用的工具(因此它特别针对AI助手,例如:它不仅返回错误,还会提示AI如何处理这些错误)请参阅MCP_RPC_DESCRIPTION.md。
请在问题中分享您的反馈、想法和建议!
希望这对您有用,
祝您一天愉快!
此MCP服务器与官方Dart MCP服务器的主要区别:
hot_restart_flutter,从MCP执行VM服务热重启。hotRestart(),具有命名空间服务发现回退。非常感谢CommentakMedia为Hot Restart工具和文档提交PR!https://github.com/Arenukvern/mcp_flutter/pull/67
请参阅CHANGELOG.md以获取更多详细信息。
转储RPC方法(如dump_render_tree),可能会导致大量令牌使用或上下文过载。因此,现在它们默认禁用,但可以通过--dumps标志启用。
有关命令行选项的更多详细信息,请参阅mcp_server_dart README。
(实验性)您可以尝试安装MCP服务器并使用您的AI代理进行配置。使用以下提示:请使用此链接安装MCP服务器:https://github.com/Arenukvern/mcp_flutter/blob/main/llm_install.md
使用VSCode + Cline:使用提示请使用此链接安装MCP服务器:https://github.com/Arenukvern/mcp_flutter/blob/main/llm_install.md
快速开始可在QUICK_START.md中找到
配置选项可在CONFIGURATION.md中找到
get_app_errors [资源|工具] - 从您的Flutter应用检索精确且简洁的错误信息
使用:
已测试于: ✅ macOS,✅ iOS 未测试于: 🚧 Android,🤔 Windows,🤔 Linux,❌ Web 请参阅问题
view_screenshot [资源|工具] - 捕获正在运行的应用程序的截图。
配置:
--images标志启用get_view_details [资源|工具] - 屏幕尺寸、像素比。可能解锁代理使用小部件选择的能力。将返回应用中每个视图的详细信息。
动态注册功能:
Flutter应用现在可以在运行时注册自定义工具和资源。请参阅简短YouTube视频了解其工作原理。请参阅动态工具注册文档以获取更多详细信息。
所有工具默认使用端口8181,除非指定了其他端口。您可以通过提供特定端口号来覆盖此设置。
📚 请参阅MCP_RPC_DESCRIPTION以获取更多信息
通常,由于您使用MCP服务器连接到处于调试模式的Flutter应用,因此应该是安全的。然而,我仍然建议您查阅ARCHITECTURE.md了解其工作原理,并根据需要修改以提高安全性。
此MCP服务器已由MseeP.ai验证。
连接问题
AI工具未检测到检查器
动态工具未出现
mcp_toolkit包已在您的Flutter应用中正确初始化MCPToolkitBinding.instance.addEntries()注册了工具listClientToolsAndResources验证注册Flutter MCP服务器已注册到Smithery的注册表中,使其可通过标准化接口被其他AI工具发现和使用。
┌─────────────────┐ ┌───────────────────────┐ ┌─────────────────┐
│ │ │ Flutter 应用程序带 │ │ │
│ Flutter 应用 │<--->│ mcp_toolkit (VM 扩展 + │<--->│ Dart MCP 服务器 │
│ (调试模式) │ │ 动态工具注册) │ │ │
│ │ │ │ │ │
└─────────────────┘ └───────────────────────┘ └─────────────────┘
欢迎贡献!请随时提交拉取请求或在GitHub仓库报告问题。
非常感谢所有贡献者使这个项目变得更好!
<!-- https://allcontributors.org/docs/en/bot/usage --> <!-- ALL-CONTRIBUTORS-LIST:START - 不要删除或修改此部分 --> <!-- prettier-ignore-start --> <!-- markdownlint-disable --> <table> <tbody> <tr> <td align="center" valign="top" width="14.28%"><a href="https://calclavia.com"><img src="https://avatars.githubusercontent.com/u/1828968?v=4?s=100" width="100px;" alt="Henry Mao"/><br /><sub><b>Henry Mao</b></sub></a><br /><a href="#infra-calclavia" title="基础设施(托管、构建工具等)">🚇</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/marwenbk"><img src="https://avatars.githubusercontent.com/u/18284646?v=4?s=100" width="100px;" alt="Marwen"/><br /><sub><b>Marwen</b></sub></a><br /><a href="#doc-marwenbk" title="文档">📖</a></td> <td align="center" valign="top" width="14.28%"><a href="http://eastagile.com"><img src="https://avatars.githubusercontent.com/u/2829939?v=4?s=100" width="100px;" alt="Lawrence Sinclair"/><br /><sub><b>Lawrence Sinclair</b></sub></a><br /><a href="#doc-lwsinclair" title="文档">📖</a> <a href="#security-lwsinclair" title="安全">🛡️</a></td> <td align="center" valign="top" width="14.28%"><a href="https://glama.ai"><img src="https://avatars.githubusercontent.com/u/108313943?v=4?s=100" width="100px;" alt="Frank Fiegel"/><br /><sub><b>Frank Fiegel</b></sub></a><br /><a href="#infra-punkpeye" title="基础设施(托管、构建工具等)">🚇</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/Harishwarrior"><img src="https://avatars.githubusercontent.com/u/38380040?v=4?s=100" width="100px;" alt="Harish Anbalagan"/><br /><sub><b>Harish Anbalagan</b></sub></a><br /><a href="#userTesting-Harishwarrior" title="用户测试">📓</a> <a href="#bug-Harishwarrior" title="错误报告">🐛</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/torbenkeller"><img src="https://avatars.githubusercontent.com/u/33001558?v=4?s=100" width="100px;" alt="Torben Keller"/><br /><sub><b>Torben Keller</b></sub></a><br /><a href="#userTesting-torbenkeller" title="用户测试">📓</a> <a href="#bug-torbenkeller" title="错误报告">🐛</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/rednikisfun"><img src="https://avatars.githubusercontent.com/u/53967674?v=4?s=100" width="100px;" alt="Isfun"/><br /><sub><b>Isfun</b></sub></a><br /><a href="#userTesting-rednikisfun" title="用户测试">📓</a> <a href="#bug-rednikisfun" title="错误报告">🐛</a> <a href="#research-rednikisfun" title="研究">🔬</a> <a href="#code-rednikisfun" title="代码">💻</a></td> </tr> <tr> <td align="center" valign="top" width="14.28%"><a href="https://github.com/cosystudio"><img src="https://avatars.githubusercontent.com/u/149987661?v=4?s=100" width="100px;" alt="Cosy Studio"/><br /><sub><b>Cosy Studio</b></sub></a><br /><a href="#userTesting-cosystudio" title="用户测试">📓</a> <a href="#bug-cosystudio" title="错误报告">🐛</a> <a href="#research-cosystudio" title="研究">🔬</a></td> <td align="center" valign="top" width="14.28%"><a href="https://github.com/lukemmtt"><img src="https://avatars.githubusercontent.com/u/1598289?v=4?s=100" width="100px;" alt="Luke Memet"/><br /><sub><b>Luke Memet</b></sub></a><br /><a href="#userTesting-lukemmtt" title="用户测试">📓</a> <a href="#research-lukemmtt" title="研究">🔬</a> <a href="#maintenance-lukemmtt" title="维护">🚧</a> <a href="#tutorial-lukemmtt" title="教程">✅</a></td> <td align="center" valign="top" width="14.28%"><a href="https://commentatk-media.com"><img src="https://avatars.githubusercontent.com/u/70331129?v=4?s=100" width="100px;" alt="Commentatk Media"/><br /><sub><b>Commentatk Media</b></sub></a><br /><a href="#code-CommentakMedia" title="代码">💻</a> <a href="#maintenance-CommentakMedia" title="维护">🚧</a> <a href="#doc-CommentakMedia" title="文档">📖</a></td> <td align="center" valign="top" width="14.28%"><a href="https://www.linkedin.com/in/umitarslan/"><img src="https://avatars.githubusercontent.com/u/4801240?v=4?s=100" width="100px;" alt="Umit Arslan"/><br /><sub><b>Umit Arslan</b></sub></a><br /><a href="#code-arslanmit" title="代码">💻</a> <a href="#maintenance-arslanmit" title="维护">🚧</a></td> </tr> </tbody> </table> <!-- markdownlint-restore --> <!-- prettier-ignore-end --> <!-- ALL-CONTRIBUTORS-LIST:END -->MIT - 欢迎在您的项目中使用!
Flutter 和 Dart 是 Google LLC 的商标。