mcpField
U
Unleash MCP Server

Unleash MCP Server

ローカル
github.com/cuongtl1992開発ツール1081 週間前に更新

Unleash MCP Server について

Unleash MCP Serverは、LLMアプリケーションをUnleashのフィーチャーフラグシステムに接続します。MCPクライアントからフラグやプロジェクトを確認し、フラグを作成・更新できます。

主な機能

  1. 01フィーチャーフラグの状態確認
  2. 02フラグ情報の提供
  3. 03フィーチャーフラグの作成
  4. 04フィーチャーフラグの更新
  5. 05プロジェクト一覧の取得

活用シーン

  1. 01LLMアプリケーションからフラグを確認
  2. 02LLMにフラグの詳細を提示
  3. 03フラグの作成や更新
  4. 04Unleashのプロジェクトを確認

MCP 対応

MCPクライアントとUnleash APIをつなぐMCPサーバーです。フラグの状態確認や情報取得、作成・更新、プロジェクト一覧の取得を提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"unleash": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/inspector"
]
}
}
}
起動コマンドnpx -y @modelcontextprotocol/inspector

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@modelcontextprotocol/inspector

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Unleash MCP サーバー

Unleash Feature Toggle システムと連携する Model Context Protocol(MCP)サーバーの実装です。

README の画像

概要

このプロジェクトは、Model Context Protocol(MCP)を使用して、LLM アプリケーションと Unleash のフィーチャーフラグシステムをつなぐブリッジを提供します。AI アプリケーションで次のことが可能になります。

  1. Unleash のフィーチャーフラグのステータスを確認する
  2. LLM にフィーチャーフラグの情報を公開する
  3. フィーチャーフラグを作成する
  4. フィーチャーフラグを更新する
  5. すべてのプロジェクトを一覧表示する

目次

要件

  • Node.js(v18 以降)
  • TypeScript(v5.0 以降)
  • Unleash サーバーインスタンスへのアクセス

インストール

# Install dependencies
npm i

アーキテクチャ

Unleash MCP サーバーは、LLM アプリケーションと Unleash のフィーチャーフラグシステムをつなぐブリッジとして機能します。

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

開発

プロジェクト構成
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
コーディング規約
  • 命名規則:

    • ファイル:kebab-case.ts を使用します(例:feature-flag.ts)
    • クラス:PascalCase を使用します(例:UnleashClient)
    • 関数/メソッド:camelCase を使用します(例:getFlagStatus)
    • インターフェース/型:PascalCase を使用します(例:FeatureFlagConfig)
  • インポート:

    • ローカルファイルをインポートする際は、必ず .js 拡張子を付けます
    • インポートの順序は、Node.js の組み込みモジュール → 外部依存関係 → ローカルインポートに従います
    • デフォルトエクスポートより名前付きエクスポートを使用します
  • ドキュメント:

    • 公開関数、クラス、インターフェースには JSDoc コメントを使用します
    • 複雑なロジックにはインラインコメントで説明を記述します
ビルド
# Compile TypeScript
npm run build

# Run the server
npm start
テスト
# Run tests
npm test
検証
# MCP stdio inspect
npm run build
npx @modelcontextprotocol/inspector node dist/index.js

# MCP sse inspect
npm start
npx @modelcontextprotocol/inspector

使用方法

Claude または Cursor の設定:

{
  "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
      }
    }
  }
}

コントリビューション

コントリビューションを歓迎します!お気軽にプルリクエストを送信してください。

プロジェクトを応援する

このプロジェクトがお役に立ちましたら、コーヒーをごちそうしていただけるとうれしいです!

コーヒーをごちそうするための QR コード

上の QR コードをスキャンするか、こちらをクリックして、このプロジェクトの開発をご支援ください。

ライセンス

このプロジェクトは MIT ライセンスの下でライセンスされています。詳細については LICENSE ファイルをご覧ください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。