mcpField
S
Sherweb

Sherweb

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

Sherweb について

Sherweb は、MSP や Sherweb パートナー向けに、顧客、サブスクリプション、請求、顧客別カタログを AI クライアントから扱える MCP サーバーです。変更は非同期で送信し、状態を追跡できます。

主な機能

  1. 01顧客別の商品カタログの閲覧
  2. 02顧客一覧と売掛金の確認
  3. 03請求期間ごとの支払料金の確認
  4. 04サブスクリプションの表示と数量変更
  5. 05非同期変更の結果追跡
  6. 06詳細をインタラクティブカードで表示

活用シーン

  1. 01顧客の契約内容と更新日の確認
  2. 02請求期間ごとの料金の確認
  3. 03特定顧客が購入できる商品の検索
  4. 04契約数量の変更送信と追跡

MCP 対応

顧客、カタログ、請求、サブスクリプションを操作するツールを MCP クライアントに提供します。サブスクリプション詳細は MCP Apps 対応ホストで読み取り専用のカードとして表示できます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"wyre-technology-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-technology/sherweb-mcp:v1.4.3"
],
"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-technology/sherweb-mcp:v1.4.3
設定が必要な環境変数
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-technology/sherweb-mcp:v1.4.3

ツール

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

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

詳細

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 つのサーバーを複数のクライアントで再利用できます。