mcpField
S
SutramX

SutramX

ローカル
sutramx.comクラウド・インフラ02 週間前に更新

SutramX について

SutramXは、AIエージェントやアシスタントがSutramXワークスペースの稼働監視、インシデント、ステータスページを扱うためのMCPサーバーです。監視運用や原因調査に向け、APIキーの権限と読み取り専用・標準・破壊的モードで操作を制御します。

主な機能

  1. 01監視状態・チェック結果・インシデントの確認
  2. 02インシデント原因と地域別判定の説明
  3. 03稼働率とSLOレポートの生成
  4. 04監視設定とステータスページの管理
  5. 05アクセスモードによる書き込みツールの制御
  6. 06APIキーまたはOAuthでの接続

活用シーン

  1. 01停止中の監視対象と原因の確認
  2. 02過去のチェック結果と稼働率の確認
  3. 03インシデント対応とステータスページの保守
  4. 04エージェントを読み取り専用の監視確認に限定

MCP 対応

MCPクライアント向けに、SutramXワークスペースの監視、チェック結果、インシデント、ステータスページ、稼働率レポートのツールを公開します。APIキーまたはホスト型OAuthで接続し、読み取り専用または書き込み可能に設定できます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"sutramx": {
"command": "npx",
"args": [
"-y",
"@sutramx/mcp-server"
],
"env": {
"SUTRAMX_API_KEY": "<SUTRAMX_API_KEY>",
"SUTRAMX_API_URL": "<SUTRAMX_API_URL>",
"SUTRAMX_READ_ONLY": "<SUTRAMX_READ_ONLY>",
"SUTRAMX_ALLOW_DESTRUCTIVE": "<SUTRAMX_ALLOW_DESTRUCTIVE>"
}
}
}
}
起動コマンドnpx -y @sutramx/mcp-server
設定が必要な環境変数
SUTRAMX_API_KEYシークレットSutramX workspace API key (sk_...), from Settings > API keys. A Read-only key is recommended for agents.
SUTRAMX_API_URLAPI base URL; https only. Change it only for staging or self-hosted installs.
SUTRAMX_READ_ONLYtrue registers only read tools.
SUTRAMX_ALLOW_DESTRUCTIVEtrue also registers the permanent delete tools (monitors, status pages).

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@sutramx/mcp-server0.1.6

ツール

23

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
response_formatenumいいえ出力形式:'markdown'(読みやすい要約)または 'json'(完全な構造化データ)markdown | json

詳細

SutramX MCP サーバー

Model Context Protocol サーバーです。AI エージェントやアシスタント(Claude Code、Claude Desktop、その他の MCP クライアント)が SutramX ワークスペースを操作できるようにします。モニターの一覧表示や変更、チェック結果の確認、インシデントへの対応、ステータスページの管理ができます。

ワークスペースの API キーを使って SutramX の公開 API に接続するため、そのキーで可能な操作だけを実行できます。

ツール

ツール内容データを変更しますか?
sutramx_whoamiキーに紐づくワークスペース、プラン、制限いいえ
sutramx_monitor_summaryステータス別の件数、未解決のインシデント、過去24時間の稼働率いいえ
sutramx_list_monitors現在のステータスと稼働率を含むモニター一覧。ステータス、タグ、テキストで絞り込みいいえ
sutramx_get_monitorID または monitoring-as-code キーで指定したモニター1件いいえ
sutramx_create_monitor任意の種類のモニターを作成します。http、api、ping、port、udp、dns、multistep、mcp(リモート MCP サーバー:initialize + tools/list、期待するツール、ツールリストの差分)または cron(冪等な作成・更新には key を指定)はい
sutramx_update_monitor名前、URL、間隔、設定、タグ、リージョンを変更はい
sutramx_pause_monitor / sutramx_resume_monitorチェックを停止または再開(停止回数は1時間あたりに上限があります。「安全上の制限」を参照)はい
sutramx_delete_monitorモニターとその履歴を削除(削除が有効な場合を除き非表示)はい、破壊的操作
sutramx_run_check実際のチェックを今すぐ1回実行チェックを記録します
sutramx_get_check_resultsリージョンとステータスで絞り込んだチェック履歴。ページネーション対応いいえ
sutramx_list_incidents / sutramx_get_incident確認したリージョンと確認応答を含むインシデントいいえ
sutramx_explain_incident「なぜダウンしているのか?」/「なぜこのアラートが発生したのか?」を説明します。インシデント ID、モニター ID、モニター名/キーで指定でき、判定、原因(お客様側、外部、または当社のチェッカー)、各リージョンの判定(ブロックされたリージョンと判定不能なリージョンは棄権)、クォーラムのルールと達成状況、障害の種類、ベンダーのシグナル、過去7日間/30日間の不安定度スコアを確認できます。未解決のインシデントがないモニターの場合は、現在の状態と直近のインシデントを返しますいいえ
sutramx_acknowledge_incidentインシデントを確認(エスカレーションを停止)はい
sutramx_resolve_incidentメモを添えて手動で解決はい
sutramx_add_incident_note内部タイムラインにメモを追加(破壊的モードでのみ公開ステータスページを更新)はい
sutramx_list_status_pages / sutramx_get_status_pageステータスページと、そのページに掲載されているモニターいいえ
sutramx_create_status_page / sutramx_update_status_pageページを作成(破壊的モードでない限り非公開)、または title、description、logo_url、accent_color、favicon_url、hide_powered_by、show_response_times を変更します。slug と is_public の変更、および公開中のページへの変更は、破壊的モードでのみ可能です(その他の設定変更は拒否されます)はい
sutramx_set_status_page_monitorsページに表示するモニターを置き換え(破壊的モードでない限り非表示。空のリストを指定するには remove_all: true が必要)はい、破壊的操作
sutramx_delete_status_pageページを削除(削除が有効な場合を除き非表示)はい、破壊的操作
sutramx_uptime_report過去7/14/30/90日間のモニターごとの稼働率、インシデント、MTTR、健全性スコアに加え、SLO のエラーバジェットとバーンレートいいえ
sutramx_list_maintenance_windowsメンテナンス期間(対象範囲、スケジュール、繰り返し)。状態で絞り込みいいえ
sutramx_list_regions監視拠点とそのコードいいえ

破壊的なツールには destructiveHint が付与されているため、対応するクライアントでは実行前に確認を求めます。読み取りツールには readOnlyHint と openWorldHint: false が付与されており(ワークスペースの読み取りのみを行います)、SutramX から外部の対象に接続したり、公開したり、人々に通知したりするツールには openWorldHint: true が付与されています。

アクセスモード

エージェントは読み取ったテキストによって誘導される可能性があるため(プロンプトインジェクション)、サーバーが提供するツールを選ぶのはエージェントではなくユーザーです。許可されていないツールは登録されないため、エージェントに表示されることはありません。

モードstdio(環境変数)HTTP(サーバー全体の環境変数、またはクライアントごとのヘッダー)提供されるツール
読み取り専用SUTRAMX_READ_ONLY=trueX-SutramX-Read-Only: true上記の「no」の行のみ
デフォルト(どちらも設定されていない)(どちらも設定されていない)破壊的な操作を除くすべて。公開は不可
破壊的モードSUTRAMX_ALLOW_DESTRUCTIVE=true環境変数のみ。または、オペレーターが SUTRAMX_HTTP_ALLOW_DESTRUCTIVE_HEADER=true を設定している場合は X-SutramX-Allow-Destructive: trueすべて

破壊的モードでは、データを削除する操作や、一般ユーザーに表示される内容を変更する操作が対象になります。

  • 削除ツールと sutramx_set_status_page_monitors(ページからモニターを取り除くことができます)は、破壊的モードでのみ登録されます。
  • 破壊的モード以外では、sutramx_update_status_page は slug と is_public の変更(ページの公開、非公開化、移動)および公開中のページへの変更(タイトル、ロゴ、色など、すべてのユーザーに表示される内容)を拒否します。sutramx_create_status_page で作成されるページは非公開です。また、sutramx_add_incident_note は public: true(ステータスページの更新)を拒否します。

注意:

  • どちらの設定もデフォルトでは無効です。true、1、yes、on(大文字と小文字は区別しません)を指定すると有効になり、それ以外の値では無効のままです。ツールの引数でこれらの設定を変更することはできません。
  • 読み取り専用が優先されます。読み取り専用が有効な場合、破壊的モードであっても破壊的なツールは非表示のままです。
  • HTTP モード:サーバーで SUTRAMX_READ_ONLY=true を設定すると、ヘッダーの値にかかわらず、すべてのリクエストが読み取り専用になります。X-SutramX-Read-Only: true を指定すると、特定のクライアントだけが読み取り専用になります。サーバーで SUTRAMX_ALLOW_DESTRUCTIVE=true を設定すると、読み取り専用でないすべてのリクエストで破壊的モードが有効になります。X-SutramX-Allow-Destructive: true は、オペレーターが SUTRAMX_HTTP_ALLOW_DESTRUCTIVE_HEADER=true も設定していない限り無視されます。
  • 任意の宛先へのテスト通知、メール、SMS、電話を送信するツール、ローカルファイルを読み取るツール、コマンドを実行するツール、任意の URL を取得するツールはありません。
安全制限

データを変更するツールには、セッションごと(stdio:プロセス、HTTP:API キー)にレート制限が適用されます。変更は SUTRAMX_MAX_WRITES_PER_MINUTE(デフォルト 20)回/分、SUTRAMX_MAX_WRITES_PER_HOUR(デフォルト 200)回/時間までで、破壊的モード以外ではモニターの一時停止は SUTRAMX_MAX_PAUSES_PER_HOUR(デフォルト 10)回/時間までです。上限を超えると、ユーザーに確認するようエージェントに指示するエラーがツールから返されます。API 独自のキーごとの制限も別途適用されます。

  • 調査やレポート作成など、情報の確認だけを行うアシスタントには読み取り専用モードを使用してください。できれば、読み取り専用 API キー(以下を参照)も併用してください。

1. API キーを作成する

SutramX で 設定 → API キー → API キーを作成 を開きます。キーは sk_ で始まり、一度だけ表示されます。

エージェントには読み取り専用キーをおすすめします。 上記の「no」のツールをすべて呼び出せます。また、SutramX API 自体が変更操作をすべて拒否するため(403 READ_ONLY_ACCESS)、キーが漏えいした場合や、プロンプトインジェクションを受けたエージェントであっても、作成、一時停止、確認、解決、削除を行うことはできません。これはサーバー自体の読み取り専用モードが無効の場合でも同様です。両方を併用すると(SUTRAMX_READ_ONLY=true)、書き込みツールもエージェントから見えなくなります。変更操作が本当に必要なエージェントに限り、Standard キーを使用してください。上記のすべてのツールを利用するには、これで十分です。

2. ビルド

cd mcp-server
npm install
npm run build

Node.js 20 以降が必要です。

3. クライアントを接続する

Claude Code
claude mcp add sutramx \
  --env SUTRAMX_API_KEY=sk_your_key \
  -- node /absolute/path/to/mcp-server/dist/index.js

または、プロジェクトの .mcp.json に追加します。

{
  "mcpServers": {
    "sutramx": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-server/dist/index.js"],
      "env": { "SUTRAMX_API_KEY": "sk_your_key" }
    }
  }
}
Claude Desktop

claude_desktop_config.json を編集します(macOS:~/Library/Application Support/Claude/claude_desktop_config.json、Windows:%APPDATA%\Claude\claude_desktop_config.json)。

{
  "mcpServers": {
    "sutramx": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-server/dist/index.js"],
      "env": { "SUTRAMX_API_KEY": "sk_your_key" }
    }
  }
}

Claude Desktop を再起動します。「現在停止している SutramX モニターと、停止してからの時間を教えてください」と尋ねてみてください。

ストリーミング可能な HTTP(リモートまたは共有)
PORT=3333 node dist/index.js --http

エンドポイントは POST http://127.0.0.1:3333/mcp です(ステートレスで、JSON レスポンスを返します)。各リクエストでは、それぞれ独自の SutramX キーを送信する必要があります。

Authorization: Bearer sk_your_key

これにより、1 台のサーバーで複数のユーザーやワークスペースに対応できます。各キーからアクセスできるのは、そのキーに対応するワークスペースだけです。Claude Code を接続するには、次のようにします。

claude mcp add --transport http sutramx http://127.0.0.1:3333/mcp \
  --header "Authorization: Bearer sk_your_key"

サーバーがループバックでリッスンしている場合(デフォルトの HOST=127.0.0.1)、Authorization ヘッダーを送信しないリクエストには SUTRAMX_API_KEY が使われます(SutramX キーではないヘッダーを送信すると、401 で拒否されます)。ブラウザーからのリクエスト(localhost のページを含む、Origin ヘッダーのあるすべてのリクエスト)は、そのオリジンが MCP_ALLOWED_ORIGINS に登録されていない限り拒否されるため、ローカルの開発サーバーやその他の localhost ウェブアプリがキーを使用することはできません。MCP Inspector などのブラウザーベースのクライアントを使う場合は、たとえば MCP_ALLOWED_ORIGINS=http://localhost:6274 のように、そのオリジンを登録してください。環境変数のキーが貸し出されるのは、Origin がないリクエスト、または名前で登録されたオリジンからのリクエストだけです(* を指定すると、独自のキーを送信するブラウザーは許可されますが、環境変数のキーは貸し出されません)。それ以外の HOST を指定すると、環境変数のキーは無視されるため、サーバーを HTTPS の背後に配置してください。0.0.0.0 にバインドする際に DNS リバインディング対策を維持するには、MCP_ALLOWED_HOSTS にホスト名をカンマ区切りで設定してください。GET /health はサーバーのバージョンを返します。

OAuth 対応のホステッドサーバー(Claude.ai およびその他のリモートクライアント)

https://api.sutramx.com/mcp のホステッドサーバーは OAuth 2.1 にも対応しているため、API キーを保存できないクライアント(たとえば Claude.ai のカスタムコネクター)では、URL だけで接続できます。認証情報なしで最初のリクエストを送信すると、サーバーは WWW-Authenticate: Bearer resource_metadata="https://api.sutramx.com/.well-known/oauth-protected-resource/mcp" を含む 401 を返します。クライアントは自身を登録し(動的クライアント登録)、SutramX での承認を求めた後、アクセストークンを取得します(PKCE S256、リソースインジケーター https://api.sutramx.com/mcp)。

同意ページでは、ワークスペースと権限を選択します。monitors:read、incidents:read、status_pages:read はデフォルトで有効です。monitors:write、incidents:write、status_pages:write は、選択しない限り無効です。ワークスペースの閲覧者が許可できるのは読み取りのみです。書き込みスコープのないトークンでは、読み取りツールのみを利用できます。削除、公開、スラッグの変更、ステータスページのモニターの置き換えなど、破壊的なツールはホステッドサーバーでは無効のままです。有効化できるのはサーバーの運用者だけです(SUTRAMX_ALLOW_DESTRUCTIVE)。OAuth トークンで API キー、チームメンバー、請求、SSO、アカウント設定を管理することはできません。アクセストークンの有効期間は 1 時間で、自動的に更新されます。SutramX → Settings → Authorized apps で、アプリをいつでも取り消せます。

OAuth 対応の HTTP サーバーをセルフホストする場合は、MCP_RESOURCE_URL に /mcp エンドポイントの公開 URL を、MCP_AUTHORIZATION_SERVER に SutramX API を設定し、このサーバーから /.well-known/oauth-protected-resource* を提供してください。OAuth トークンがリソースの証明情報とともに API に届くように、OAUTH_RESOURCE_PROXY_SECRET を設定します(16 文字以上で、API が期待する値を指定します)。NODE_ENV=production(Docker イメージのデフォルト)では、このシークレットが未設定、または 16 文字未満の場合、HTTP サーバーは起動を拒否します。シークレットを付けずにトークンを送信することはありません。API キーのみを受け付けるサーバーでは、MCP_OAUTH=off を設定します。保護されたリソースのメタデータは提供されず、OAuth アクセストークンは拒否されます。stdio モードには影響しません。

設定

変数デフォルト用途
SUTRAMX_API_KEY(stdio では必須)ワークスペース API キー
SUTRAMX_API_URLhttps://api.sutramx.comAPI ベース URL(セルフホストまたはステージング用)。オペレーターのみが設定し、リクエストやツール引数から取得することはありません
TRANSPORTstdiohttp は --http と同じです
HOST / PORT127.0.0.1 / 3333HTTP リスナー
MCP_ALLOWED_HOSTS(なし)ループバック以外で許可する Host ヘッダー
SUTRAMX_READ_ONLYfalse読み取り専用ツールのみを登録します
SUTRAMX_ALLOW_DESTRUCTIVEfalse破壊的操作モード:削除ツール、ステータスページのモニター置換、公開とスラッグの変更、公開ステータスページの編集、公開インシデントの更新
SUTRAMX_HTTP_ALLOW_DESTRUCTIVE_HEADERfalseHTTP:クライアントが X-SutramX-Allow-Destructive: true で破壊的操作モードを有効にできるようにします
SUTRAMX_MAX_WRITES_PER_MINUTE / SUTRAMX_MAX_WRITES_PER_HOUR / SUTRAMX_MAX_PAUSES_PER_HOUR20 / 200 / 10セッションごとの変更上限(「安全性の上限」を参照)
MCP_RESOURCE_URL<SUTRAMX_API_URL>/mcpHTTP + OAuth:この /mcp エンドポイントの正規 URL(トークンのオーディエンス)
MCP_AUTHORIZATION_SERVERSUTRAMX_API_URLHTTP + OAuth:保護リソースのメタデータに記載する発行者
OAUTH_RESOURCE_PROXY_SECRET(なし)HTTP + OAuth:OAuth トークンとともに API に送信するリソース証明(16 文字以上)。MCP_OAUTH=off でない場合、NODE_ENV=production では必須です
MCP_OAUTHonHTTP:off にすると SutramX API キーのみを受け付けます(OAuth メタデータなし、OAuth トークンは拒否)
SUTRAMX_API_INTERNAL_URL(なし)HTTP:API 呼び出しを SUTRAMX_API_URL の代わりにここへ送信します(例:API の隣で実行する場合は http://api:3003)。OAuth メタデータでは SUTRAMX_API_URL が引き続き公開 URL として使用されます。プレーンな http:// はループバック、プライベートアドレス、単一ラベルのコンテナー名に限ります
TRUST_PROXY_HOPS0HTTP:X-Forwarded-For を設定する、サーバーの前段にあるリバースプロキシの数。この値を設定した場合に限り、クライアントアドレスはこのヘッダーから取得されます(プロキシが 1 つの場合は 1)
MCP_FAILED_AUTH_PER_IP50HTTP:クライアントアドレスごとに 15 分間に許可される認証失敗回数。この回数を超えると Retry-After を付けて 429 が返されます
MCP_ALLOWED_ORIGINS(なし)/mcp への呼び出しを許可するブラウザーオリジン(カンマ区切り。例:http://localhost:6274,https://app.example.com)。デフォルトでは、ループバックを含め、ブラウザーオリジンは許可されません。Origin のないリクエストは常に許可されます
HTTPS_PROXY / HTTP_PROXY / NO_PROXY(または小文字)(なし)API 呼び出しをプロキシ経由で送信します。NO_PROXY 内のホスト(例:SUTRAMX_API_INTERNAL_URL のホスト)には直接接続します。TLS を検査するプロキシの背後では、NODE_EXTRA_CA_CERTS にプロキシの CA 証明書を指定してください

Notes

  • プランの上限はダッシュボードとまったく同じように適用されます。ツールが category: PLAN_LIMIT または ENTITLEMENT_LIMIT_REACHED、ENTITLEMENT_INTERVAL_TOO_SHORT、MONITOR_TOTAL_LIMIT_REACHED、CONNECTION_LIMIT_REACHED、LIMIT_REACHED、AI_LIMIT_REACHED、FEATURE_NOT_AVAILABLE のいずれかを含むエラーを返した場合、そのプランでは許可されていないため、エージェントには再試行しないよう伝えられます。
  • API 呼び出し:すべての POST に Idempotency-Key が付与されます。読み取り(読み取り専用のモニター plan を含む)、PUT、DELETE、および API 実行を作成する POST(モニター、ステータスページ、インシデントメモなど)は、ネットワークエラー、タイムアウト(30 秒)、HTTP 502/503/504、または 429 の後に、同じキーを使って1回再試行されます(秒数または日時で指定される Retry-After を尊重し、最大5秒まで待機します。これより長い待機時間はエージェントに返されます)。その他の POST(確認、解決、一時停止、再開、チェック実行)は、429 の場合にのみ再試行されます(API が実行前に拒否した場合です)。ネットワークエラー、タイムアウト、または 5xx の後は1回だけ送信され、エラーがエージェントに返されます。再試行すると二重に実行される可能性があるためです。ネットワーク障害では原因とホスト(ECONNREFUSED、ENOTFOUND、ETIMEDOUT、CERT_* など)が示されます。JSON 以外のレスポンスはエラーになります。呼び出しには User-Agent と X-SutramX-Client: sutramx-mcp-server/<version> が付与されます。
  • 請求、チームメンバー、API キーは API キーでは管理できないため、このサーバーでも管理できません。モニターごとのアラート受信者(config.notification_emails)を設定できるのは、Automation アクセス権を持つ API キーのみです。それ以外のキーには明確なエラーが返されます。
  • メンテナンスウィンドウは一覧表示できますが、作成、変更、削除はできません。アラートを抑制するため、API ではオーナーのみが操作できるようになっており、すべての API キーが拒否されます(403 WORKSPACE_OWNER_REQUIRED)。SLO ターゲットはダッシュボードで設定し、sutramx_uptime_report で読み取ります。
  • 読み取り専用キーを使用すると、sutramx_whoami は read_only: true を報告し、書き込みツールはすべて、エージェントに再試行しないよう伝えるヒントとともに READ_ONLY_ACCESS を返します。
  • sutramx_explain_incident には、incident_id、monitor_id、monitor(名前、キー、または URL フラグメント)のいずれか1つを指定します。名前に一致するモニターが複数ある場合、最大10件の候補とともに outcome: "ambiguous" を返し、エージェントには必ずユーザーに確認するよう伝えられます。候補から選ぶことはありません。その他の結果は ongoing、resolved、healthy、failing_unconfirmed、no_data、paused です。メンテナンスウィンドウによってアラートが抑制されている間は in_maintenance が設定され、incidents_total: 0 は、そのモニターでインシデントが一度も発生していないことを意味します。説明はすべてのプランで利用できます。ベンダーシグナルは、影響を受けた SutramX アカウント数をプライバシーに配慮した区分(several / many)でのみ示します。OAuth 接続には incidents:read(インシデントの説明)と monitors:read(モニターの状態と不安定さ)が必要です。
  • sutramx_update_monitor の config はオブジェクト全体を置き換えます。エージェントには、まずモニターを読み取り、マージ済みの設定を送信するよう伝えられます。

セキュリティ

  • SUTRAMX_API_URL は https:// である必要があります(ループバックの場合に限り、平文の http:// を使用できます)。それ以外の場合、サーバーは起動を拒否します。また、NODE_TLS_REJECT_UNAUTHORIZED=0 の場合は警告を表示し、キーを付けたリダイレクトには決して追従しません。
  • HTTP モードでは、認証情報が無効な場合(形式が不正な Authorization ヘッダー、API が拒否する OAuth トークンまたは API キー)、クライアントのアドレスごとに制限されます(MCP_FAILED_AUTH_PER_IP)。トークンが API に届く前に確認されます。ループバックアドレスとプライベートアドレスは制限されません(プロキシの背後に配置する場合は TRUST_PROXY_HOPS を設定してください)。OAUTH_RESOURCE_PROXY_SECRET が設定されている場合、API 呼び出しには X-SutramX-Client-Ip でクライアントのアドレスが渡され、そのシークレットを使った HMAC が付与されます。これにより、API はサーバーのアドレスではなく、ユーザーごとにアドレス単位の制限を適用できます。
  • モニター設定に保存された認証情報(Authorization/Cookie などのヘッダー、*token*、*secret*、*password*、*api_key* のような名前のキー、URL 内のパスワード)は [REDACTED] として返されます。sutramx_update_monitor に [REDACTED] を送信すると、保存済みの値が維持されます。保存されていない値を表すことはできません。
  • 監視対象のサイトや他のユーザーに由来するテキスト(チェックエラー、名前、メモ)は、制御文字を除去したうえで、改行のない «» 内に表示されます。また、サーバーの指示では、エージェントにこれらをデータとして扱うよう伝えます。
  • structuredContent(テキストと並ぶ JSON)はサニタイズされます(制御文字、ゼロ幅文字、双方向表示上書き文字を削除します)。8,000 文字を超える文字列の末尾には [TRUNCATED] が付き、結果全体は 25,000 文字に制限されます(項目が削除された場合は "truncated": true となります)。末尾に [TRUNCATED] が付いた値は、送り返しても拒否されます。いくつかのリストツールでは outputSchema が宣言されています。
  • sutramx_list_monitors は最大 5,000 件のモニターと 5 MB のレスポンスをスキャンします(API でフィルタリングできるのはタグのみです)。すべての API レスポンスは、読み込み中に 10 MB までに制限されます。
  • ID は UUID、キーとスラッグは厳格なパターンに一致し、時刻は ISO-8601 形式である必要があります。そのため、ツールの引数によって API パスを変更したり、クエリパラメーターを追加したりすることはできません。
  • HTTP モード:各リクエストには、それぞれ Authorization: Bearer sk_... が必要です。環境変数のキーは、ループバックの場合に限りフォールバックとして使用されます。公開環境にデプロイする場合は、手前にレートリミッターを配置してください(API 自体もキー単位でレート制限を行います)。

開発

npm run dev          # stdio, from source
npm test             # tool tests against a fake API
npx @modelcontextprotocol/inspector node dist/index.js   # interactive inspector

ライセンス

MIT。詳細は LICENSE を参照してください。

コメント

MCP は初めてですか?

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

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