Architecture Diagrams について
Architecture Diagramsは、クラウドアーキテクトや開発者向けに、AWS、Azure、Google Cloudの構成図を作成、レビュー、インポートするMCPサーバーです。各プロバイダーの公式アイコンを使い、TerraformやGoogle Cloudのリソース一覧からも図を生成できます。
主な機能
- 01複数形式での構成図レンダリング
- 02公式クラウドサービスアイコンの検索
- 03図の仕様の検証
- 04指摘事項付きのアーキテクチャレビュー
- 05Terraformリソースのインポート
- 06Google Cloudインベントリのインポート
活用シーン
- 01新しいクラウド構成の図示
- 02Terraformの計画や状態から図を作成
- 03稼働中のGoogle Cloudリソースの可視化
- 04設計の信頼性とセキュリティ上の懸念確認
MCP 対応
MCPサーバーとして、アイコンやテンプレートの検索、図の検証・生成・レビュー、TerraformおよびGoogle Cloudインベントリのインポート機能をクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y arch-diagram-mcpARCH_DIAGRAM_OUTPUT_DIRFolder for rendered diagrams (default: ~/architecture-diagrams)ARCH_DIAGRAM_INPUT_ROOTSFolders the server may read Terraform or inventory files from, separated by the OS path separatorローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
10掲載時のツール一覧 · 2 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| limit | integer | いいえ | |
| query | string | はい | |
| provider | any | いいえ |
詳細
アーキテクチャ図 MCP サーバー
arch-diagram-mcp は、AWS、Azure、Google Cloud のクラウドアーキテクチャ図を生成、レビュー、インポートする MCP サーバーです。Kubernetes、オンプレミス、PostgreSQL、Redis、Kafka、Nginx などの SaaS サービスを含む、約 1,800 種類の公式プロバイダーアイコンを使用します。図は Graphviz を通じて、PNG、自己完結型 SVG、PDF、JPG にレンダリングされます。
新しいアーキテクチャを設計したり、既存の構成を図にしたりできます。Terraform から、あるいは実行中の Google Cloud プロジェクト自体のインベントリから、作成方法にかかわらず実際のリソース名を使って図にできます。
クイックスタート。 Graphviz をインストールしてから、以下のいずれかの方法で MCP クライアントにサーバーを追加します。
| 入手元 | コマンド |
|---|---|
| PyPI、uv を使用 | uvx arch-diagram-mcp |
| PyPI、pipx を使用 | pipx install arch-diagram-mcp を実行し、その後 arch-diagram-mcp を実行 |
| npm(uv または pipx を通じて PyPI パッケージを起動) | npx -y arch-diagram-mcp |
たとえば、Claude Code では次のように実行します:claude mcp add architecture-diagrams -s user -- uvx arch-diagram-mcp。
MCP Registry では
io.github.apatilgtn/architecture-diagrams としても掲載されています。
開発者として利用しますか? 開発者ガイドから始めてください。お使いのマシン上またはチーム共有サーバーへの Claude Code、VS Code、Cursor、Claude Desktop の接続方法と、プロンプトの例を紹介しています。この README の残りの部分では、サーバーの実行と設定について説明します。
サンプル
以下は、同梱のテンプレートと Terraform の例を、サーバーが生成するままの状態で表示したものです。
スコアは review_architecture によるものです。図をクリックすると、フルサイズの画像が表示されます。
![]() ウォーム DR を備えた Azure Web アプリのハブアンドスポーク構成 azure_webapp_hub_spoke、レビュー 94(A) | ![]() Azure AKS マイクロサービス azure_aks_microservices、レビュー 97(A) |
![]() AWS の 3 層 Web アプリ aws_three_tier、レビュー 86(B) | ![]() AWS のサーバーレス、イベント駆動型 aws_serverless_event_driven、レビュー 100(A) |
![]() GCP GKE マイクロサービス gcp_gke_microservices、レビュー 97(A) | ![]() GCP のサーバーレスとデータプラットフォーム gcp_serverless_data、レビュー 81(B) |
![]() Terraform からインポート diagram_from_terraform(examples/aws_plan.json を使用)、レビュー 73(C) | ![]() インベントリから作成した稼働中の GCP プラットフォーム diagram_from_inventory(実際のエクスポートを使用。識別子は置き換え済み)、レビュー 67(C) |
再生成するには、python scripts/render_samples.py を実行してください。
このサーバーは、Google Cloud 上でエンドツーエンドのテストも実施済みです。署名付き URL を使用するプライベートバケットと、2 層の認証を備えたプライベート Cloud Run サービスでテストしました。テスト方法、確認した内容、見つかったバグについては、docs/CLOUD_TESTING.md を参照してください。
ツール
| ツール | 機能 |
|---|---|
search_icons(query, provider?, limit?) | サービス名または別名(ecs、s3、aks、cloud run、redis)でアイコンをランキング検索します |
list_icon_categories(provider) | プロバイダーのすべてのカテゴリとサービスを一覧表示します |
list_templates(provider?) / get_template(id) | バンドルされたリファレンスアーキテクチャを編集可能な仕様として返します |
validate_diagram(spec) | 描画せずに仕様を検証します。アイコン ID(候補の提案付き)、参照、ネストの循環、制限を確認します |
generate_architecture_diagram(spec) | 図を描画し、ファイルパス、JSON の概要、インライン PNG プレビューを返します |
review_architecture(spec) | ヒューリスティックな Well-Architected レビューを実行し、0~100 のスコア、グレード、推奨事項付きの指摘事項を返します |
diagram_from_terraform(title, terraform_json | path, ...) | terraform show -json の出力(プランまたは状態)または未加工の .tfstate ファイルから図を作成します |
diagram_from_inventory(title, inventory_json | path, projects?, regions?, labels?, ...) | Cloud Asset Inventory のエクスポートから、Google Cloud で稼働中のリソースの図を実際の名前付きで作成します |
server_info() | バージョン、Graphviz の状態、アイコン数、出力ディレクトリ、制限を報告します |
また、design_architecture(provider, workload, requirements) というプロンプトが 1 つあります。モデルに、テンプレートの選択、アイコンの検索、検証、描画、レビューを順に進めさせます。
バンドルされたテンプレート
aws_three_tieraws_serverless_event_drivenazure_webapp_hub_spokeazure_aks_microservicesgcp_serverless_datagcp_gke_microservices
すべてのテンプレートは、検証と描画ができること、およびレビューで重大度が「重大」または「高」の指摘事項がないことをテスト済みです。
図の仕様
{
"title": "My App",
"direction": "LR",
"theme": "light",
"output_formats": ["png", "svg"],
"clusters": [{"id": "vpc", "label": "VPC 10.0.0.0/16"}, {"id": "app", "label": "Private subnet", "parent": "vpc"}],
"nodes": [{"id": "api", "type": "aws.compute.ECS", "label": "orders-api", "cluster": "app"}],
"edges": [{"source": "alb", "target": "api", "label": "HTTPS", "style": "dashed"}]
}
レビューのルール
| 領域 | ルール |
|---|---|
| セキュリティ | インターネット → データストア(重大);ゲートウェイを経由しないインターネット → コンピュート(高);WAF がない;シークレット/KMS がない;ID プロバイダーがない;ネットワーク境界外のデータストア;送信トラフィック制御がない |
| 信頼性 | ロードバランサーのない VM;単一リージョン;バックアップがない;同期呼び出しの深い連鎖 |
| 運用上の優秀性 | モニタリングがない;CI/CD がない;接続されていないコンポーネント |
| パフォーマンス効率 | パブリックトラフィック用の CDN がない;キャッシュ層がない |
ルールが判定できるのは、図に示された内容のみです。指摘事項はレビューのきっかけとして扱い、設定ミスの証明とはみなさないでください。
Terraform のインポート
terraform show -json plan.out > plan.json を使うと最良の結果が得られます。プランには設定の参照情報が含まれているためです。
- マッピング済みリソース: 約 140 種類の AWS、Azure、GCP のリソースタイプがノードになります。
- 境界: VPC/VNet、サブネット、リソースグループ、Container Apps 環境のリソースは、ネストされたクラスターになります。ノードは、NIC を介する場合も含め、参照先となる最も具体的な境界内に配置されます。
- エッジ: リソース間の参照はエッジになり、モジュールの出力は解決されます。
- 推定エッジ: 配線用リソースを経由するリンクは、エッジ → コンピュート → メッセージング → データの順に向きを付けた破線エッジになります。配線用リソースには、リスナー、ターゲットグループ、NIC、ロール割り当て、Front Door のオリジン、バックエンドサービスが含まれます。
- マッピングされていないタイプ: 結果に一覧表示されるため、対象外となったものを確認できます。
インベントリのインポート(Google Cloud)
すでに稼働しているインフラストラクチャの場合は、作成方法(コンソール、gcloud、スクリプト、
Terraform、Pulumi)にかかわらず、プロジェクトのインベントリをエクスポートして
diagram_from_inventory に渡します。
gcloud asset list --project <project-id> --content-type resource \
--asset-types "$(arch-diagram-mcp --gcp-asset-types)" --format json > assets.json
--gcp-asset-types を指定すると、インポーターが使用する 54 種類のアセットタイプが出力されます。これらだけを指定すると、
エクスポートのサイズを抑えられます。同じ図を出力したテストプロジェクトでは、サイズが 4.4 MB から 535 KB に減りました。呼び出し元には
roles/cloudasset.viewer が必要で、Cloud Asset API を有効にしておく必要があります。
- 名前: すべてのノードに実際の名前が保持されます。2 行目には、データベースのバージョン、 マシンタイプ、イングレス設定、レプリカ数、cron スケジュールなどの詳細が追加されます。
- 境界: プロジェクト › VPC › サブネット › GKE クラスター › 名前空間。別のプロジェクトが所有する共有 VPC ネットワークは、 そのプロジェクトの下に描画されます。直接 VPC エグレスを使用する Cloud Run は、そのサブネット内に配置されます。
- 設定からのエッジ:
- アノテーションや環境変数にある Cloud SQL、シークレット、KMS、Pub/Sub、バケット、Redis の参照。
- URL を、その URL を所有する Cloud Run サービスまたは関数と照合します(プッシュサブスクリプション、Scheduler ターゲット、環境変数)。
- ロードバランサーのチェーン(転送ルール › プロキシ › URL マップ › バックエンド › NEG、バケットまたは MIG)。パスルール、 CDN、Cloud Armor も含まれます。
- Eventarc トリガー、デッドレタートピック、BigQuery と Cloud Storage のサブスクリプション、VPC コネクタ。
- 除外されるノイズ: GKE のシステム名前空間とノード、MIG のメンバー VM(1 つの MIG として描画)、Cloud Functions 自身の Run サービス、ビルド用およびステージング用バケット、ルート、ファイアウォール、RBAC オブジェクト。
- フィルター:
projectsとregionsは厳密な制限です。labels(例:{"app": "payments"})を指定すると、リソースと、 それらに接続されているリソース(既定で有効なinclude_neighbors)が選択されます。 - 制限事項: アプリケーションコード内にしか存在しない呼び出しは検出できません。結果として仕様が返されるため、
そのエッジを追加して再レンダリングできます。環境変数から見つかった外部ホストは
external_hostsに一覧表示されます。
対応形式:gcloud asset list JSON(推奨)、gcloud asset export の改行区切り JSON、
および gcloud asset search-all-resources --read-mask='*' JSON。Azure Resource Graph と AWS
のインベントリにも対応する予定です。
インストール
Python 3.11+ と Graphviz が必要です。
winget install Graphviz.Graphviz # Linux: apt install graphviz macOS: brew install graphviz
python -m venv .venv
.venv\Scripts\python -m pip install -e ".[dev]"
.venv\Scripts\python -m pytest # 85 tests
Claude Code への登録(stdio)
claude mcp add architecture-diagrams -s user `
-e ARCH_DIAGRAM_OUTPUT_DIR=C:\Devops-Projects\Architecture-diagram-mcp\output `
-- C:\Devops-Projects\Architecture-diagram-mcp\.venv\Scripts\python.exe -m arch_diagram_mcp
共有 HTTP サービスとして実行
docker build -t arch-diagram-mcp:1.2.0 .
docker run -d -p 8000:8000 -v diagrams:/data \
-e ARCH_DIAGRAM_AUTH_TOKENS="ci=$(openssl rand -hex 32),platform-team=$(openssl rand -hex 32)" \
-e ARCH_DIAGRAM_PUBLIC_BASE_URL=https://diagrams.internal.example.com \
-e ARCH_DIAGRAM_URL_SIGNING_KEY=$(openssl rand -hex 32) \
-e ARCH_DIAGRAM_ALLOWED_HOSTS="diagrams.internal.example.com:*" \
arch-diagram-mcp:1.2.0
クライアントは Authorization: Bearer <token> を使用して https://<host>/mcp に接続します。GET /healthz は
認証不要で、プローブとして使用できます。サーバーはステートレスで動作するため、ロードバランサーの背後で水平スケールできます。すべてのレプリカで
ARCH_DIAGRAM_URL_SIGNING_KEY を共有する必要があります。これにより、どのレプリカでも任意のリンクを提供できます。
認証
| モード | 設定 | 監査ログ上の識別情報 | ロール |
|---|---|---|---|
token | ARCH_DIAGRAM_AUTH_TOKENS="name=secret,..." | トークン名 | フルアクセス |
oidc | ARCH_DIAGRAM_OIDC_ISSUER + ARCH_DIAGRAM_OIDC_AUDIENCE | oid/subをキーとするpreferred_username / upn / email | ARCH_DIAGRAM_READER_ROLE、ARCH_DIAGRAM_AUTHOR_ROLE |
トークンモード。 複数の名前付きトークンを同時に有効にできます。ローテーションするには、新しいトークンを追加してクライアントに展開し、その後、古いトークンを削除します。各トークンは16文字以上である必要があります。
OIDC モード。 サーバーは、発行者が公開している署名鍵(JWKS。ディスカバリーで取得するか、ARCH_DIAGRAM_OIDC_JWKS_URIで指定)に対して JWT を検証します。以下を確認します。
- 署名(非対称アルゴリズムのみ。HS*と
noneは不可); issとaud;expとnbf。許容誤差は60秒です;- 任意の
ARCH_DIAGRAM_OIDC_REQUIRED_SCOPES。
ロールはrolesクレーム(Entra のアプリロール)とscpスコープクレームから取得します。
- リーダー: 検索、テンプレート、検証、レビュー。
- 作成者: さらに、レンダリングと Terraform またはクラウドインベントリのインポートが可能です。作成者にはリーダーの権限も含まれます。
- どちらのロール変数も設定されていない場合、有効なトークンにはすべてフルアクセスが付与されます。
サーバーは RFC 9728 メタデータを/.well-known/oauth-protected-resourceで公開し、すべての401レスポンスでその場所を示すため、MCP クライアントは認可サーバーを検出できます。
Entra ID の例:
- Application ID URI を
api://arch-diagramsに設定して API アプリを登録します。 - マニフェストで
accessTokenAcceptedVersion: 2を設定します。 - アプリロール
Diagrams.ReaderとDiagrams.Authorを追加し、グループに割り当てます。 - サーバーを設定します。
ARCH_DIAGRAM_OIDC_ISSUER=https://login.microsoftonline.com/<tenant-id>/v2.0
ARCH_DIAGRAM_OIDC_AUDIENCE=api://arch-diagrams # v2 tokens may carry the app's client id instead; list both
ARCH_DIAGRAM_READER_ROLE=Diagrams.Reader
ARCH_DIAGRAM_AUTHOR_ROLE=Diagrams.Author
Entra ID では動的なクライアント登録はできません。クライアントは、事前登録済みのクライアントアプリを使用するか、すでに保持しているトークン(例:az account get-access-token --resource api://arch-diagrams)を渡します。
アーティファクトのストレージ
HTTP 経由では、レスポンスにサーバーのファイルパスではなくダウンロードURLが含まれます。
ARCH_DIAGRAM_STORAGE | リンク | 認証情報 |
|---|---|---|
local(デフォルト) | https://<PUBLIC_BASE_URL>/artifacts/<file>?exp=..&sig=..。このサーバーが配信し、HMAC 署名されます | ARCH_DIAGRAM_URL_SIGNING_KEY |
s3 | SigV4 署名付き GET。オブジェクトは SSE-S3 で暗号化されます。ARCH_DIAGRAM_S3_KMS_KEY_IDが設定されている場合は SSE-KMS で暗号化されます | 標準の AWS 認証情報チェーン(IRSA、インスタンスロール、環境変数、プロファイル) |
azure | 読み取り専用、HTTPS 専用の SAS。ARCH_DIAGRAM_AZURE_ACCOUNT_URLを使った Entra ID 経由のユーザー委任キー、またはAZURE_STORAGE_CONNECTION_STRINGを使ったアカウントキーを使用します | マネージド ID/ワークロード ID にはStorage Blob Data Contributorが必要です |
gcs | V4 署名付き URL。サービスアカウントキーを使ってローカルで署名するか、ワークロード ID の下で IAM signBlob を介して署名します | Storage Object CreatorとService Account Token Creatorが必要です |
- オブジェクトキー:
<prefix>/<yyyy>/<mm>/<dd>/<sha256(caller)[:16]>/<file>。ファイルは呼び出し元ごとに分離され、キーにユーザー名が含まれることはありません。 - リンクの有効期間:
ARCH_DIAGRAM_URL_TTL_Sで設定します。デフォルトは1時間、最大は7日間です。 - クリーンアップ:
ARCH_DIAGRAM_DELETE_LOCAL_AFTER_UPLOAD=trueを設定すると、クラウドへのアップロード成功後にローカルコピーが削除されます。クラウド上のオブジェクトには、バケットのライフサイクルルールを使用してください。 - 配信される SVG:
Content-Security-Policy: sandboxおよびnosniffを付けて送信されます。 - Terraform のパス:
diagram_from_terraform(path=...)は HTTP 経由では無効です。そのため、リモートの呼び出し元がサーバーのファイルを読み取ることはできません。
Configuration (environment)
| 変数 | デフォルト | 用途 |
|---|---|---|
ARCH_DIAGRAM_OUTPUT_DIR | ~/architecture-diagrams | 図の出力先 |
ARCH_DIAGRAM_INPUT_ROOTS | cwd + output dir | diagram_from_terraform(path=...) が読み取ることのできる、os.pathsep で区切られたディレクトリ |
ARCH_DIAGRAM_MAX_NODES / _MAX_EDGES / _MAX_CLUSTERS | 300 / 800 / 100 | 仕様のサイズ制限 |
ARCH_DIAGRAM_RENDER_TIMEOUT_S | 60 | この秒数が経過すると Graphviz を強制終了します |
ARCH_DIAGRAM_MAX_TERRAFORM_BYTES | 25 MB | Terraform 入力サイズの上限 |
ARCH_DIAGRAM_RETENTION_DAYS | 0 (keep forever) | N 日より前に生成されたファイルを削除します |
ARCH_DIAGRAM_KEEP_DOT_SOURCE | true | 手動編集用に .dot ファイルを保持します |
ARCH_DIAGRAM_INLINE_PNG_MAX_BYTES | 4 MB | これより大きい PNG はパスのみを返します |
ARCH_DIAGRAM_FONT | auto | フォントファミリー。auto の場合、Windows では Segoe UI、macOS では Helvetica Neue、Linux では DejaVu Sans が選択されます |
ARCH_DIAGRAM_PNG_DPI | 144 | PNG/JPG の解像度(72–300) |
ARCH_DIAGRAM_LOG_LEVEL | INFO | JSON ログは stderr に出力され、ツール呼び出しごとに監査ログが 1 行記録されます |
ARCH_DIAGRAM_HTTP_HOST / _HTTP_PORT | 127.0.0.1 / 8000 | HTTP のバインドアドレスとポート |
ARCH_DIAGRAM_AUTH_MODE | auto | none / token / oidc。以下の変数から推測されます |
ARCH_DIAGRAM_AUTH_TOKENS | – | 名前付きベアラートークン(name=secret,...)。従来の単一トークン ARCH_DIAGRAM_AUTH_TOKEN も引き続き使用できます |
ARCH_DIAGRAM_OIDC_ISSUER / _OIDC_AUDIENCE / _OIDC_JWKS_URI / _OIDC_REQUIRED_SCOPES | – | OIDC の検証 |
ARCH_DIAGRAM_READER_ROLE / _AUTHOR_ROLE | – | RBAC のロール名(OIDC) |
ARCH_DIAGRAM_PUBLIC_BASE_URL | – | 外部 URL。ダウンロードリンクと OAuth メタデータに使用されます |
ARCH_DIAGRAM_STORAGE | local | local / s3 / azure / gcs |
ARCH_DIAGRAM_STORAGE_BUCKET / _STORAGE_PREFIX | – / diagrams/ | バケットまたはコンテナー、およびキーのプレフィックス |
ARCH_DIAGRAM_S3_REGION / _S3_KMS_KEY_ID / _AZURE_ACCOUNT_URL | – | バックエンド固有の設定 |
ARCH_DIAGRAM_URL_TTL_S | 3600 | ダウンロードリンクの有効期間(60 秒 – 7 日) |
ARCH_DIAGRAM_URL_SIGNING_KEY | プロセスごとにランダム | ローカルリンク用の HMAC キー。32 文字以上にし、レプリカ間で共有してください |
ARCH_DIAGRAM_DELETE_LOCAL_AFTER_UPLOAD | false | クラウドへのアップロード後にローカルファイルを削除します |
ARCH_DIAGRAM_ALLOWED_HOSTS / _ALLOWED_ORIGINS | – | カンマ区切りの Host/Origin 許可リスト(DNS リバインディング対策) |
ARCH_DIAGRAM_ALLOW_UNAUTHENTICATED | false | トークンなしでループバック以外のアドレスへのバインドを許可します(認証プロキシの背後でのみ使用してください) |
セキュリティモデル
- 仕様の検証: ID、色、スタイルをパターンに照らして検証し、サイズ制限を適用します。
- テキストのエスケープ: タイトル、ノードラベル、クラスターラベルは常にリテラル文字列として出力し、Graphviz の HTML ラベルとしては出力しません。エッジラベルは HTML エスケープされます。そのため、ラベルから、ローカルファイルを読み取る
image=属性などの DOT 文を挿入することはできません。 - レンダリング: Graphviz は厳格なタイムアウト付きのサブプロセスとして実行され、失敗時には部分的な出力が削除されます。
- 出力ファイル: ファイル名はサニタイズされ、タイムスタンプと一意のサフィックスが付加されます。保持期間のクリーンアップでは、サーバーが生成したファイルのみが対象になります。
- Terraform 入力: ファイルの読み取り先は
ARCH_DIAGRAM_INPUT_ROOTS配下に制限され、サイズ上限が適用されます。 - HTTP:
- 静的トークンは、設定済みのすべてのトークンと定時間比較されます。
- OIDC JWT は完全に検証され、鍵の混同を招くトークンと
alg: noneトークンは拒否されます(どちらもテスト済みです)。 - ツールごとに RBAC が適用され、すべての監査ログに呼び出し元が記録されます。
- 認証なしでは、サーバーはパブリックアドレスへのバインドを拒否します。
- DNS リバインディング対策として、Host/Origin 許可リストを使用します。
- コンテナーは root 以外のユーザーとして実行されます。
- SVG 出力: アイコンが埋め込まれるため、ファイルからローカルパスが漏れることはなく、どこでもレンダリングできます。
レイアウト
src/arch_diagram_mcp/
server.py MCP tools, prompt, error mapping, audit logging
catalog.py icon index, alias resolution, ranked search, suggestions
models.py spec schema + semantic validation
renderer.py Graphviz source build, timed subprocess render, themes, SVG inlining, retention
review.py Well-Architected heuristic rules and scoring
terraform.py Terraform plan/state -> spec
gcp_inventory.py Cloud Asset Inventory export of running GCP resources -> spec
template_library.py + templates/*.json reference architectures
auth.py principals, static-token + OIDC authenticators, RBAC
storage.py local signed links, S3 / Azure Blob / GCS uploads with signed URLs
http_app.py streamable-HTTP app, auth middleware, OAuth resource metadata, /artifacts, /healthz
config.py, logs.py, __main__.py
tests/ 85 tests: catalog, validation, rendering, label injection, review, Terraform, GCP
inventory (real export fixture), MCP tools, HTTP auth, OIDC (incl. attack tokens), RBAC,
signed links, S3 (moto), Azure SAS, GCS V4
docs/USER_GUIDE.md developer guide: connecting clients, example prompts, troubleshooting
docs/CLOUD_TESTING.md how the server was tested on real Google Cloud
docs/samples/ rendered sample diagrams shown above
scripts/render_samples.py regenerates docs/samples/
scripts/e2e_cloud.py, run_impersonated.py real-cloud end-to-end test tools
ライセンス
Apache-2.0。同梱されているプロバイダーアイコンはdiagramsライブラリに由来し、各所有者の利用条件が引き続き適用されます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。







