|
1 | | -# flipper-mcp |
2 | | -WIP |
| 1 | +# Flipper Cloud MCP Server |
| 2 | + |
| 3 | +A [Model Context Protocol](https://modelcontextprotocol.io) server for [Flipper Cloud](https://www.flippercloud.io) feature flags. Lets AI assistants like Claude read and manage your feature flags. |
| 4 | + |
| 5 | +## Setup |
| 6 | + |
| 7 | +### 1. Get your token |
| 8 | + |
| 9 | +Go to your environment in [Flipper Cloud](https://www.flippercloud.io), then **Settings > Credentials** to create a token. |
| 10 | + |
| 11 | +- **Read-only tokens** can list features, view details, and check telemetry |
| 12 | +- **Read-write tokens** can also enable/disable features, manage actors, groups, and expressions |
| 13 | + |
| 14 | +### 2. Connect to your AI tool |
| 15 | + |
| 16 | +#### Claude Code |
| 17 | + |
| 18 | +```bash |
| 19 | +claude mcp add flipper-cloud -e FLIPPER_CLOUD_TOKEN=<your-token> -- npx -y @flippercloud/mcp |
| 20 | +``` |
| 21 | + |
| 22 | +## Available Tools |
| 23 | + |
| 24 | +### Read |
| 25 | + |
| 26 | +| Tool | Description | |
| 27 | +|------|-------------| |
| 28 | +| `list_features` | List all feature flags | |
| 29 | +| `get_feature` | Get details for a specific feature | |
| 30 | +| `get_audits` | View audit log of recent changes | |
| 31 | +| `get_telemetry_summary` | Telemetry overview across features | |
| 32 | +| `get_feature_telemetry` | Detailed telemetry for a single feature | |
| 33 | + |
| 34 | +### Write (require read-write token) |
| 35 | + |
| 36 | +| Tool | Description | |
| 37 | +|------|-------------| |
| 38 | +| `create_feature` | Create a new feature flag | |
| 39 | +| `delete_feature` | Permanently delete a feature flag | |
| 40 | +| `enable_feature` / `disable_feature` | Toggle a feature globally | |
| 41 | +| `enable_actor` / `disable_actor` | Enable/disable for a specific actor | |
| 42 | +| `enable_group` / `disable_group` | Enable/disable for a group | |
| 43 | +| `enable_percentage_of_actors` / `disable_percentage_of_actors` | Percentage rollouts | |
| 44 | +| `enable_expression` / `disable_expression` | Expression-based targeting | |
| 45 | + |
| 46 | +## Examples |
| 47 | + |
| 48 | +Ask Claude things like: |
| 49 | + |
| 50 | +- "List all my feature flags" |
| 51 | +- "Enable the new_checkout feature for user 123" |
| 52 | +- "Roll out dark_mode to 25% of users" |
| 53 | +- "Enable premium_features for users where plan equals 'pro'" |
| 54 | +- "What's the telemetry for search over the last week?" |
| 55 | +- "Show me recent audit history for dark_mode" |
| 56 | + |
| 57 | +## Development |
| 58 | + |
| 59 | +```bash |
| 60 | +npm install |
| 61 | +npm run dev # run with tsx |
| 62 | +npm run build # compile typescript |
| 63 | +npm start # run compiled |
| 64 | +``` |
| 65 | + |
| 66 | +## License |
| 67 | + |
| 68 | +MIT |
0 commit comments