AM

A Model Context Protocol (MCP) server implementation that integrates with Unleash Feature Toggle system.

Created 3 months ago

A Model Context Protocol (MCP) server implementation that integrates with Unleash Feature Toggle system.

development documentation public

What is A Model Context Protocol (MCP) server implementation that integrates with Unleash Feature Toggle system.?

This project provides a bridge between LLM applications and Unleash feature flag system using the Model Context Protocol (MCP). It allows AI applications to check feature flag status from Unleash, expose feature flag information to LLMs, create feature flags, update feature flags, and list all projects.

Documentation

Unleash MCP Server

A Model Context Protocol (MCP) server implementation that integrates with Unleash Feature Toggle system.

Overview

This project provides a bridge between LLM applications and Unleash feature flag system using the Model Context Protocol (MCP). It allows AI applications to:

  1. Check feature flag status from Unleash
  2. Expose feature flag information to LLMs
  3. Create feature flag
  4. Update feature flag
  5. List all projects

Table of Contents

Requirements

  • Node.js (v18 or higher)
  • TypeScript (v5.0 or higher)
  • Access to an Unleash server instance

Installation

npm i

Architecture

The Unleash MCP Server acts as a bridge between LLM applications and the Unleash feature flag system:

+----------------+      +-------------------+      +----------------+
|                |      |                   |      |                |
|  LLM App       | <--> |  Unleash MCP      | <--> |  Unleash API   |
|  (MCP Client)  |      |  Server           |      |  Server        |
|                |      |                   |      |                |
+----------------+      +-------------------+      +----------------+

Development# Project Structure

unleash-mcp-server/
├── src/
│   ├── index.ts              # Main entry point
│   ├── server.ts             # Server implementation
│   ├── config.ts             # Configuration handling
│   ├── transport/            # MCP transport implementations
│   │   ├── http.ts           # HTTP/SSE transport
│   │   └── stdio.ts          # STDIO transport
│   ├── unleash/              # Unleash API client implementations
│   │   ├── unleash-client.ts # Main Unleash client
│   │   ├── get-feature-flag.ts
│   │   └── get-all-projects.ts
│   ├── resources/            # MCP resource implementations
│   │   ├── flags.ts          # Feature flag resources
│   │   └── projects.ts       # Project resources
│   ├── tools/                # MCP tool implementations
│   │   ├── get-flag.ts       # Get feature flag tool
│   │   └── get-projects.ts   # Get projects tool
│   └── prompts/              # MCP prompt implementations
│       ├── flag-check.ts     # Check single flag
│       └── batch-flag-check.ts # Check multiple flags
├── tests/                    # Tests
└── package.json              # Project configuration

Coding Standards

  • Naming Conventions:
  • Files: Use kebab-case.ts (e.g., feature-flag.ts)
  • Classes: Use PascalCase (e.g., UnleashClient)
  • Functions/Methods: Use camelCase (e.g., getFlagStatus)
  • Interfaces/Types: Use PascalCase (e.g., FeatureFlagConfig)
  • Imports:
  • Always include .js extension when importing local files
  • Follow import ordering: Node.js built-ins → External dependencies → Local imports
  • Use named exports over default exports
  • Documentation:
  • Use JSDoc comments for public functions, classes, and interfaces
  • Document complex logic with inline comments

Building

npm run build

# Run the server
npm start

Testing

npm test

Inspecting

npm run build
npx @modelcontextprotocol/inspector node dist/index.js

# MCP sse inspect
npm start
npx @modelcontextprotocol/inspector

How to use

For Claude or Cursor config:

{
  "mcpServers": {
    "unleash": {
      "command": "npx",
      "args": [
        "-y",
        "unleash-mcp"
      ],
      "env": {
        "UNLEASH_URL": "YOUR_UNLEASH_END_POINT",
        "UNLEASH_API_TOKEN": "YOUR_UNLEASH_API_TOKEN",
        "MCP_TRANSPORT": "stdio",
        "MCP_HTTP_PORT": 3001
      }
    }
  }
}

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Support the Project

If you find this project helpful, consider buying me a coffee!

Scan the QR code above or click here to support the development of this project.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Server Config

{
  "mcpServers": {
    "a-model-context-protocol-(mcp)-server-implementation-that-integrates-with-unleash-feature-toggle-system.-server": {
      "command": "npx",
      "args": [
        "a-model-context-protocol-(mcp)-server-implementation-that-integrates-with-unleash-feature-toggle-system."
      ]
    }
  }
}

Links & Status

Repository: github.com
Hosted: No
Global: No
Official: No

Project Info

Hosted Featured
Created At: Aug 08, 2025
Updated At: Aug 08, 2025
Author: cuongtl1992
Category: MCP Server
License: MIT License
Tags:
development documentation public