SignalEDI について
SignalEDI Developer MCP Serverは、コーディングエージェント向けにX12連携の開発・テスト用ツールとリソースを提供します。機能プロファイルにより、キー不要のドキュメントやローカル機能と、明示的な認証を要するサンドボックス/本番操作を分離します。
主な機能
- 01開発ドキュメントとX12資料の検索
- 02サンプルと合成テスト文書の生成
- 03X12文書の解析と検証
- 04トランザクションとQuickBooks状態の確認
- 05管理された接続設定とテスト
- 06EDI送信とQuickBooksエクスポート
活用シーン
- 01連携開発時のSignalEDI API調査
- 02X12テスト文書の生成と検証
- 03トランザクションやQuickBooks接続状態の確認
- 04制御されたプロファイルでのパートナー接続設定とテスト
MCP 対応
stdioのMCPサーバーとして、ドキュメントリソース、ツールスキーマ、プロファイルで制限されたツールをMCPクライアントに提供します。`docs`、`sandbox`、`production`の各プロファイルが機能を制限し、認証が必要な操作にはAPIスコープも必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @signaledi/mcp-serverSIGNALEDI_API_KEYシークレットWorkspace API key with the platform scope. Optional for demo mode; create one at https://signaledi.com/console/keys for send, transactions, and QuickBooks tools.SIGNALEDI_BASE_URLOverride the API base URL. Defaults to https://signaledi.com; point at a preview deployment or custom domain when needed.ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
18掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| content | string | はい | The full raw EDI document text (ISA├óΓé¼┬ªIEA). |
詳細
SignalEDI 開発者向け MCP サーバー
AI コーディングアシスタントを SignalEDI に接続し、X12 統合を見つけ、スキャフォールドを作成し、検証してテストできます。この MCP サーバーは、従来のアプリケーションで使用されるものと同じ公開ガイダンスおよび /api/v1 REST コントラクトを利用する、AI ネイティブな開発者体験を提供します。SignalEDI の REST API、OpenAPI 仕様、Webhook、SDK、ドキュメントを補完するものであり、置き換えるものではありません。
このパッケージは、SignalEDI の既存の MCP アダプターを拡張したものです。バージョン 0.5 では、既存のパーサー、トランザクション、パートナーキット、QuickBooks アダプターを維持しながら、公開開発者向けディスカバリー、リソーステンプレート、コード例、ガバナンスされた接続コントロールプレーンツール、厳格なツール入力検証、明示的な機能プロファイルを追加しています。
| パッケージ | @signaledi/mcp-server |
| MCP レジストリ | io.github.SignalEDI/mcp-server |
| トランスポート | stdio |
| ランタイム | Node 22+ |
| ランタイム依存関係 | @modelcontextprotocol/sdk 1.30.0(2025 年のプロトコル世代) |
| デフォルトのアクセス | 常にキー不要の docs。認証が必要なツールには、明示的な sandbox または production の指定が必要です |
機能プロファイル
SIGNALEDI_MCP_PROFILE に、以下のいずれかのプロファイルを設定します。ツールの検出とツールの直接呼び出しは、どちらもアクティブなプロファイルに制限されます。
| プロファイル | 認証 | 利用可能な機能 |
|---|---|---|
docs | なし | 公開ドキュメントのリソースとローカルの合成ヘルパーのみを利用できます。提供されたドキュメントの内容や認証情報がアップロードされることはありません。OpenAPI リソースは、コンテンツを含まない公開 GET を実行します。ホスト環境にキーが存在する場合でも、常にこれがデフォルトです。 |
sandbox | 別途プロビジョニングされた非本番環境用キーと明示的なベース URL | 別途プロビジョニングされたサンドボックス向けの、認証付きの解析/検証、汎用パートナーキットの検出、テナントデータの読み取り、ガード付きの変更操作を利用できます。SignalEDI の正規の本番環境ホストは拒否されます。 |
production | 本番環境での使用が承認されたプラットフォームキー、https://signaledi.com との完全一致するベース URL、および SIGNALEDI_MCP_ALLOW_PRODUCTION=1 | 許可リストにあるトランザクション/QBO ステータス/キット/接続の読み取り、サンドボックス優先の接続ドラフト、ガード付きの接続設定、保存済みバインディングの接続テスト、稼働開始の引き継ぎリクエスト、送信および QBO から EDI へのエクスポートを利用できます。解析/検証、QBO エンティティの参照、QBO 同期、切断、汎用のライフサイクル制御、本番環境での有効化は引き続き非表示です。 |
プロファイルは MCP アダプター内の最小権限の境界であり、API 認可やデータガバナンスの境界に代わるものではありません。送信と QBO エクスポートでは、サーバーがアクティブなプロファイルに基づいて SANDBOX または PRODUCTION を挿入するため、モデルはこれを選択できません。その値は API によって選択されたパートナー接続に紐付けられます。本番環境への配信には、有効な不変の本番バージョンが必要です。サンドボックスへの配信には、検証済みまたはアクティブなサンドボックス環境が必要です。
認証が必要なすべての呼び出しには、基本の platform スコープが必要です。接続一覧の参照には platform:connections:read が必要です。ドラフトの作成と設定には platform:connections:write が追加で必要です。本番環境での設定と稼働開始の引き継ぎには platform:connections:production が追加で必要です。これらのドメインスコープでは、ドキュメントの配信や QuickBooks の操作は認可されません。非推奨の、platform:write と platform:production のみを持つ包括的な認証情報は、ドメインスコープを必要とする操作で拒否されるため、サポート対象のキーのローテーション手順を通じて置き換える必要があります。リリース前に、運用担当者は影響を受ける認証情報を調査し、移行について所有者に通知し、そのローテーション手順を提供する必要があります。MCP プロファイルの選択によってスコープが付与されることはありません。
| API 操作 | 追加の最小権限スコープ |
|---|---|
| 解析/検証と汎用キットの読み取り | platform 以外は不要 |
| トランザクションの読み取り | platform:documents:read |
| 送信 | platform:documents:read、platform:documents:send。本番環境への配信には platform:documents:production を追加 |
| 接続の読み取り | platform:connections:read |
| 接続の作成/設定 | platform:connections:read、platform:connections:write。本番環境での設定または稼働開始リクエストには platform:connections:production を追加 |
| 接続テスト | platform:connections:read、platform:connections:write。アクティブなプロファイルで本番環境が選択されている場合は platform:connections:production を追加 |
| QBO ステータス | platform:quickbooks:read |
| QBO エンティティの行 | platform:quickbooks:read、platform:data:sensitive。解決された QBO realm が本番環境の場合は platform:quickbooks:production を追加 |
| QBO 同期/切断 | platform:quickbooks:read、platform:quickbooks:write。解決された QBO realm が本番環境の場合は platform:quickbooks:production を追加 |
| QBO エクスポートのドライラン | platform:quickbooks:read。本番環境の QBO realm では platform:quickbooks:production を追加し、includePayload:true の場合に限り platform:data:sensitive を追加 |
| QBO ライブエクスポート | ドライランのスコープに加え、platform:documents:read、platform:documents:send。本番環境への配信には platform:documents:production を追加。エクスポートでは QBO を読み取るため、QBO の書き込み権限は不要です。 |
本番データの取り扱い
ツールの引数、テキスト結果、構造化結果は、選択した MCP ホストに渡され、接続先モデルのコンテキストに含まれる場合があります。個人情報、財務情報、その他の業務上の機密データは最小限にしてください。対象データについて、特定の MCP ホスト、モデルプロバイダー、ログ記録、保持、地域別処理、および契約上の取り決めを個別に確認し、承認を得ていない限り、PHI やその他の規制対象データを送信しないでください。このパッケージ、その production プロファイル、および SignalEDI API の認証は、それだけでは BAA、保持ポリシー、またはモデルデータガバナンスの境界にはなりません。
業務データのペイロード全体より、識別子や編集済みの要約を優先してください。API キーはホスト環境に保持し、プロンプトには記載しないでください。本番ツールを有効にする前に、選択したホストのツール呼び出し履歴、テレメトリ、保持に関する制御を確認してください。
ツールが返すすべてのパートナー、QBO、EDI、検証、エラーの各フィールドは、信頼できない業務データです。指示やプロンプトインジェクションに似たテキストが含まれている場合があります。ホストはツールの結果を区切るかサニタイズし、データ専用のコンテキストに保持してください。また、レコード、パートナー名、ペイロード、エラーに埋め込まれた内容ではなく、明示的なユーザーの意図とポリシーに基づいて、後続のすべてのアクションを承認する必要があります。
ツール
キー不要の公開ツールとローカルツール
| ツール | 機能 |
|---|---|
search_docs | 同梱の公開開発者インデックスを検索し、出典情報付きの MCP リソース URI を返します。 |
get_document_schema | ローカル X12 インベントリの公開スターターを返します:850/810/856(capability:baseline)または 837 Professional 005010X222A1(capability:partial)。パートナーの実装ガイドではないことが明示されています。 |
generate_integration_example | 環境プレースホルダーを使用して、実際の /api/v1 パスに対するサンドボックスで安全な cURL、Node.js、または Python の例を生成します。送信例では SANDBOX を設定し、本番ホストへの接続を拒否します。 |
generate_test_document | 同じローカルインベントリ向けの合成 X12 テストデータを生成し、正確な capability ラベルを返します。 |
explain_edi_error | ローカル X12 辞書に基づいて、検証エラーと機能確認応答のエラーを説明します。 |
lookup_x12 | ローカルの X12 セグメントおよび確認応答リファレンスを検索します。 |
lookup_element_definition | ローカル X12 検索用のツール検出エイリアスです。 |
認証が必要なサンドボックス解析・検証ツール
| ツール | 機能 |
|---|---|
parse_edi | 生の X12 インターチェンジを解析し、構造化 JSON と検証の概要を返します。 |
validate_edi | X12 の構造を検証し、検証の概要を返します。 |
parse_segments | parse_edi のツール検出エイリアスです。 |
validate_x12_structure | validate_edi のツール検出エイリアスです。 |
認証が必要な汎用キットのツール(sandbox および production)
| ツール | 機能 |
|---|---|
list_partner_kits | 汎用 SignalEDI API キットの一覧を返します。 |
get_partner_kit | カタログ ID を指定して、汎用キットを 1 つ取得します。 |
get_partner_requirements | partnerSpecific:false の警告を明示したうえで、汎用キットを返します。 |
明示的な環境プロファイルに基づくデータ読み取り
これらのテナントデータ用ツールは、キーが存在するだけでは有効になりません。トランザクションの読み取りと quickbooks_status は、明示的に sandbox と production を指定すると利用できます。quickbooks_list_entities はサンドボックスでのみ利用できます。
| ツール | 機能 |
|---|---|
list_transactions | API キーのスコープ内にある最近のトランザクションの一覧を返します。 |
get_transaction | 所有するトランザクションを 1 件取得し、そのライフサイクルのステータスを返します。 |
quickbooks_status | トークンを返さずに QuickBooks Online の接続ステータスを確認します。 |
quickbooks_list_entities | マッピング用に Invoice、Estimate、PurchaseOrder、Customer、Vendor、または Item の各行をプレビューします(サンドボックスのみ)。 |
管理された接続コントロールプレーン(sandbox と production)
接続ツールは、公開されている /api/v1/connections コントラクト上で動作します。MCP は、API のサニタイズ済み表現に対して、さらにレスポンスの許可リストを適用します。返せるのは不透明なゲートウェイ/証跡参照と設定済み状態を示すブール値だけであり、保存済みの認証情報、シークレット参照、生のトランスポート設定、秘密鍵、証明書、トークンは返しません。
| ツール | 機能 |
|---|---|
list_connections | テナントのスコープ内にある AS2/SFTP 接続と正当なレガシー API 接続の概要を、任意のパートナー/ライフサイクルフィルターを使用してカーソルページングで一覧表示します。 |
get_connection | 1 つの AS2/SFTP またはレガシー API 接続について、安全な環境、ゲートウェイ、承認、テストカバレッジ、準備状況、次のアクションの状態を確認します。 |
create_connection_draft | 冪等なサンドボックス優先の DRAFT を作成するか、既存のものを再利用します。created で新規作成と一致する既存レコードの再利用を区別でき、本番環境を有効化することはできません。 |
configure_connection | 既存のゲートウェイ参照と、制約された X12 ISA/GS 識別子を、AS2/SFTP の SANDBOX または PRODUCTION 環境に関連付けます。ISA15 はサーバーが管理し、認証情報は受け付けません。本番環境の設定には platform:connections:production が必要ですが、配信は有効化されません。レガシー API のレコードはここでは読み取り専用であり、管理された API 接続サーフェスを使用します。 |
test_connection | アクティブなプロファイルから注入された環境で、保存済みの接続そのものをテストします。この操作はパートナーネットワークへの送信を伴い、サニタイズ済みの証跡を記録します。また、ホストによるレビューの強制と冪等性キーが必要であり、エンドポイントや認証情報は受け付けず、本番環境も有効化しません。 |
request_connection_go_live | サーバーが READY と証明した接続を GO_LIVE_APPROVED にのみ移行するよう、API に依頼します。SignalEDI スタッフによる有効化は、別途 MFA/ガバナンス操作として行われます。 |
汎用的なライフサイクル遷移ツールは意図的に用意されていません。test_connection は、保存済みのバインディングそのものに対する権威ある接続証跡を作成できます。それ以外の中間的なテスト/認定ステージは、モデルの申告ではなく、証跡またはオンボーディングプロジェクトの状態に基づきます。本番環境の有効化、ロールバック、分離を行うツールはありません。
明示的な書き込みプロファイルツール
| ツール | 機能 |
|---|---|
send_outbound_document | アクティブなサンドボックス/本番環境で、送信 EDI ドキュメントを送信します。 |
quickbooks_sync_to_qbo | 対象を限定した取引選択を QBO に送信します(サンドボックス専用)。買い手とサプライヤーの方向は明示され、all:true はカーソルページングされます。 |
quickbooks_export_to_edi | アクティブなサンドボックス/本番環境で、QBO の請求書/発注書を EDI としてプレビューまたはエクスポートします。ドライランの結果はデフォルトでペイロードが秘匿されます。完全なペイロードには includePayload:true、platform:data:sensitive、およびホストによる confirm:true の強制が必要です。 |
quickbooks_disconnect | ワークスペースの QBO 接続を取り消して削除します(サンドボックス専用)。 |
すべてのツールは入力スキーマと出力スキーマを公開します。サーバーは入力を独自に検証し、未知のフィールドを拒否して、読み取り可能なテキストと、名前空間付きのコントラクトメタデータを含む structuredContent の両方を返します。
ミューテーションの安全性
書き込みツールは docs には含まれていません。実際のミューテーションには、すべて confirm:true と、呼び出し元が生成する、先頭や末尾に空白のない 8~128 文字の印字可能な ASCII 文字列 idempotencyKey が必要です。送信、QBO の同期/エクスポート/切断、および接続の作成/設定/テスト/本番稼働のリクエストでは、永続的な API 側のリプレイ保護が適用され、冪等として注釈が付けられています。QBO の切断は引き続きサンドボックス限定であり、完了したと断言するのではなく、保留中の Intuit の失効処理を報告します。confirm:true は呼び出し元のワークフローによる表明です。MCP サーバーが人間の承認を独自に確認することはできないため、ホストはアクションをレビュー用に提示する必要があります。
MCP クライアントは、ミューテーションや POST の解析/検証を自動的に再試行しません。解析/検証では合成データまたは承認済みのテストデータをアップロードし、サンドボックスの使用状況を記録する場合があるため、注釈は引き続き非読み取り専用かつ非冪等です。読み取り専用の GET では、回数を制限した一時的な再試行が引き続き有効です。
カスタムベース URL は、送信先を確認したうえで SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL=1 を設定しない限り拒否されます。認証情報、パス、クエリ、フラグメントを含む URL は拒否されます。HTTP が許可されるのは localhost のみであり、その場合もカスタムホストのオプトインが必要です。
アダプターは、生の EDI 入力を 65,536 UTF-8 バイト、シリアライズされた JSON リクエスト本文を 1 MiB、API レスポンスを 4 MiB に制限します。入力スキーマでは文字数/コレクションの上限を公開します。ネットワークで使用する直前にバイト数を再確認し、ストリーミングレスポンスが上限を超えた場合はキャンセルします。
リソースとプロンプト
安定したガイダンスはアクションツールではなく、リソースとして公開されます。
signaledi://quickstartsignaledi://openapisignaledi://developer-workflowssignaledi://x12-referencesignaledi://documents/{transactionSet}/schema
ドキュメントスキーマは、リソーステンプレートとしても公開されます。プロンプトには scaffold-integration、onboard-partner、debug-rejection が含まれます。scaffold とオンボーディングのプロンプトは、デフォルトで合成データを使用し、独立したサンドボックスが確認されるまで書き込みを行いません。
クイックスタート
公開ドキュメントのプロファイルを実行します。
npx -y @signaledi/[email protected]
認証済みのサンドボックスプロファイルは、非本番環境のベースとキーが用意された後にのみ設定してください。Claude Code のプロジェクト設定(.mcp.json)では、ホスト環境から ${NAME} が展開されます。
{
"mcpServers": {
"signaledi": {
"command": "npx",
"args": ["-y", "@signaledi/[email protected]"],
"env": {
"SIGNALEDI_MCP_PROFILE": "sandbox",
"SIGNALEDI_API_KEY": "${SIGNALEDI_SANDBOX_API_KEY}",
"SIGNALEDI_BASE_URL": "${SIGNALEDI_SANDBOX_BASE_URL}",
"SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
}
}
}
}
ネイティブ Windows では、Claude Code は cmd 経由で npm shim を起動する必要があります。
{
"mcpServers": {
"signaledi": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@signaledi/[email protected]"],
"env": {
"SIGNALEDI_MCP_PROFILE": "sandbox",
"SIGNALEDI_API_KEY": "${SIGNALEDI_SANDBOX_API_KEY}",
"SIGNALEDI_BASE_URL": "${SIGNALEDI_SANDBOX_BASE_URL}",
"SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
}
}
}
}
Cursor では .cursor/mcp.json、mcpServers、${env:NAME} 参照を使用します。
{
"mcpServers": {
"signaledi": {
"command": "npx",
"args": ["-y", "@signaledi/[email protected]"],
"env": {
"SIGNALEDI_MCP_PROFILE": "sandbox",
"SIGNALEDI_API_KEY": "${env:SIGNALEDI_SANDBOX_API_KEY}",
"SIGNALEDI_BASE_URL": "${env:SIGNALEDI_SANDBOX_BASE_URL}",
"SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
}
}
}
}
Claude Code プラグイン
この公開リポジトリは、コミュニティプラグインディレクトリ向けの Claude Code / Cowork プラグインでもあります。このプラグインは同じ npm パッケージを stdio 経由で起動します。別個の MCP 実装はなく、SignalEDI はホスト型のリモート MCP URL を公開していないため、リモート OAuth コネクターのディレクトリは利用しないでください。
| プラグインマニフェスト | .claude-plugin/plugin.json(name: signaledi) |
| MCP 設定 | .mcp.json → npx -y @signaledi/[email protected] |
| スキル | skills/signaledi-mcp-profiles/ |
| ローカルで検証 | claude plugin validate . --strict(このフォルダーから実行。Claude Code CLI) |
| 提出(Console) | platform.claude.com/plugins/submit |
| 提出(claude.ai Team/Enterprise) | claude.ai/admin-settings/directory/submissions/plugins/new |
ドキュメント:プラグインの提出。公式の claude-plugins-official マーケットプレイスは審査制です。コミュニティから提出する場合も、公開 GitHub リポジトリと claude plugin validate が必要です。ワンクリックでインストールするには、npm に @signaledi/[email protected] が登録されている必要があります。
Claude Desktop(MCPB)
同じ stdio サーバーを Claude Desktop 拡張機能(.mcpb)としてパッケージ化します。ソースは mcpb/manifest.json と scripts/build-mcpb.mjs です。ビルドと提出に関する詳細は mcpb/README.md を参照してください。
npm ci
npm run build:mcpb
# → dist/signaledi-mcp-server-0.5.0.mcpb
.mcpb をダブルクリックするか、Claude Desktop にドラッグするか、Settings → Extensions → Advanced → Install Extension… からインストールします。拡張機能の設定は、server.json と同じ環境変数(SIGNALEDI_API_KEY、SIGNALEDI_BASE_URL、SIGNALEDI_MCP_PROFILE など)に対応しています。作成者/公開者:SignalEDI · [email protected] · https://signaledi.com。
ディレクトリへの提出(手動のみ): このエージェント/CI から提出しないでください。準備ができたら、成果物をビルドしてテストした後、Anthropic のデスクトップ拡張機能の提出フォームに従ってください。ツール:@anthropic-ai/mcpb(mcpb pack/mcpb validate)。仕様:MCPB でデスクトップ拡張機能をビルドする。
Google Antigravity
antigravity-plugin/ にある、Antigravity/Gemini 形式の手動プラグインフォルダーです(mcp_config.json → npx -y @signaledi/[email protected] を接続します)。MCP Store への掲載はセルフサービスではありません。フォルダーをコピーしてインストールしてください。
| スコープ | パス |
|---|---|
| グローバル | ~/.gemini/config/plugins/signaledi |
| ワークスペース | .agents/plugins/signaledi(または _agents/plugins/signaledi) |
antigravity-plugin/README.md を参照してください。ブランドは SignalEDI のみです。
Cursor Marketplace
この公開リポジトリは、公式 Marketplace 向けの Cursor プラグインとしてパッケージ化されています。このプラグインは同じ npm パッケージを stdio 経由で起動します。並行する MCP 実装はありません。
| プラグインマニフェスト | .cursor-plugin/plugin.json(name: signaledi) |
| MCP 設定 | mcp.json → npx -y @signaledi/[email protected] |
| ロゴ | assets/logo.svg(相対パス) |
| スキル | skills/signaledi-mcp-profiles/ |
| 提出 | cursor.com/marketplace/publish → リポジトリ https://github.com/SignalEDI/mcp-server |
インストール(掲載後): Customize → Marketplace を開き、SignalEDI を検索してインストールします。
設定: Plugins → Configure でプラグイン変数を設定します(リポジトリやプロンプトにシークレットを含めないでください)。
| 変数 | 一般的な値 |
|---|---|
SIGNALEDI_MCP_PROFILE | docs(デフォルト)、sandbox、または production |
SIGNALEDI_API_KEY | 最小権限のワークスペースキー(docs では無視されます) |
SIGNALEDI_BASE_URL | 検証済みの非本番環境のオリジン、または本番環境の場合は正確に https://signaledi.com |
SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL | 検証済みのカスタムホストの場合に限り 1 |
SIGNALEDI_MCP_ALLOW_PRODUCTION | 本番プロファイルと正規のベース URL を使用する場合に限り 1 |
プラグインの mcp.json では ${VAR} プレースホルダーを使用します。これはダッシュボードの変数に対応しており、プロジェクトの .cursor/mcp.json で使う手動形式の ${env:NAME} とは異なります。未設定のプレースホルダーは、キー不要の docs プロファイルでフェイルクローズのままです。Marketplace のワンクリックインストールには、npm 上の @signaledi/[email protected](またはそれに対応する新しい固定バージョン)が必要です。この公開が完了するまでは、公開済みバージョンに対するローカル/手動の npx を使った検証が引き続き可能です。
公開はCursor Marketplace の公開者規約に従います。Marketplace のプラグインはオープンソースであり、手動審査に合格する必要があります。Marketplace のセキュリティを参照してください。
プライバシーポリシー
SignalEDI の製品プライバシーポリシーは、https://signaledi.com/privacy で公開されています。MCP アダプターは stdio 経由でローカル実行され、認証済みの呼び出しでは、ツールの入力が設定した SignalEDI API ホストに送信されます。ツールの引数、テキスト結果、構造化された結果は MCP ホストに取り込まれ、モデルのコンテキストに含まれる場合があります。上記の本番データの取り扱いをご覧ください。お問い合わせ先:[email protected]。
VS Code では、.vscode/mcp.json、トップレベルの servers オブジェクト、シークレット用のパスワード入力を使用します。
{
"inputs": [
{
"type": "promptString",
"id": "signaledi-api-key",
"description": "SignalEDI non-production sandbox API key",
"password": true
},
{
"type": "promptString",
"id": "signaledi-api-base",
"description": "Verified non-production SignalEDI API base URL"
}
],
"servers": {
"signaledi": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@signaledi/[email protected]"],
"env": {
"SIGNALEDI_MCP_PROFILE": "sandbox",
"SIGNALEDI_API_KEY": "${input:signaledi-api-key}",
"SIGNALEDI_BASE_URL": "${input:signaledi-api-base}",
"SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
}
}
}
}
プロビジョニング済みのローカルサンドボックスでは、選択したクライアントの env オブジェクトに次の値を追加し、キーにはそのクライアントの環境変数参照構文を使用してください。
{
"SIGNALEDI_MCP_PROFILE": "sandbox",
"SIGNALEDI_API_KEY": "<host environment reference to SIGNALEDI_SANDBOX_API_KEY>",
"SIGNALEDI_BASE_URL": "http://localhost:3100",
"SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL": "1"
}
本番環境の利用は、明示的なオプトインが必要で、条件を満たさない場合は接続を拒否します。正規のオリジンのみを使用し、キーは MCP ホストの環境に保持してください。
{
"SIGNALEDI_MCP_PROFILE": "production",
"SIGNALEDI_API_KEY": "<host environment reference to SIGNALEDI_PRODUCTION_API_KEY>",
"SIGNALEDI_BASE_URL": "https://signaledi.com",
"SIGNALEDI_MCP_ALLOW_PRODUCTION": "1"
}
本番プロファイルでは、カスタムホストや、ベース URL の欠落・暗黙の設定は受け付けません。プロファイル、キー、正規のベース URL、オプトインのいずれかを削除すると、起動が阻止されます。
実際のキーやシークレットをプロンプトに貼り付けないでください。MCP サーバーの環境変数はモデルではなく、ホストプロセスによって解決されます。
設定
| 環境変数 | デフォルト | 用途 |
|---|---|---|
SIGNALEDI_MCP_PROFILE | docs | 機能の範囲:docs、明示的な sandbox、または明示的な production。キーを指定しただけでは、リモートツールは有効になりません。 |
SIGNALEDI_API_KEY | — | 最小権限のワークスペースキー。docs では無視され、認証が必要なプロファイルでは必須です。基本の platform に加え、各ツールで公開されているドメインスコープが必要です。MCP ホストには、従来の包括的な書き込み/本番スコープを発行しないでください。 |
SIGNALEDI_BASE_URL | コンテンツを含まない docs OpenAPI GET 専用の公開本番ベース URL | Sandbox では、検証済みの非本番オリジンを明示的に指定する必要があります。production では https://signaledi.com と完全に一致する必要があります。 |
SIGNALEDI_MCP_ALLOW_CUSTOM_BASE_URL | — | 検証済みの localhost、プレビュー、またはサンドボックスのホストに限り、1 に設定します。 |
SIGNALEDI_MCP_ALLOW_PRODUCTION | — | 独立した本番オプトインとして 1 に設定します。他のプロファイルでは無視されます。 |
SIGNALEDI_MCP_TELEMETRY | 有効 | マスキングされたローカルメトリクス行を無効にするには 0 に設定します。メトリクスに含まれるのは、ツール、プロファイル、結果/コード、レイテンシ、リクエスト ID であり、ペイロードやシークレットは含まれません。 |
サーバーは JSON-RPC のみを stdout に書き込み、ログは stderr にのみ出力します。
意図的に保留している機能
MCP は、安定したテナント分離 API による裏付けがまだないホスト型機能を作り出して提供することはありません。
suggest_mappingとvalidate_mappingは、構造化されたマッピング検証サービスと、パートナーガイドの出典情報に関する契約が整うまで保留します。create_sandbox_project、create_test_partner、submit_test_document、get_test_resultsは、安定したテナント分離型のライフサイクル/テスト用ルートが整うまで保留します。generate_webhook_fixtureとverify_webhook_signatureは、正規の実行時署名契約が一つに定まるまで保留します。現在、主要な配信/再生経路と修復経路では、異なる方法で署名しています。- 本番環境では、認証情報のローテーション、生のゲートウェイ設定、マッピングのデプロイ、任意のパートナー編集、手動での証跡/ライフサイクルの申告、本番環境の有効化/ロールバック/分離、QBO の同期/切断、ドキュメントの再送は公開されません。本番プロファイルで許可されるのは、上記で説明した、許可リストに登録された読み取り操作と、サーバーによってゲートされた下書き/設定/接続テスト/本番開始リクエスト/送信/QBO エクスポート操作に限られます。
ローカル開発
node test.mjs
npm run test:stdio
npm start
ユニットテストでは合成データと HTTP モックを使用します。stdio 統合テストでは、ライブ API 呼び出しを行わずに docs、sandbox、production のディスカバリーをテストします。リリースのゲート条件については、RELEASE_NOTES_0.5.0.md をご覧ください。
アーキテクチャとリポジトリの権限
MCP client
<-> @signaledi/mcp-server over stdio
|- public documentation resources and local synthetic helpers
`- profile-gated calls to the conventional SignalEDI /api/v1 REST API
スタンドアロンの GitHub リポジトリ SignalEDI/mcp-server が正式なソースであり、npm/MCP Registry への自動公開権限を持つ唯一のリポジトリです。プライベートリポジトリ SignalEDI/platform には、ホストされた API/バックエンドの契約に関する同期済みの検証スナップショットを保持できます。詳しくは MIRROR.md を参照してください。すべての例は合成データであり、顧客、健康、財務、認証情報に関するデータを含めないでください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。