BailingHub for Business Operations について
BailingHub for Business Operationsは、MCP対応エージェントが設定済みのBailingHubルートを通じて業務システムを照会・操作するためのアダプターです。認可境界、人による承認、ジョブ復旧、監査記録をモデルの外で管理し、最終的な認可は業務システムが行います。
主な機能
- 01ガバナンス付き業務タスクの送信
- 02ジョブ状態の確認と待機
- 03Client TokenとAgent Sessionに対応
- 04設定ルートでの承認処理
- 05実行記録と監査証跡の保持
活用シーン
- 01在庫確認と補充案の作成
- 02顧客または従業員情報の更新
- 03承認待ちの返金申請
MCP 対応
MCPサーバーは、ガバナンス付きタスクの送信、ジョブ照会、時間制限付き待機のツールを公開します。Agent Sessionモードでは、ターン開始、機能検索、呼び出し復旧、実行完了のツールも提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y bailinghub-mcp-serverBAILINGHUB_BASE_URLAbsolute URL of the self-hosted BailingHub deployment.BAILINGHUB_CLIENT_TOKENシークレットDedicated BailingHub Client Token restricted to the configured route.BAILINGHUB_ROUTEOne allowlisted BailingHub route fixed by the operator for this server process.BAILINGHUB_ALLOW_INSECURE_HTTPOptional explicit override for operator-controlled private HTTP networks.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
3掲載時のツール一覧 · 1 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| input | string | はい | 信頼できない業務タスクのテキストです。トークン、実行主体の認証情報、または秘密情報は決して含めないでください。 |
| request_id | string | はい | クライアント単位で安定した冪等キーです。同じリクエストを再試行する場合は、変更せずに再利用してください。 |
詳細
BailingHub MCP サーバー
0.8.0:より大きなツール入力と必要に応じたナレッジ
小さなアダプターの上限を気にせずページ全体のコンテンツを保存し、関連する業務ガイダンスだけを読み込み、サービス側の上限とは独立してモデルのデフォルト設定を選択できます。Core 0.10.0/SDK 0.8.0/DSH 0.8.0 と組み合わせてください。既存の認可、承認、元の操作の復旧は引き続き有効です。タスクの自動継続はホストの責任です。
簡体字中国語 | 英語
MCP 互換の AI エージェントが自然言語のリクエストを使って、 BailingHub 経由でストア、SaaS、CRM、ERP、またはその他の業務システムを 照会・操作できるようにします。
業務システムが明示的に公開している機能と、この接続で許可されているルートに応じて、 エージェントは、たとえば次のことができます。
- 在庫が 10 個未満の商品を見つけ、補充の提案を準備する。
- 従業員または顧客のプロフィールを更新する。
- 返金リクエストを送信し、設定されたルートで人による承認が必要な場合は待機する。
エージェントに管理者または業務システムの認証情報が渡されることはありません。BailingHub は ルートの境界、承認状態、実行記録、監査証跡を保持し、下流の 業務システムが引き続き最終的な認可判断を行います。
0.5.0 で導入:1 つの会話でショップと在庫を扱う
ホストを通じて、ユーザーが「タンブラーの在庫を確認して、在庫があれば、対応するショップの商品価格を 59 に変更して出品して」と依頼できるようになります。この SDK では、1 つの Hub 上にある異なるシステムを対象とした操作の元の対象の確認、ツール検索前のシステムの説明、業務側が提供する認可名が追加されています。操作は業務システムによって公開されている必要があり、商品マッピングが確認済みであること、元の承認が尊重されることが必要です。
これらの拡張機能を利用するには、1 つの Hub、1 つの管理者監査ドメイン内で、互換性のあるホストと Core 0.10.0 + SDK 0.8.0 を使用してください。明示的な選択と永続的なスコープはホストが管理します。スタンドアロン MCP サーバーに複数システムの選択 UI が追加されるわけではありません。
0.4.0 で導入された会話アーカイブ
Agent Client ホストで会話のアーカイブを有効にすると、BailingHub の管理者は、 ユーザーのリクエスト、アシスタントがユーザーに表示した応答、実行された業務操作をまとめて追跡できます。 たとえば、1 つの会話で、2 つの個別に認可されたストアを比較しながら、各ストアの元の実行記録を保持できます。会話を取得して 同期するホストとともに BailingHub Core 0.10.0 を使用してください。アーカイブ API の最低バージョンは Core 0.6.0 です。
バージョン 0.4.0 では、この同期 API が導入されました。この API 自体が会話を取得することはありません。DSH プラグイン などのネイティブホストが、アカウントの 選択と会話のインターフェースを管理します。スタンドアロン MCP サーバーの既存のツール群はそのままです。
アップグレードが必要な方と開始方法
| ご利用の構成 | 次のステップ |
|---|---|
| 固定の業務ルートを持つ MCP アプリケーションを使用している | 以下の MCP セットアップに従って、このパッケージを 0.8.0 でインストールします。既存の Client Token と Agent Session のフローは引き続き互換性があります。 |
| DSH などのネイティブ Agent Client を使用している | そのホストに対応するリリースを通じてアップグレードし、アカウント選択ガイドに従います。この MCP コマンドを単独でインストールしても、複数アカウントの会話 UI は追加されません。 |
| Agent Client ホストを構築している | [email protected] をインストールし、すべての機能を利用するには Core 0.10.0 を使用して、SDK ガイドに従います。 |
この SDK のアップグレードで業務 API の宣言を変更する必要はありません。既存の読み取り/書き込み、承認、呼び出し復旧の動作はそのまま維持されます。会話のアップロードを再試行しても同じイベント ID が使用され、業務アクションが繰り返されることはありません。統合アーカイブを読み取れるのは、デプロイ環境で認可された管理者のみです。非表示の推論は含まれません。
このパッケージは薄い統合アダプターです。BailingHub を組み込んだり、業務上の権限を付与したり、下流の業務システムによる最終的な認可を置き換えたりするものではありません。既存のオペレーターがプロビジョニングする Client Token モードと、システムブラウザーを通じて人間がローカルの Agent を 1 つ承認する Agent Session モードの両方に対応しています。
公開する機能
| ツール | 目的 |
|---|---|
submit_governed_job | 信頼されていないタスクテキストを、オペレーターが設定した 1 つの BailingHub ルートに送信します |
get_governed_job | 認証情報が所有するジョブの現在の公開状態を読み取ります |
wait_for_governed_job | 再送信せずに、1 つのジョブを最大 60 秒間ポーリングします |
Agent Session の MCP パスは、ターンのブートストラップ、機能と参照ナレッジの検索/読み取り、管理対象の呼び出し/復旧、実行の明示的な完了を行う 7 つの小規模なメタツールから始まります。BailingHub はその後、現在のターンで有効な業務ツールを最大 12 個返します。ツールセットが入れ替わる際は、以前の有効なセットを削除するため、モデルのコンテキストが際限なく増えることはありません。
ツールの簡潔な説明には、開始/検索結果に description_truncated フラグと usage_guidance_available フラグが含まれる場合があります。読み込まれた 1 つのツールについて、上限付きのガイダンスのみを読むには、ターンの開始後に {"tool_name":"the_exact_loaded_name","include_usage_guidance":true} を指定して search_business_capabilities を呼び出します。これは現在の実行、認可、カタログリビジョンに紐付いた読み取り専用の参照であり、業務ツールは呼び出しません。返された切り詰め情報とサイズのメタデータを保持してください。詳細取得に対応していない旧式のクライアントは互換性エラーを返しますが、通常の検索には引き続き互換性があります。
ホストの実装者は、ホストに依存しない Agent Client SDK ガイドを参照してください。
ルート、BailingHub URL、認証情報はローカルプロセスの設定であり、モデルから指定される MCP ツール引数ではありません。SDK ホストでは、1 つのシステム内で呼び出しごとに選択できる、利用可能な認可参照の固定セットを公開できます。ホストは各参照を対応する接続に解決し、接続管理の制御を保持します。認可参照に関するガイダンスを参照してください。
認証モード
- エージェントセッション:
bailinghub-mcp-server loginを一度実行します。CLI はランダムなループバックコールバックと PKCE を使用し、システムブラウザーを開いて、承認済みのセッションをプラットフォーム固有のセキュアな認証情報ストアに保存します。その後、MCP ツールは/agent-api/v1/*を使用し、ローテーションされたトークンをローカルで更新します。 - クライアントトークン(互換モード):
BAILINGHUB_CLIENT_TOKENが設定されている場合、アダプターはこれまでどおりPOST /runとGET /jobs/{job_id}を使用します。
どちらのモードでも、モデルが認証情報、ルート、代理の主体、承認結果を指定することはできません。エージェントセッションには、Hub/ビジネス認可境界で承認された ID が記録されます。最終的な認可判断は引き続き下流のビジネスシステムが行います。
MCP Registry の server.json には、互換性のあるスタンドアロンの stdio/クライアントトークンによるインストールのみが記載されているため、このエントリーでは引き続き BAILINGHUB_CLIENT_TOKEN が必須としてマークされています。ネイティブ DSH プラグインはこの Registry 設定を使用しません。このパッケージの /sdk サブパスを通常のライブラリ依存関係としてインポートし、ブラウザーを通じてエージェントセッションを確立します。Registry のフォームをもとに、DSH プラグインにクライアントトークンの項目を追加しないでください。
セキュリティモデル
MCP host / model
|
| request_id + untrusted input
v
BailingHub MCP Server
|
| fixed route + Client Token or approved Agent Session
v
BailingHub
|
| governed dispatch
v
Business system
|
+-- resolves trusted subject and performs final authorization
アダプターは、次の項目を意図的に受け付けません。
- 代理の主体または ID の要求;
- ツール入力としてのクライアントトークン、管理者トークン、またはビジネスシステムの認証情報;
- 承認判断または承認の証拠;
- 実行者の ID;
- 任意のメタデータまたはコールバック URL;
- 任意のルート。
互換クライアントトークンモードでは、このサーバープロセスに設定された 1 つのルートだけに制限された専用トークンを使用してください。異なる MCP クライアントに異なるルート境界が必要な場合は、サーバーインスタンスを個別に実行してください。
インストール
前提条件:
- Node.js 20.15 以降;
- 接続可能な BailingHub デプロイメント;
- ルートに制限された BailingHub クライアントトークン 1 つ、または必要なルートへの承認が可能な、登録済みのパブリックエージェントクライアントのいずれか。
レガシーな静的ジョブモードでは、次のように起動するよう MCP ホストを設定します。
{
"mcpServers": {
"bailinghub": {
"command": "npx",
"args": ["-y", "[email protected]"],
"env": {
"BAILINGHUB_BASE_URL": "https://hub.example.com",
"BAILINGHUB_CLIENT_TOKEN": "replace-with-a-route-scoped-client-token",
"BAILINGHUB_ROUTE": "order_assistant"
}
}
}
}
エージェントセッションのログイン
クライアントトークンなしで MCP ホストを起動する前に、登録済みのパブリックエージェントクライアント 1 つと固定ルート 1 つを承認します。
npm install --global [email protected]
bailinghub-mcp-server login \
--base-url https://hub.example.com \
--client-app-id merchant-agent \
--route order-assistant
bailinghub-mcp-server status
bailinghub-mcp-server logout
ログインコールバックはランダムな 127.0.0.1 ポートにのみバインドされ、state と PKCE S256 を使用します。アクセスおよび更新トークンが CLI の出力に表示されることはありません。macOS では Keychain を使用します。Linux およびその他の POSIX プラットフォームでは、明示的に BAILINGHUB_ALLOW_FILE_CREDENTIAL_STORE=true を指定してオプトインする必要があります。このフォールバックでは、現在のユーザーが所有していないファイルや、モードが 0600 ではないファイルは拒否されます。Windows では、ユーザーの LocalAppData ディレクトリにある CurrentUser DPAPI 保護ファイルを使用します。Windows PowerShell または DPAPI が利用できない場合、エージェントセッションは安全側に失敗し、プレーンテキストにはフォールバックしません。互換クライアントトークンモードは、サポート対象のすべてのプラットフォームで引き続き利用できます。
ローカルの BailingHub プロセスでは、ループバック HTTP が許可されます。
BAILINGHUB_BASE_URL=http://127.0.0.1:3000
ループバック以外の HTTP は、デフォルトで拒否されます。BAILINGHUB_ALLOW_INSECURE_HTTP=true は、TLS が別の場所で終端される、オペレーターが管理するプライベートネットワーク専用です。信頼できないネットワークでは使用しないでください。
正しいジョブフロー
- 1 つのビジネスリクエストに対して、安定した
request_idを作成します。 - その ID とタスクのテキストを指定して
submit_governed_jobを呼び出します。 - 返された
job_idを保持します。 - 短時間の上限付き待機には
wait_for_governed_jobを呼び出すか、後からget_governed_jobを呼び出します。 - 送信を再試行する必要がある場合は、まったく同じ
request_idと同じ意味のタスクを再利用します。
queued、running、dispatched は終端状態ではありません。done、error、rejected は終端状態です。待機のタイムアウトはタスクの失敗を意味するものではないため、代わりの送信を行ってはいけません。
最初の成功とフィードバック
正規のスタートページとして、MCP integration pathを使用してください。MCP ホストが運用者によって固定されたルート経由で送信し、同じjob_idが終端状態に到達し、BailingHub が承認状態と監査状態を保持し、MCP ホストが管理者や業務システムの認証情報を一切受け取らない場合、最初の連携は成功です。
MCP の独立検証フォームからPASS、一部成功、または失敗を報告し、MCP トラックを選択してください。トークン、モデルキー、個人情報、本番環境の業務データは絶対に含めないでください。
プロジェクトの境界
依存関係の方向は一方向です。
bailinghub-mcp-server -> BailingHub public Client API / Agent API
BailingHub may consume ACC declarations
ACC has no dependency on either implementation
以下を参照してください。
開発
npm install
npm run verify
npm pack --dry-run
Client Token モードでは、安定したbailing.client-api.v1サーフェスを使用します。
POST /runGET /jobs/{job_id}
Agent Session モードでは、追加の Agent Auth v1 と Agent API v1 のサーフェスを使用します。
POST /agent-auth/v1/authorizationsPOST /agent-auth/v1/tokenGET /agent-auth/v1/sessionPOST /agent-auth/v1/revokeGET /agent-api/v1/workspacesGET /agent-api/v1/workspaces/{route}/bootstrapPOST /agent-api/v1/workspaces/{route}/turnsPOST /agent-api/v1/workspaces/{route}/capabilities/searchPOST /agent-api/v1/tool-invocationsPOST /agent-api/v1/tool-invocations/{invocation_id}/resumePOST /agent-api/v1/runs/{run_id}/complete
ホスト SDK では、Core 0.6.0 以降で利用可能な会話監査書き込み API も使用します。新しいクロスシステムモード、システムの説明、認証名には Core 0.8.0 を使用してください。これらの API は MCP/モデルツールとして公開されません。
POST /agent-api/v1/conversation-auditsPOST /agent-api/v1/conversation-audits/{conversation_id}/confirmPOST /agent-api/v1/conversation-audits/{conversation_id}/events
bailinghub-mcp-server/sdkサブパスでは、ホストに依存しない Agent Client ファクトリーも公開されます。ブラウザーログイン、名前付きローカルセレクター、分離された認証情報、トークン更新、Core DTO マッピングを担います。同じ Hub/クライアント/ワークスペースのバインディングでは、Core が同じ信頼済みon_behalf_ofを報告した場合に限り、古いローカル接続を置き換えます。異なる業務上の ID は、それぞれ独立して選択できます。Core が業務認証エントリーを解決するため、DSH などのホストアダプターは業務 URL を要求せず、認証情報や BailingHub の HTTP エンドポイントの詳細も管理しません。
このアダプターから、管理者、実行担当者、承認判断、ツールプロキシ、構成、または業務 API が呼び出されることはありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。