mcpField
S
Sherweb

Sherweb

ローカル
github.comビジネス・マーケティング02 週間前に更新

Sherweb について

Sherweb MCP サーバーは、Sherweb のクラウドマーケットプレイスとパートナーポータルを AI アシスタントや MSP チームに接続します。顧客、サブスクリプション、カタログ、請求に対応し、非同期の数量変更とインタラクティブなカードも提供します。

主な機能

  1. 01顧客の検索と請求情報の取得
  2. 02顧客別製品カタログの参照
  3. 03サブスクリプション照会と数量変更
  4. 04請求料金の照会
  5. 05インタラクティブな読み取り専用カード

活用シーン

  1. 01顧客のサブスクリプションと売掛料金の確認
  2. 02顧客が購入できる製品の確認
  3. 03数量変更の申請と結果の追跡
  4. 04MCP Apps ホストでのサブスクリプション詳細表示

MCP 対応

stdio または HTTP で Sherweb に接続し、互換クライアントに顧客、サブスクリプション、カタログ、請求のツールを提供します。HTTP ゲートウェイモードではリクエストごとに Sherweb 認証情報を受け取ります。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"wyre-ai-sherweb": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"SHERWEB_CLIENT_ID",
"-e",
"SHERWEB_CLIENT_SECRET",
"-e",
"SHERWEB_SUBSCRIPTION_KEY",
"-e",
"MCP_TRANSPORT",
"-e",
"AUTH_MODE",
"-e",
"LOG_LEVEL",
"ghcr.io/wyre-ai/sherweb-mcp:v2.0.2"
],
"env": {
"SHERWEB_CLIENT_ID": "<SHERWEB_CLIENT_ID>",
"SHERWEB_CLIENT_SECRET": "<SHERWEB_CLIENT_SECRET>",
"SHERWEB_SUBSCRIPTION_KEY": "<SHERWEB_SUBSCRIPTION_KEY>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"AUTH_MODE": "<AUTH_MODE>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
起動コマンドdocker run -i --rm -e SHERWEB_CLIENT_ID -e SHERWEB_CLIENT_SECRET -e SHERWEB_SUBSCRIPTION_KEY -e MCP_TRANSPORT -e AUTH_MODE -e LOG_LEVEL ghcr.io/wyre-ai/sherweb-mcp:v2.0.2
設定が必要な環境変数
SHERWEB_CLIENT_IDSherweb OAuth client ID
SHERWEB_CLIENT_SECRETシークレットSherweb OAuth client secret
SHERWEB_SUBSCRIPTION_KEYシークレットSherweb API subscription key
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 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/wyre-ai/sherweb-mcp:v2.0.2

ツール

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

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

詳細

Sherweb MCP サーバー

License Node.js

Sherweb のクラウドマーケットプレイスとパートナーポータル向けの Model Context Protocol(MCP)サーバーです。AI アシスタントを使用して、顧客のサブスクリプション管理、製品カタログの閲覧、請求処理を行えます。

この Model Context Protocol(MCP) サーバーは、Claude(または MCP 互換の AI)を Sherweb 環境に接続します。

MSP Claude Plugins エコシステムの一部です — MSP スタック向けの AI インテグレーションを拡充するスイートです。MSP が MSP のために構築しています。

インストール

npm install @wyre-ai/sherweb-mcp

設定

.env.example をコピーして、以下の変数を設定します。

変数必須説明
SHERWEB_CLIENT_IDstdio および AUTH_MODE=env の場合Sherweb API クライアント ID
SHERWEB_CLIENT_SECRETstdio および AUTH_MODE=env の場合Sherweb API クライアントシークレット
SHERWEB_SUBSCRIPTION_KEYstdio および AUTH_MODE=env の場合Sherweb API サブスクリプションキー
MCP_TRANSPORTいいえstdio(デフォルト)または http
AUTH_MODEいいえgateway(Docker イメージおよび Compose のデフォルト)または env。gateway モードでは、各 /mcp リクエストに X-Sherweb-Client-ID、X-Sherweb-Client-Secret、X-Sherweb-Subscription-Key が必要です。また、SHERWEB_* へのフォールバックは行いません。env は、S2S 認証が成功した場合にのみこれらの変数を使用します。
CONDUIT_S2S_SECRETHTTP では必須サービス間シークレット。この値が空、または既知のプレースホルダー(changeme、your-s2s-secret、placeholder、secret などのコピーされたサンプル値)の場合、HTTP サーバーはエラーをログに記録し、ゼロ以外の終了コードで終了します。これが設定されていないと Compose は起動しません。実際の値をコミットしないでください。openssl rand -hex 32 で生成してください。
MCP_ALLOW_INSECURE_DEVいいえCONDUIT_S2S_SECRET なしで HTTP を起動する場合に限り、ローカル開発用に 1 を設定します。プロセスは警告をログに記録し、X-Gateway-S2S の検証を行わず、127.0.0.1 のみで待ち受けます。ループバック以外の MCP_HTTP_HOST(0.0.0.0 を含む)は無視され、その上書きがログに記録されます。プレースホルダーのシークレットは引き続き拒否されます。
MCP_HTTP_HOSTいいえMCP_TRANSPORT=http かつ CONDUIT_S2S_SECRET が設定されている場合のバインドアドレス。デフォルトは 127.0.0.1 です。コンテナーイメージでは 0.0.0.0 が設定されています。有効なシークレットがない場合、リスナーは 127.0.0.1 になります。
MCP_HTTP_PORTいいえHTTP ポート。デフォルトは 8080 です。

/health と /healthz は認証されず、認証情報を読み取りません。stdio トランスポートでは CONDUIT_S2S_SECRET を使用しません。

HTTP 認証

MCP_TRANSPORT=http で CONDUIT_S2S_SECRET が設定されている場合、すべての /mcp リクエストに X-Gateway-S2S を含める必要があります。ヘッダーがない場合、または無効な場合は、ベンダーの認証情報が読み取られる前に 401 が返されます。シークレットがログに書き込まれることはありません。

ヘッダーの値は t=<unix seconds>,v1=<hex hmac-sha256> です。v1 は、CONDUIT_S2S_SECRET をキーとして、正確な ASCII 文字列 t=<unix seconds> に対する HMAC-SHA256 を計算し、16 進数でエンコードしたものです(小文字の 16 進数 64 文字)。タイムスタンプはサーバー時刻との差が 300 秒以内である必要があります。

t=1710000000,v1=<hmac-sha256("t=1710000000", CONDUIT_S2S_SECRET) as hex>

AUTH_MODE=gateway では、/mcp に X-Sherweb-Client-ID、X-Sherweb-Client-Secret、X-Sherweb-Subscription-Key も必要です。このリクエストでは、これらのヘッダーのみが認証情報の取得元となります。いずれかが欠けているリクエストには 401 が返され、プロセス環境内の SHERWEB_* へのフォールバックは行われません。

使用方法

Claude Desktop で実行する

Claude Desktop の claude_desktop_config.json に追加します。

{
  "mcpServers": {
    "sherweb-mcp": {
      "command": "npx",
      "args": ["@wyre-ai/sherweb-mcp"],
      "env": {
        "SHERWEB_CLIENT_ID": "your-sherweb-client-id",
        "SHERWEB_CLIENT_SECRET": "your-sherweb-client-secret",
        "SHERWEB_SUBSCRIPTION_KEY": "your-sherweb-subscription-key"
      }
    }
  }
}
Claude Code(CLI)で実行する
claude mcp add sherweb-mcp \
  -e SHERWEB_CLIENT_ID=your-value \
  -e SHERWEB_CLIENT_SECRET=your-value \
  -e SHERWEB_SUBSCRIPTION_KEY=your-value \
  -- npx -y @wyre-ai/sherweb-mcp
Docker

イメージはコンテナー内で 0.0.0.0(MCP_HTTP_HOST)をリッスンし、デフォルトで AUTH_MODE=gateway に設定されています。ポートをループバックで公開し、S2S シークレットを渡してください。ゲートウェイモードでは、Sherweb の認証情報はリクエストごとにヘッダーで渡され、環境変数から読み込まれることはありません。

docker build -t sherweb-mcp .
docker run \
  -e CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" \
  -p 127.0.0.1:8080:8080 \
  sherweb-mcp

CONDUIT_S2S_SECRET が未設定の場合、Compose は起動を拒否します。また、AUTH_MODE=gateway を設定し、127.0.0.1:8080:8080 を公開します。SHERWEB_CLIENT_ID、SHERWEB_CLIENT_SECRET、SHERWEB_SUBSCRIPTION_KEY はコンテナーに渡しません。

CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" docker compose up

シングルテナント HTTP(AUTH_MODE=env)でも S2S シークレットが必要で、その後 SHERWEB_* を使用します。

docker run \
  -e CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" \
  -e AUTH_MODE=env \
  -e SHERWEB_CLIENT_ID=your-value \
  -e SHERWEB_CLIENT_SECRET=your-value \
  -e SHERWEB_SUBSCRIPTION_KEY=your-value \
  -p 127.0.0.1:8080:8080 \
  sherweb-mcp

シークレットなしのローカル HTTP は開発専用です。127.0.0.1 のみでバインドし(より広い範囲を指定した MCP_HTTP_HOST は無視されます)、警告をログに記録します。

MCP_TRANSPORT=http MCP_ALLOW_INSECURE_DEV=1 npm start

利用可能なドメイン

請求

請求期間中に販売代理店が支払う料金と、個別の料金の詳細です。Sherweb は期間ごとのコレクションとしてのみ料金を返すため、どちらのツールも期間を指定する任意の date を受け取ります。

カタログ

指定した顧客に販売できる製品を閲覧します。Sherweb のカタログは顧客ごとに用意されており、全体共通の製品リストはないため、customerId が必須です。

顧客

顧客の一覧表示と検索、および請求期間中に顧客へ請求する売掛料金の確認ができます。

サブスクリプション

顧客のサブスクリプション一覧の表示、個別のサブスクリプションの詳細取得、数量変更の送信ができます。変更は非同期です。送信すると追跡 ID が返され、sherweb_subscriptions_amendment_status で結果を確認できます。

インタラクティブなサブスクリプションカード(MCP Apps)

sherweb_subscriptions_get は、MCP Apps ホスト(Claude Desktop/web)で、製品、顧客、ステータス、数量、請求サイクル、契約期間/更新日、料金を表示するインタラクティブな読み取り専用カードとしてレンダリングされます。他のホストでは、従来どおりプレーンな JSON が返されます。カードはデフォルトではニュートラルなデザインで、window.__BRAND__ の注入、または MCP_BRAND_* 環境変数(MCP_BRAND_NAME、MCP_BRAND_LOGO_URL、MCP_BRAND_PRIMARY_COLOR、MCP_BRAND_ACCENT_COLOR、MCP_BRAND_BG、MCP_BRAND_TEXT)でブランド設定できます。再ビルドは不要です。

開発

# Clone the repository
git clone https://github.com/WYRE-AI/sherweb-mcp.git
cd sherweb-mcp

# Install dependencies
npm install

# Build
npm run build

# Run tests
npm test

# HTTP transport refuses to start until CONDUIT_S2S_SECRET is set
CONDUIT_S2S_SECRET="$CONDUIT_S2S_SECRET" MCP_TRANSPORT=http npm start

# Local HTTP only, without a service-to-service secret (always binds 127.0.0.1)
MCP_ALLOW_INSECURE_DEV=1 MCP_TRANSPORT=http npm start

コントリビューション

コントリビューションを歓迎します。該当する場合は CONTRIBUTING.md をご覧ください。または、変更について相談するために issue を作成してください。

ライセンス

Apache License, Version 2.0 のもとでライセンスされています。詳細は LICENSE をご覧ください。

コメント

MCP は初めてですか?

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

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