Crewhu について
顧客フィードバック、従業員エンゲージメント、ゲーミフィケーションを扱うCrewhu利用組織向けのMCPサーバーです。AIアシスタントからアンケート、バッジ、賞品、ユーザーの活動データを扱えます。
主な機能
- 01顧客満足度アンケートの管理
- 02従業員バッジの管理と付与
- 03賞品カタログと交換の管理
- 04ユーザーエンゲージメントデータへのアクセス
活用シーン
- 01顧客アンケートの作成や管理
- 02従業員表彰としてバッジを付与
- 03賞品カタログと交換状況の確認
MCP 対応
MCP対応AIクライアントをCrewhu環境に接続し、アンケート、バッジ、賞品、ユーザーエンゲージメント用のツールを公開します。stdioとHTTPのトランスポートに対応します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm -e CREWHU_API_TOKEN -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/crewhu-mcp:v2.0.5CREWHU_API_TOKENシークレットCrewhu API token (Settings → Integrations → API)MCP_TRANSPORTTransport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting.AUTH_MODEシークレットCredential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway.LOG_LEVELLog verbosity: debug, info, warn, errorローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ghcr.io/wyre-ai/crewhu-mcp:v2.0.5stdioツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Crewhu MCP サーバー
Crewhu 向けの Model Context Protocol(MCP)サーバーです。Crewhu は、顧客フィードバック、従業員エンゲージメント、ゲーミフィケーションのプラットフォームです。AI アシスタントがアンケート、バッジ、賞品、ユーザーエンゲージメントデータを管理できるようにします。
これは、Claude(または MCP 対応の AI)を Crewhu 環境に接続する Model Context Protocol(MCP) サーバーです。
MSP Claude Plugins エコシステムの一部です — MSP スタック向けの AI 統合機能を集めた、拡大中のスイートです。MSP のために、MSP が構築しました。
インストール
npm install @wyre-ai/crewhu-mcp
設定
.env.example をコピーし、以下の変数を設定してください。このファイルの CONDUIT_S2S_SECRET は空のままにしてください。
| 変数 | 必須 | 説明 |
|---|---|---|
CREWHU_API_TOKEN | stdio および AUTH_MODE=env の場合 | Crewhu API トークンです。ゲートウェイモードでは読み込まれません。 |
MCP_TRANSPORT | いいえ | stdio(デフォルト)または http |
AUTH_MODE | いいえ | gateway(Docker イメージと Compose のデフォルト)または env。ゲートウェイモードでは、各 /mcp リクエストに X-Crewhu-Api-Token が必要で、CREWHU_API_TOKEN へのフォールバックは行いません。env は、S2S 認証に成功した場合にのみこの変数を使用します。 |
CONDUIT_S2S_SECRET | HTTP では必須 | サービス間 HMAC シークレットです。空の場合や、既知のプレースホルダー(changeme、replace-with-a-real-secret など)の場合、HTTP サーバーはエラーをログに記録し、ゼロ以外の終了コードで終了します。Compose はこの値がないと起動しません。openssl rand -hex 32 で生成してください。実際の値をコミットしないでください。この値がログに記録されることはありません。 |
MCP_ALLOW_INSECURE_DEV | いいえ | CONDUIT_S2S_SECRET なしで HTTP を起動するのは、ローカル開発時に限り、値を正確に 1 に設定してください。プロセスは警告をログに記録し、X-Gateway-S2S の検証を行いません。MCP_HTTP_HOST により広いアドレスが指定されていても、リスナーは 127.0.0.1 に固定されます。プレースホルダーのシークレットは引き続き拒否されます。 |
MCP_HTTP_HOST | いいえ | MCP_TRANSPORT=http の場合のバインドアドレスです。デフォルトは 127.0.0.1 です。CONDUIT_S2S_SECRET が設定されている場合に適用されます。コンテナーイメージでは 0.0.0.0 が設定されます。 |
MCP_HTTP_PORT | いいえ | HTTP ポートです。デフォルトは 8080 です。 |
/health は認証なしでアクセスでき、X-Gateway-S2S は必要ありません。stdio トランスポートでは CONDUIT_S2S_SECRET を使用しません。
HTTP 認証
MCP_TRANSPORT=http で実際の CONDUIT_S2S_SECRET が設定されている場合、すべての /mcp リクエストに X-Gateway-S2S を含める必要があります。ヘッダーがない場合、または無効な場合は、ベンダー認証情報が読み込まれる前に 401 が返されます。
このヘッダーは HMAC 証明です。
X-Gateway-S2S: t=<unix seconds>,v1=<hex hmac-sha256>
v1 は、CONDUIT_S2S_SECRET をキーとして、ASCII 文字列 t=<unix seconds>(同じ t= プレフィックスと値)の HMAC-SHA256 を 16 進エンコードしたものです。タイムスタンプはサーバーの時計から 300 秒以内である必要があります。
t=$(date +%s)
sig=$(printf 't=%s' "$t" | openssl dgst -sha256 -hmac "$CONDUIT_S2S_SECRET" -hex | awk '{print $NF}')
curl -sS "http://127.0.0.1:8080/mcp" \
-H "X-Gateway-S2S: t=${t},v1=${sig}" \
-H "X-Crewhu-Api-Token: $CREWHU_API_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
AUTH_MODE=gateway では、/mcp に X-Crewhu-Api-Token も必要です。ヘッダーがない場合、または空白の場合は 401 が返され、CREWHU_API_TOKEN へのフォールバックは行いません。
使用方法
Claude Desktop で実行する
Claude Desktop の claude_desktop_config.json に追加します。
{
"mcpServers": {
"crewhu-mcp": {
"command": "npx",
"args": ["@wyre-ai/crewhu-mcp"],
"env": {
"CREWHU_API_TOKEN": "your-crewhu-api-token"
}
}
}
}
Claude Code(CLI)で実行する
claude mcp add crewhu-mcp \
-e CREWHU_API_TOKEN=your-value \
-- npx -y @wyre-ai/crewhu-mcp
Docker
コンテナー内ではイメージが 0.0.0.0(MCP_HTTP_HOST)でリッスンし、デフォルトで AUTH_MODE=gateway を使用します。ポートはループバックに公開し、実際の S2S シークレットを渡してください。ゲートウェイモードでは、Crewhu トークンは各リクエストの X-Crewhu-Api-Token として渡され、環境変数からは読み込まれません。CONDUIT_S2S_SECRET が空の場合、または既知のプレースホルダーの場合、起動時に終了します。
docker build -t crewhu-mcp .
docker run \
-e CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" \
-p 127.0.0.1:8080:8080 \
crewhu-mcp
CONDUIT_S2S_SECRET が設定されていない場合、Compose は起動を拒否します。また、AUTH_MODE のデフォルトを gateway にし、127.0.0.1:8080:8080 を公開し、CREWHU_API_TOKEN は設定しません。
CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" docker compose up
シングルテナント HTTP(AUTH_MODE=env)でも S2S シークレットが必要です。その後、CREWHU_API_TOKEN を使用します。
docker run \
-e CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" \
-e AUTH_MODE=env \
-e CREWHU_API_TOKEN=your-value \
-p 127.0.0.1:8080:8080 \
crewhu-mcp
シークレットなしのローカル HTTP は開発専用です。127.0.0.1 のみにバインドし、警告をログに記録します。ループバック以外の MCP_HTTP_HOST は無視されます。
MCP_TRANSPORT=http MCP_ALLOW_INSECURE_DEV=1 npm start
利用可能なドメイン
バッジ
従業員のバッジを管理し、授与します
賞品
賞品カタログと交換を管理します
アンケート
顧客満足度アンケートを作成、管理します
ユーザー
ユーザー管理とエンゲージメントデータ
開発
# Clone the repository
git clone https://github.com/WYRE-AI/crewhu-mcp.git
cd crewhu-mcp
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
コントリビューション
コントリビューションを歓迎します!CONTRIBUTING.md が存在する場合はそちらをご覧いただくか、変更について話し合うためにイシューを作成してください。
ライセンス
Apache License, Version 2.0 の下でライセンスされています。詳細は LICENSE をご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。