FlutterFlow MCP Server
Connects AI coding agents to FlutterFlow projects, enabling browsing, inspection, and modification of projects directly from the assistant.
README
FlutterFlow MCP Server
A custom Model Context Protocol (MCP) server that connects AI coding agents like Claude Code to your FlutterFlow projects.
Browse, inspect, and modify your FlutterFlow projects directly from your AI assistant — no copy-pasting YAML or switching between tabs.
Features
- 20 tools for full project management
- Local caching — syncs your project once, then works offline
- Safe editing workflow — validate YAML before pushing changes
- Code export — download the full Flutter source code to your machine
- Firebase deployment — deploy Firestore rules and indexes
- 100% open source — you control every line of code
Quick Start
1. Install
git clone https://github.com/erniecode/flutterflow-mcp.git
cd flutterflow-mcp
npm install
npm run build
2. Get your FlutterFlow API Token
- Go to FlutterFlow Account Settings
- Generate an API token (requires a paid FlutterFlow subscription)
3. Add to Claude Code
Run this command in your terminal:
claude mcp add flutterflow --scope user -- node /path/to/flutterflow-mcp/dist/index.js
Then add your API token to the MCP config in ~/.claude.json:
{
"mcpServers": {
"flutterflow": {
"type": "stdio",
"command": "node",
"args": ["/path/to/flutterflow-mcp/dist/index.js"],
"env": {
"FLUTTERFLOW_API_TOKEN": "your-token-here"
}
}
}
}
4. Restart Claude Code
The FlutterFlow tools will now be available. Try asking:
"List my FlutterFlow projects"
Available Tools
Project Management
| Tool | Description |
|---|---|
list_projects |
List all FlutterFlow projects accessible with your API token |
sync_project |
Download and cache all YAML files for a project locally |
list_files |
List all YAML file keys in a project |
search_files |
Search cached file keys by prefix (e.g. page/, component/) |
Pages & Components
| Tool | Description |
|---|---|
list_pages |
List all pages in a project |
get_page |
Get the full YAML content of a specific page |
get_page_summary |
Get a high-level summary of a page's structure |
Project Configuration
| Tool | Description |
|---|---|
get_theme |
Get theme configuration (colors, typography, breakpoints) |
get_app_state |
Get global app state variables |
get_settings |
Get general project settings |
get_api_endpoints |
List REST API endpoints defined in the project |
get_data_models |
Get data models, structs, enums, and database collections |
get_custom_code |
Get custom actions, functions, and widgets |
YAML Operations
| Tool | Description |
|---|---|
get_yaml |
Get raw YAML content of any file by key |
validate_yaml |
Validate YAML changes before applying (always do this first!) |
update_yaml |
Push YAML changes to FlutterFlow (irreversible!) |
clear_cache |
Clear the local cache for a project |
CLI Tools (requires flutterflow_cli)
| Tool | Description |
|---|---|
check_cli |
Check if the FlutterFlow CLI is installed |
export_code |
Export/download Flutter source code from a project |
deploy_firebase |
Deploy Firebase configuration for a project |
To use CLI tools, install the FlutterFlow CLI:
dart pub global activate flutterflow_cli
Typical Workflow
1. list_projects → find your project ID
2. sync_project → cache all files locally
3. list_pages → see what pages exist
4. get_page_summary → understand a page's structure
5. get_yaml → read the full YAML
6. validate_yaml → check your changes are valid
7. update_yaml → push changes to FlutterFlow
Architecture
src/
index.ts → MCP server entry point (stdio transport)
api/
flutterflow.ts → FlutterFlow REST API client
tools/
projects.ts → Project management tools
pages.ts → Page/component exploration tools
config.ts → Theme, settings, data model tools
yaml-ops.ts → YAML read/validate/update tools
cli.ts → FlutterFlow CLI wrapper tools
utils/
cache.ts → Local file-based caching layer
FlutterFlow API
This server uses the FlutterFlow Project API:
- Base URL:
https://api.flutterflow.io/v2 - Auth: Bearer token
- Endpoints:
listProjects,listPartitionedFileNames,projectYamls,validateProjectYaml,updateProjectByYaml
Safety Notes
update_yamlmodifies your live FlutterFlow project and cannot be undone- Always run
validate_yamlbeforeupdate_yaml - Start with read-only tools (
list_*,get_*,sync_*) to get familiar - Use a test project before working on production projects
- Your API token is stored locally in
~/.claude.json— never commit this file
Requirements
- Node.js 18+
- FlutterFlow account with API access (paid plan)
- Claude Code (or any MCP-compatible AI agent)
- Optional: Dart SDK +
flutterflow_clifor code export/Firebase deploy
License
MIT
Built with Claude Code by @erniecode
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Neon Database
MCP server for interacting with Neon Management API and databases
E2B
Using MCP to run code via e2b.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.