Bucketeer MCP server

Integrates with Bucketeer's open-source feature flag platform to provide complete CRUD operations for managing feature flags, including listing with filtering, creating with targeting rules, updating with audit trails, and archiving flags across multiple environments.
Back to servers
Setup instructions
Provider
Bucketeer
Release date
Jul 17, 2025
Stats
1 star

Bucketeer MCP Server is a Model Context Protocol server for managing feature flags in Bucketeer, an open-source feature flag management platform. It provides tools for basic CRUD operations on feature flags, allowing you to list, create, get, update, and archive feature flags.

Prerequisites

Before installing Bucketeer MCP Server, ensure you have:

  • 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:

npx @bucketeer/mcp

Local Installation

  1. Clone the repository:
git clone https://github.com/bucketeer-io/bucketeer-mcp.git
cd bucketeer-mcp
  1. Install dependencies:
npm install
  1. Build the project:
npm run build

Usage

Running the Server

Using npx (No Installation Required)

npx @bucketeer/mcp

Using Local Installation

Start the MCP server:

npm start

For development with auto-reload:

npm run dev

MCP Client Configuration

To use this server with an MCP client, add it to your MCP client configuration.

Using npx (Recommended)

{
  "mcpServers": {
    "bucketeer": {
      "command": "npx",
      "args": ["@bucketeer/mcp"],
      "env": {
        "BUCKETEER_HOST": "api.bucketeer.io",
        "BUCKETEER_API_KEY": "your-api-key",
        "BUCKETEER_ENVIRONMENT_ID": "your-environment-id"
      }
    }
  }
}

Using Local Installation

{
  "mcpServers": {
    "bucketeer": {
      "command": "node",
      "args": ["/path/to/bucketeer-mcp/dist/index.js"],
      "env": {
        "BUCKETEER_HOST": "api.bucketeer.io",
        "BUCKETEER_API_KEY": "your-api-key",
        "BUCKETEER_ENVIRONMENT_ID": "your-environment-id"
      }
    }
  }
}

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 page
  • tags (optional) - Filter by tags
  • orderBy (optional) - Field to order by (CREATED_AT, UPDATED_AT, NAME)
  • orderDirection (optional) - Order direction (ASC, DESC)
  • searchKeyword (optional) - Search keyword for feature name or ID
  • maintainer (optional) - Filter by maintainer email
  • archived (optional) - Filter by archived status

createFeatureFlag

Create a new feature flag.

Parameters:

  • id (required) - Unique identifier (alphanumeric, hyphens, underscores)
  • name (required) - Human-readable name
  • description (optional) - Description of the feature flag
  • environmentId (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 served
    • name (required) - Name of the variation
    • description (optional) - Description of the variation
  • tags (optional) - Tags for the feature flag
  • defaultOnVariationIndex (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 retrieve
  • environmentId (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 update
  • comment (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 flag
  • description (optional) - New description
  • tags (optional) - New tags
  • enabled (optional) - Enable or disable the feature flag
  • archived (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 archive
  • environmentId (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.

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "bucketeer" '{"command":"node","args":["/path/to/bucketeer-mcp/dist/index.js"],"env":{"BUCKETEER_HOST":"api.bucketeer.io","BUCKETEER_API_KEY":"your-api-key","BUCKETEER_ENVIRONMENT_ID":"your-environment-id"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "bucketeer": {
            "command": "node",
            "args": [
                "/path/to/bucketeer-mcp/dist/index.js"
            ],
            "env": {
                "BUCKETEER_HOST": "api.bucketeer.io",
                "BUCKETEER_API_KEY": "your-api-key",
                "BUCKETEER_ENVIRONMENT_ID": "your-environment-id"
            }
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "bucketeer": {
            "command": "node",
            "args": [
                "/path/to/bucketeer-mcp/dist/index.js"
            ],
            "env": {
                "BUCKETEER_HOST": "api.bucketeer.io",
                "BUCKETEER_API_KEY": "your-api-key",
                "BUCKETEER_ENVIRONMENT_ID": "your-environment-id"
            }
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later