Loading...
Loading...
Compare original and translation side by side
list_projects# Claude Code
claude mcp add flutterflow -e FLUTTERFLOW_API_TOKEN=<token> -- npx -y community-ff-mcp
# Other clients (Claude Desktop, Cursor, Windsurf) — add to MCP config:
# { "command": "npx", "args": ["-y", "community-ff-mcp"], "env": { "FLUTTERFLOW_API_TOKEN": "<token>" } }list_projectslist_projects# Claude Code
claude mcp add flutterflow -e FLUTTERFLOW_API_TOKEN=<token> -- npx -y community-ff-mcp
# 其他客户端(Claude Desktop、Cursor、Windsurf)——添加到MCP配置:
# { "command": "npx", "args": ["-y", "community-ff-mcp"], "env": { "FLUTTERFLOW_API_TOKEN": "<token>" } }list_projects| Tool | Purpose |
|---|---|
| List all FF projects accessible to your API token |
| List YAML file keys in a project (supports prefix filter) |
| List pages with human-readable names, scaffold IDs, and folders |
| Search file keys by keyword, prefix, or regex |
| Download all project YAML to local cache for fast reads |
| 工具 | 用途 |
|---|---|
| 列出API令牌可访问的所有FF项目 |
| 列出项目中的YAML文件键(支持前缀过滤) |
| 列出包含可读名称、脚手架ID和文件夹的页面 |
| 按关键词、前缀或正则表达式搜索文件键 |
| 下载所有项目YAML到本地缓存以实现快速读取 |
| Tool | Purpose |
|---|---|
| Fetch full page YAML by human-readable name |
| Fetch specific YAML file(s) by file key |
| Quick page overview: widget tree, actions, params (cache-based) |
| Quick component overview: widget tree, params (cache-based) |
| Find all pages/components that use a given component |
| Find all actions that navigate to a given page |
| 工具 | 用途 |
|---|---|
| 通过可读名称获取完整页面YAML |
| 通过文件键获取特定YAML文件 |
| 快速页面概览:组件树、动作、参数(基于缓存) |
| 快速组件概览:组件树、参数(基于缓存) |
| 查找使用指定组件的所有页面/组件 |
| 查找导航到指定页面的所有动作 |
| Tool | Purpose |
|---|---|
| Theme colors, typography, breakpoints, widget defaults |
| App state variables, constants, environment settings |
| API endpoint definitions (method, URL, headers, response) |
| Data structs, enums, Firestore collections, Supabase tables |
| Custom actions, functions, widgets, AI agents (read-only) |
| App Details, App Assets, Nav Bar & App Bar |
| Firebase, Languages, Platforms, Permissions, Dependencies |
| Authentication, Push Notifications, Deployment settings |
| Stripe, Braintree, RevenueCat, Razorpay config |
| Supabase, SQLite, GitHub, Algolia, Google Maps, AdMob, etc. |
| 工具 | 用途 |
|---|---|
| 主题颜色、排版、断点、组件默认值 |
| 应用状态变量、常量、环境设置 |
| API端点定义(方法、URL、请求头、响应) |
| 数据结构、枚举、Firestore集合、Supabase表 |
| 自定义动作、函数、组件、AI Agent(只读) |
| 应用详情、应用资源、导航栏与应用栏 |
| Firebase、语言、平台、权限、依赖项 |
| 身份验证、推送通知、部署设置 |
| Stripe、Braintree、RevenueCat、Razorpay配置 |
| Supabase、SQLite、GitHub、Algolia、Google Maps、AdMob等集成 |
| Tool | Purpose |
|---|---|
| Get recommended workflow and docs for a specific editing task |
| Search/retrieve YAML reference docs by topic or file path |
| Validate YAML content before pushing changes |
| Push validated YAML changes to the FF project |
| 工具 | 用途 |
|---|---|
| 获取特定编辑任务的推荐工作流和文档 |
| 按主题或文件路径搜索/检索YAML参考文档 |
| 在推送更改前验证YAML内容 |
| 将经过验证的YAML更改推送到FF项目 |
1. list_projects → pick the target projectId
2. sync_project(projectId) → cache all YAML locally for fast reads
3. list_pages(projectId) → see all pages with human-readable names, scaffold IDs, folders
4. get_page_summary(projectId, pageName) → widget tree overview for any page of interestget_page_summaryget_component_summaryget_themeget_app_state1. list_projects → 选择目标projectId
2. sync_project(projectId) → 将所有YAML缓存到本地以实现快速读取
3. list_pages(projectId) → 查看所有包含可读名称、脚手架ID和文件夹的页面
4. get_page_summary(projectId, pageName) → 查看任意感兴趣页面的组件树概览get_page_summaryget_component_summaryget_themeget_app_state1. get_page_summary(projectId, pageName) → quick overview of widget tree, actions, params
2. get_page_by_name(projectId, pageName) → full YAML if you need complete details
3. find_page_navigations(projectId, pageName) → discover what actions navigate here
4. find_component_usages(projectId, componentName) → find everywhere a component is usedget_component_summaryget_page_summary1. get_page_summary(projectId, pageName) → 快速概览组件树、动作、参数
2. get_page_by_name(projectId, pageName) → 获取完整YAML以查看详细信息
3. find_page_navigations(projectId, pageName) → 发现哪些动作会导航到此页面
4. find_component_usages(projectId, componentName) → 查找组件的所有使用位置get_component_summaryget_page_summary1. get_page_by_name(projectId, pageName) → get the full page YAML
2. Identify the node file key for the target widget (format: page/id-Scaffold_XXX/page-widget-tree-outline/node/id-Widget_YYY)
3. get_project_yaml(projectId, fileName: "page/id-.../node/id-Widget_XXX") → fetch the individual node YAML
4. Modify the YAML — keep inputValue and mostRecentInputValue in sync
5. validate_yaml(projectId, fileKey, content) → check for errors before pushing
6. update_project_yaml(projectId, {fileKey: content}) → push changes1. get_page_by_name(projectId, pageName) → 获取完整页面YAML
2. 确定目标组件的节点文件键(格式:page/id-Scaffold_XXX/page-widget-tree-outline/node/id-Widget_YYY)
3. get_project_yaml(projectId, fileName: "page/id-.../node/id-Widget_XXX") → 获取单个节点YAML
4. 修改YAML —— 保持inputValue和mostRecentInputValue同步
5. validate_yaml(projectId, fileKey, content) → 推送前检查错误
6. update_project_yaml(projectId, {fileKey: content}) → 推送更改1. get_page_by_name(projectId, pageName) → understand the current widget tree structure
2. get_yaml_docs(topic: "WidgetType") → look up the YAML schema for the widget you want to add
3. Update the page-widget-tree-outline to include a reference to the new widget key
4. Create individual node files for each new widget (one file per widget)
5. validate_yaml → validate the tree outline first, then each node file
6. update_project_yaml → push tree outline + all node files together in one call1. get_page_by_name(projectId, pageName) → 了解当前组件树结构
2. get_yaml_docs(topic: "WidgetType") → 查找要添加的组件的YAML schema
3. 更新page-widget-tree-outline以包含新组件键的引用
4. 为每个新组件创建单独的节点文件(每个组件一个文件)
5. validate_yaml → 先验证树大纲,再验证每个节点文件
6. update_project_yaml → 在一次调用中同时推送树大纲和所有节点文件1. get_yaml_docs(topic: "create component") → get the full walkthrough and required file structure
2. Design component parameters: name, dataType, isNullable for each param
3. Create these files: component metadata, widget-tree-outline, root node (with isDummyRoot: true), child nodes
4. validate_yaml → validate all files before pushing
5. update_project_yaml → push all component files in one callisDummyRoot: truetriggerType: CALLBACKparameterIdentifierwidgetPropertyinputValue1. get_yaml_docs(topic: "create component") → 获取完整指南和所需文件结构
2. 设计组件参数:每个参数的名称、dataType、isNullable
3. 创建以下文件:组件元数据、widget-tree-outline、根节点(设置isDummyRoot: true)、子节点
4. validate_yaml → 推送前验证所有文件
5. update_project_yaml → 在一次调用中推送所有组件文件isDummyRoot: truetriggerType: CALLBACKparameterIdentifierwidgetPropertyinputValuefontWeightValuefontSizeValueinputValuemostRecentInputValuepage/id-Scaffold_XXX/page-widget-tree-outline/node/id-Widget_YYYpage/id-Scaffold_XXXvalidate_yamlupdate_project_yamlpage-widget-tree-outlineupdate_project_yamlMainAxisSize.minminSizeValue: { inputValue: true }LARGE_HEADERSTANDARDtoolbarHeightget_custom_codefontWeightValuefontSizeValueinputValuemostRecentInputValuepage/id-Scaffold_XXX/page-widget-tree-outline/node/id-Widget_YYYpage/id-Scaffold_XXXupdate_project_yamlvalidate_yamlupdate_project_yamlpage-widget-tree-outlineMainAxisSize.minminSizeValue: { inputValue: true }LARGE_HEADERSTANDARDtoolbarHeightget_custom_codelist_project_fileslist_pagessync_projectget_page_summaryget_yaml_docs(topic)get_editing_guide(task)page-widget-tree-outlinelist_project_fileslist_pagessync_projectget_page_summaryget_yaml_docs(topic)get_editing_guide(task)page-widget-tree-outline| When you need... | Call |
|---|---|
| Widget schema (Button, Text, Container, etc.) | |
| Action chains, triggers, navigation | |
| Data binding, variable sources | |
| Colors, typography, dimensions | |
| Creating components from scratch | |
| Editing workflows and anti-patterns | |
| Data structs, enums, collections | |
| Full docs index | |
| Guided workflow for a specific task | |
| 当你需要... | 调用 |
|---|---|
| 组件schema(Button、Text、Container等) | |
| 动作链、触发器、导航 | |
| 数据绑定、变量源 | |
| 颜色、排版、尺寸 | |
| 从头创建组件 | |
| 编辑工作流和反模式 | |
| 数据结构、枚举、集合 | |
| 完整文档索引 | |
| 特定任务的引导工作流 | |