mcpField
U
Unleash MCP Server

Unleash MCP Server

Local
github.com/cuongtl1992Developer Tools10Updated 81w ago

About Unleash MCP Server

Unleash MCP Server connects LLM applications to Unleash feature flags. It lets MCP clients inspect flags and projects, and create or update flags.

Key features

  1. 01Check feature flag status
  2. 02Expose flag information
  3. 03Create feature flags
  4. 04Update feature flags
  5. 05List projects

Use cases

  1. 01Check a flag from an LLM application
  2. 02Provide flag details to an LLM
  3. 03Create or update a flag
  4. 04Review available Unleash projects

MCP support

An MCP server that bridges MCP clients to the Unleash API, exposing flag status and information, flag creation and updates, and project listing.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"unleash": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/inspector"
]
}
}
}
Run commandnpx -y @modelcontextprotocol/inspector

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npm@modelcontextprotocol/inspector

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Unleash MCP Server

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

README image

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

# Install dependencies
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
# Compile TypeScript
npm run build

# Run the server
npm start
Testing
# Run tests
npm test
Inspecting
# MCP stdio inspect
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!

Buy Me A Coffee QR Code

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.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.