Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
AI E2E testing bridge — give AI eyes and hands inside any app. 8 platforms, 40+ tools.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"flutter-skill": {
"command": "npx",
"args": [
"-y",
"flutter-skill"
]
}
}
}在终端中运行这条命令
claude mcp add flutter-skill -- npx -y flutter-skill粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"flutter-skill": {
"command": "npx",
"args": [
"-y",
"flutter-skill"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"flutter-skill": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"flutter-skill"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月6日
发布者(telsav)不是仓库所有者(ai-dashboad);可能是其他人代为上架的
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 0 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.7.6)于9个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, yontu
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Türkçe yazı denetimi: TDK kuralları, yapay zekâ izleri, metin türüne göre üslup.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
flutter-skill
Give any AI agent eyes and hands inside any running app.
10 platforms. Zero test code. One MCP server.
Demo • Quick Start • AI Platforms • Platforms • vs Others • Docs
🚀 Zero config. Zero test code. Just talk to your AI.
If this saves you time, please consider starring the repo ⭐ — it helps others find it!
https://github.com/user-attachments/assets/d4617c73-043f-424c-9a9a-1a61d4c2d3c6
One prompt. 28 AI-driven actions. Zero test code. The AI explores a TikTok clone, navigates tabs, scrolls feeds, tests search, fills forms — all autonomously.
Writing E2E tests is painful. Maintaining them is worse. flutter-skill takes a different approach:
You: "Test the checkout flow with an empty cart, then add 3 items and complete purchase"
Your AI agent handles the rest — screenshots, taps, text entry, assertions, navigation. No Page Objects. No XPath. No brittle selectors. Just plain English.
1. Install (30 seconds)
npm install -g flutter-skill
2. Add to your AI (copy-paste into MCP config)
{
"mcpServers": { "flutter-skill": { "command": "flutter-skill", "args": ["server"] } } }
Works with Claude Desktop, Cursor, Windsurf, Copilot, Cline, OpenClaw — any MCP-compatible agent.
3. Add to your app (2 lines for Flutter)
import 'package:flutter_skill/flutter_skill.dart';
void main() { if (kDebugMode) FlutterSkillBinding.ensureInitialized(); runApp(MyApp()); }
4. Test — just talk to your AI:
*"Launch my app, explore every screen, and report any bugs"*
That's it. Zero configuration. Zero test code. Works in under 60 seconds.
📦 More install methods (Homebrew, Scoop, Docker, IDE, Agent Skill)
| Method | Command |
|---|---|
| npm | npm install -g flutter-skill |
| Homebrew | brew install ai-dashboad/flutter-skill/flutter-skill |
| Scoop | scoop install flutter-skill |
| Docker | docker pull ghcr.io/ai-dashboad/flutter-skill |
| pub.dev | dart pub global activate flutter_skill |
| VSCode | Extensions → "Flutter Skill" |
| JetBrains | Plugins → "Flutter Skill" |
| Agent Skill | npx skills add ai-dashboad/flutter-skill |
| Zero-config | flutter-skill init (auto-detects & patches your app) |
Works with any MCP-compatible AI tool. One config line:
{
"mcpServers": { "flutter-skill": { "command": "flutter-skill", "args": ["server"] } } }
| Platform | Config File | Status |
|---|---|---|
| Cursor | .cursor/mcp.json | ✅ |
| Claude Desktop | claude_desktop_config.json | ✅ |
| Windsurf | ~/.codeium/windsurf/mcp_config.json | ✅ |
| VSCode Copilot | .vscode/mcp.json | ✅ |
| Cline | VSCode Settings → Cline → MCP | ✅ |
| OpenClaw | Skill or MCP config | ✅ |
| Continue.dev | .continue/config.json | ✅ |
For standalone browser automation, CI/CD pipelines, or remote access:
# Start server
flutter-skill serve https://your-app.com
flutter-skill nav https://google.com flutter-skill snap # Accessibility tree (99% fewer tokens) flutter-skill screenshot /tmp/ss.jpg flutter-skill tap "Login" flutter-skill type "hello@example.com" flutter-skill eval "document.title" flutter-skill tools # List all available tools
| Command | Description |
|---|---|
nav | Navigate to URL |
snap | Accessibility tree snapshot |
screenshot [path] | Take screenshot |
tap | Tap element |
type | Type via keyboard |
key [mod] | Press key |
eval | Execute JavaScript |
title | Get page title |
text | Get visible text |
hover | Hover element |
upload | Upload file |
tools | List tools |
call [json] | Call any tool |
Supports --port=N, --host=H flags and FS_PORT/FS_HOST env vars.
server (MCP stdio) | serve (HTTP) | |
|---|---|---|
| Use case | IDE / AI agent integration | CLI / automation / CI/CD |
| Protocol | MCP (JSON-RPC over stdio) | HTTP REST |
| Tools | 253 (dynamic per page) | 246 (generic) |
| Browser | Auto-launches Chrome | Connects to existing Chrome |
| Best for | Cursor, Claude, VSCode | OpenClaw, scripts, pipelines |
Full CLI client reference: docs/CLI_CLIENT.md
Most testing tools work on 1-2 platforms. flutter-skill works on 10.
| Platform | SDK | Test Score |
|---|---|---|
| Flutter (iOS/Android/Web) | flutter_skill | ✅ 188/195 |
| React Native | sdks/react-native | ✅ 75/75 |
| Electron | sdks/electron | ✅ 75/75 |
| Tauri (Rust) | sdks/tauri | ✅ 75/75 |
| Android (Kotlin) | sdks/android | ✅ 74/75 |
| KMP Desktop | sdks/kmp | ✅ 75/75 |
| .NET MAUI | sdks/dotnet-maui | ✅ 75/75 |
| iOS (Swift/UIKit) | sdks/ios | ✅ 19/19 |
| Web (any website) | sdks/web | ✅ |
| Web CDP (zero-config) | No SDK needed | ✅ 141/156 |
Total: 656/664 tests passing (98.8%) — each platform tested against a complex social media app with 50+ elements.
Real benchmarks from automated test runs against a complex social media app:
| Operation | Web (CDP) | Electron | Android |
|---|---|---|---|
connect | 93 ms | 55 ms | 103 ms |
tap | 1 ms | 1 ms | 2 ms |
enter_text | 1 ms | 1 ms | 2 ms |
inspect | 3 ms | 12 ms | 10 ms |
snapshot | 2 ms | 8 ms | 29 ms |
screenshot | 31 ms | 80 ms | 88 ms |
eval | 1 ms | — | — |
Token efficiency: snapshot() returns a structured element tree instead of an image — 87–99% fewer tokens than sending screenshots to your AI agent.
How fast is that? A tap takes 1–2 ms end-to-end. Browser automation tools like Playwright and Selenium typically take 50–100 ms for the same operation. That's 50–100× faster, because flutter-skill talks directly to the app runtime instead of going through WebDriver or CDP indirection.
Tested 15 MCP tools against production websites — 75/75 passed, zero timeouts:
| Site | Tools | Total Time | snapshot | screenshot | count_elements |
|---|---|---|---|---|---|
| YouTube | 15/15 ✅ | 6.9s | 43 ms | 30 ms | 4 ms |
| Amazon | 15/15 ✅ | 14.2s | 1 ms | 5 ms | 2 ms |
| 15/15 ✅ | 17.9s | 6 ms | 32 ms | 51 ms | |
| Hacker News | 15/15 ✅ | 4.8s | 53 ms | 188 ms | 1 ms |
| Wikipedia | 15/15 ✅ | 7.8s | 15 ms | 336 ms | 1 ms |
Total time includes page load. Tool execution is consistently sub-100ms even on heavy DOM sites.
| flutter-skill | Playwright MCP | Appium | Detox | |
|---|---|---|---|---|
| MCP tools | 253 | ~33 | ❌ | ❌ |
| Platforms | 10 | 1 (web) | Mobile | React Native |
| Setup time | 30 sec | Minutes | Hours | Hours |
| Test code needed | ❌ None | ✅ Yes | ✅ Yes | ✅ Yes |
| AI-native (MCP) | ✅ | ✅ | ❌ | ❌ |
| Self-healing tests | ✅ | ❌ | ❌ | ❌ |
| Monkey/fuzz testing | ✅ | ❌ | ❌ | ❌ |
| Visual regression | ✅ | ❌ | ❌ | ❌ |
| Network mock/replay | ✅ | ❌ | ❌ | ❌ |
| API + UI testing | ✅ | ❌ | ❌ | ❌ |
| Multi-device sync | ✅ | ❌ | Partial | ❌ |
| Accessibility audit | ✅ | ❌ | ❌ | ❌ |
| i18n testing | ✅ | ❌ | ❌ | ❌ |
| Performance monitoring | ✅ | ❌ | ❌ | ❌ |
| Natural language | ✅ | ❌ | ❌ | ❌ |
| Flutter support | ✅ Native | Partial | Partial | ❌ |
| Desktop apps | ✅ | ✅ | ❌ | ❌ |
| AI page understanding | ✅ AX Tree | ❌ Screenshots | ❌ | ❌ | | Boundary/security test | ✅ 13 payloads | ❌ | ❌ | ❌ | | Batch actions | ✅ 5+/call | 1/call | 1/call | 1/call |
flutter-skill is the only AI-native E2E testing tool that works across mobile, web, and desktop — with 7× more tools than the nearest competitor.
# 🤖 AI autonomous exploration — finds bugs automatically
flutter-skill explore https://my-app.com --depth=3
flutter-skill monkey https://my-app.com --actions=100 --seed=42
flutter-skill test --url https://my-app.com --platforms web,electron,android
flutter-skill serve https://my-app.com
Most AI testing tools send screenshots to the LLM — each one costs ~4,000 tokens.
flutter-skill uses Chrome's Accessibility Tree to give your AI a compact semantic summary of any page:
// page_summary → ~200 tokens (vs ~4,000 for a screenshot)
{ "title": "Shopping Cart", "nav": ["Home", "Products", "Cart", "Account"], "forms": [{"input:Coupon Code": "text"}], "buttons": ["Apply", "Checkout", "Continue Shopping"], "features": {"search": true, "pagination": true}, "links": 47, "inputs": 3 }
Then batch multiple actions in one call:
// explore_actions → 5 actions per call (vs 5 separate tool calls)
{"actions": [ {"type": "fill", "target": "input:Coupon Code", "value": "SAVE20"}, {"type": "tap", "target": "button:Apply"}, {"type": "tap", "target": "button:Checkout"}, {"type": "fill", "target": "input:Email", "value": "test@example.com"}, {"type": "tap", "target": "button:Continue"} ]}
Result: Your AI agent tests faster, costs less, and understands pages better than screenshot-based tools.
| flutter-skill | Screenshot-based tools |
|---|
| Tokens per page | **~2
只显示了开头部分;其余内容请在仓库中阅读