Bucketeer MCP Server
A Model Context Protocol (MCP) server for managing feature flags in Bucketeer, an open-source feature flag management platform.
Warning
This is a beta version. Breaking changes may be introduced before general release.
Features
This MCP server provides tools for basic CRUD operations on Bucketeer feature flags:
listFeatureFlags
- List all feature flags with filtering and paginationcreateFeatureFlag
- Create a new feature flaggetFeatureFlag
- Get a specific feature flag by IDupdateFeatureFlag
- Update an existing feature flagarchiveFeatureFlag
- Archive a feature flag (make it inactive)
Prerequisites
- Node.js 18 or higher
- A Bucketeer instance with API access
- An API key with appropriate permissions (READ, WRITE, or ADMIN)
Installation
Using npx (Recommended)
The easiest way to use Bucketeer MCP Server is directly with npx
- no installation required:
Local Installation
- Clone this repository
- Install dependencies
- Build the project
Usage
Running the Server
Using npx (No Installation Required)
Using Local Installation
Start the MCP server
For development with auto-reload
MCP Client Configuration
To use this server with an MCP client, add it to your MCP client configuration.
Using npx (Recommended)
Using Local Installation
Available Tools
listFeatureFlags
List all feature flags in the specified environment.
Parameters:
environmentId
(optional) - Environment ID (uses default if not provided)pageSize
(optional) - Number of items per page (1-100, default: 20)cursor
(optional) - Pagination cursor for next pagetags
(optional) - Filter by tagsorderBy
(optional) - Field to order by (CREATED_AT, UPDATED_AT, NAME)orderDirection
(optional) - Order direction (ASC, DESC)searchKeyword
(optional) - Search keyword for feature name or IDmaintainer
(optional) - Filter by maintainer emailarchived
(optional) - Filter by archived status
createFeatureFlag
Create a new feature flag.
Parameters:
id
(required) - Unique identifier (alphanumeric, hyphens, underscores)name
(required) - Human-readable namedescription
(optional) - Description of the feature flagenvironmentId
(optional) - Environment ID (uses default if not provided)variations
(required) - Array of variations (at least 2)value
(required) - The value returned when this variation is servedname
(required) - Name of the variationdescription
(optional) - Description of the variation
tags
(optional) - Tags for the feature flagdefaultOnVariationIndex
(required) - Index of variation when flag is on (0-based)defaultOffVariationIndex
(required) - Index of variation when flag is off (0-based)variationType
(optional) - Type of the variation values: STRING (default), BOOLEAN, NUMBER, or JSON
getFeatureFlag
Get a specific feature flag by ID.
Parameters:
id
(required) - The ID of the feature flag to retrieveenvironmentId
(optional) - Environment ID (uses default if not provided)featureVersion
(optional) - Specific version of the feature to retrieve
updateFeatureFlag
Update an existing feature flag.
Parameters:
id
(required) - The ID of the feature flag to updatecomment
(required) - Comment for the update (required for audit trail)environmentId
(optional) - Environment ID (uses default if not provided)name
(optional) - New name for the feature flagdescription
(optional) - New descriptiontags
(optional) - New tagsenabled
(optional) - Enable or disable the feature flagarchived
(optional) - Archive or unarchive the feature flag
Note:
- This tool requires a comment for audit trail purposes
- It does not support updating variations. To modify variations, you would need to archive the current flag and create a new one.
archiveFeatureFlag
Archive a feature flag (make it inactive). Archived flags will return the default value defined in your code for all users.
Parameters:
id
(required) - The ID of the feature flag to archiveenvironmentId
(optional) - Environment ID (uses default if not provided)comment
(required) - Comment for the archive action (required for audit trail)
Note: This operation archives the flag rather than permanently deleting it. The flag can be unarchived later if needed.
Development
Linting
Run the linter
Building
Build the TypeScript code
Contributing
We would ❤️ for you to contribute to Bucketeer and help improve it! Anyone can use and enjoy it!
Please follow our contribution guide here.
License
Apache License 2.0, see LICENSE.
This server cannot be installed
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
A Model Context Protocol server that enables management of feature flags in Bucketeer through CRUD operations including listing, creating, retrieving, updating, and archiving feature flags.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol server that provides database interaction capabilities through SQLite, enabling users to run SQL queries, analyze business data, and automatically generate business insight memos.Last updated -617TypeScriptMIT License
- AsecurityAlicenseAqualityA Model Context Protocol server that interfaces with Biomart databases, allowing models to discover biological datasets, explore attributes/filters, retrieve biological data, and translate between different biological identifiers.Last updated -85PythonMIT License
- -securityFlicense-qualityA Model Context Protocol server that enables SQL operations (SELECT, INSERT, UPDATE, DELETE) and table management through a standardized interface with SQLite databases.Last updated -41JavaScript
- AsecurityFlicenseAqualityA Model Context Protocol server implementation that provides endpoints for wallet-based authentication, cluster management, and name registration services.Last updated -TypeScript