community-ff-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| FLUTTERFLOW_API_TOKEN | Yes | Your FlutterFlow API token. Required for authentication. |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_projectsA | List FlutterFlow projects for the authenticated user. NOTE: This may not return all projects you have access to (shared/team projects can be missing). If a project is missing, copy its ID directly from the FlutterFlow editor (click the project name in the top-left corner). |
| list_project_filesA | List all YAML file names in a FlutterFlow project. Supports optional prefix filter (e.g. 'page/', 'component/') to narrow results. |
| get_project_yamlA | Read YAML files from the local project cache. Requires sync_project to be run first. Returns one file if fileName is specified, or lists all cached file keys if omitted. |
| validate_yamlA | Validate YAML content before pushing changes to a FlutterFlow project. Always call this before update_project_yaml. Tip: Call get_editing_guide or get_yaml_docs BEFORE writing YAML to understand the correct schema and field names. Validation catches syntax errors but not semantic mistakes. |
| update_project_yamlA | Push YAML changes to a FlutterFlow project. IMPORTANT: Always call validate_yaml first to check for errors before updating. For best results, call get_editing_guide before writing YAML to get the correct workflow and schema documentation. |
| list_pagesA | List all pages in a FlutterFlow project with human-readable names, scaffold IDs, and folder assignments. Use this FIRST to discover pages before fetching their YAML. |
| get_page_by_nameA | Fetch a FlutterFlow page by its human-readable name (e.g. 'Welcome', 'GoldPass'). Resolves the name to the correct scaffold ID and returns the full page YAML. Case-insensitive matching. |
| sync_projectA | Sync an entire FlutterFlow project to the local cache. Downloads all YAML files (bulk or batched fallback) for fast offline reads. Use force=true to re-sync an already cached project. |
| get_page_summaryA | Get a readable summary of a FlutterFlow page from local cache — widget tree, actions, params, state. Component references are resolved to show [ComponentName] (ComponentId) instead of plain Container. Use the ComponentId with get_component_summary to drill into a component. No API calls. Run sync_project first if not cached. |
| get_component_summaryA | Get a readable summary of a FlutterFlow component from local cache — widget tree, actions, params. Nested component references are resolved to show [ComponentName] (ComponentId). No API calls. Run sync_project first if not cached. |
| find_component_usagesA | Find all pages and components where a given component is used, with parameter pass details. Cache-only, no API calls. Run sync_project first. |
| find_page_navigationsA | Find all actions that navigate to a given page, showing source page, trigger, disabled status, and passed parameters. Cache-only, no API calls. Run sync_project first. |
| get_yaml_docsA | Search and retrieve FlutterFlow YAML reference documentation. Use |
| get_app_stateA | Get app state variables, constants, and environment settings from local cache. No API calls. Run sync_project first if not cached. |
| get_api_endpointsA | Get API endpoint definitions from local cache — method, URL, variables, headers, response fields. No API calls. Run sync_project first if not cached. |
| get_data_modelsA | Get data structs, enums, Firestore collections, and Supabase tables from local cache. No API calls. Run sync_project first if not cached. |
| get_custom_codeA | Get custom actions, functions, widgets, AI agents, app action components, and custom files from local cache — signatures, arguments, return types, and optionally Dart source code. No API calls. Run sync_project first if not cached. |
| get_themeA | Get theme colors, typography, breakpoints, and widget defaults from local cache. No API calls. Run sync_project first if not cached. |
| get_editing_guideA | Get the recommended workflow and relevant documentation for a FlutterFlow editing task. Call this BEFORE modifying any YAML. Describe what you want to do (e.g. 'change button color', 'add a TextField to the login page', 'create a reusable header component') and receive the correct workflow steps, YAML schemas, and critical rules. |
| search_project_filesA | Search cached project file keys by keyword, prefix, or regex. Returns matching file keys for use with get_project_yaml. Cache-only, no API calls. Run sync_project first. |
| get_general_settingsA | Get General settings — App Details (name, package, initial page, routing), App Assets (icon, splash, error image), Nav Bar & App Bar. Mirrors the FlutterFlow 'General' settings section. Cache-based, no API calls. Run sync_project first. |
| get_project_setupA | Get Project Setup settings — Firebase services, Languages, Platforms, Permissions, Project Dependencies, Dev Environments. Mirrors the FlutterFlow 'Project Setup' settings section. Cache-based, no API calls. Run sync_project first. |
| get_app_settingsA | Get App Settings — Authentication, Push Notifications, Mobile Deployment (version, build, stores), Web Deployment (SEO, title). Mirrors the FlutterFlow 'App Settings' section. Cache-based, no API calls. Run sync_project first. |
| get_in_app_purchasesA | Get In-App Purchases & Subscriptions settings — Stripe, Braintree, RevenueCat, Razorpay. Mirrors the FlutterFlow 'In App Purchases & Subscriptions' section. Cache-based, no API calls. Run sync_project first. |
| get_integrationsA | Get Integrations settings — Supabase, SQLite, GitHub, Algolia, Google Analytics, Google Maps, AdMob, Mux Livestream, OneSignal, Gemini. Mirrors the FlutterFlow 'Integrations' section. Cache-based, no API calls. Run sync_project first. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| generate-page | Generate a new FlutterFlow page from a natural language description |
| modify-component | Read an existing FlutterFlow component and modify it based on instructions |
| inspect-project | Read and summarize a FlutterFlow project's structure, pages, and components |
| flutterflow-dev-workflow | Efficient workflow guide for developing FlutterFlow apps through MCP tools. References the full YAML docs catalog via get_yaml_docs tool. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| projects | List all FlutterFlow projects |
| docs-index | FlutterFlow YAML reference catalog — list all available documentation files |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mohn93/ff-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server