MCPツールへのアクセスを許可する
最終検証日:
翻訳: 竹洞 陽一郎
Aperture by Tailscaleは、現在ベータ版です。
ApertureのMCPサーバーサポートは実験的(experimental)です。
MCPグラントの構文は、予告なく変更される場合があります。
ApertureにMCPサーバーを登録すると、ユーザーはApertureプロキシを通じて、ツール、リソース、テンプレートにアクセスできます。
モデルアクセスと同様に、MCPアクセスもデフォルトで拒否(deny-by-default)です。
各ユーザーまたはグループがどのMCP項目を使えるかを指定するグラントを設定する必要があります。
このガイドは、すでにモデルアクセスのグラントを設定済みであることを前提とします。
MCPグラントは同じ構造を使い、MCP項目のための追加のケイパビリティフィールドを持ちます。
前提条件
始める前に、次のものが揃っていることを確認してください。
- 少なくとも1つのプロバイダーと、少なくとも1つの登録済みMCPサーバーを備えたApertureインスタンス。
- Apertureダッシュボードへの管理者アクセス。
- すでに
roleグラントと、Apertureデバイスへのネットワークアクセスを持つユーザー。まだの場合は、先にモデルアクセスを制御するを完了してください。
MCPアクセスグラントを設定する
グラントにMCPケイパビリティフィールドを追加して、ユーザーがどのMCP項目にアクセスできるかを制御します。
アクセスを許可できるMCP項目は、ツール、リソース、テンプレートの3種類です。
Apertureダッシュボードの「設定(Settings)」ページを開き、tailscale.com/cap/aperture ケイパビリティ配列にMCPフィールドを追加します。
次の例は、group:ai-users のユーザーに、local MCPサーバーのすべてのツールと、任意のサーバーのすべてのリソースへのアクセスを付与するものです。
{
"grants": [
{
"src": ["group:ai-users"],
"app": {
"tailscale.com/cap/aperture": [
{ "role": "user" },
{ "models": "anthropic/**" },
{ "mcp_tools": "local/*" },
{ "mcp_resources": "**" }
]
}
}
]
}
MCPケイパビリティフィールド
tailscale.com/cap/aperture 配下の各ケイパビリティエントリには、次のMCPフィールドを含められます。
| フィールド | 説明 |
|---|---|
mcp_tools |
MCPツールのグロブパターン。server/tool 形式。 |
mcp_resources |
MCPリソースのグロブパターン。server/resource 形式。 |
mcp_templates |
MCPリソーステンプレートのグロブパターン。server/template 形式。 |
パターンは、モデルグラントと同じグロブ構文を使用します。* は単一のパスセグメントに、** はゼロ個以上のセグメントに一致します。
パターンの例
次の例は、パターンを使って特定のMCP項目へのアクセスを付与する方法を示しています。
| パターン | 一致対象 |
|---|---|
"local/*" |
local MCPサーバーのすべての項目 |
"**" |
すべてのMCPサーバーのすべての項目 |
"remote/search" |
remote サーバーの search ツールのみ |
MCPグラントのパターンは、Apertureの構成で定義したMCPサーバー名を参照します。
パターンが未定義のサーバーを参照している場合、Apertureは警告をログに記録します。
次のステップ
- モデルアクセスを制御する: ユーザーがどのLLMモデルにアクセスできるかを管理します。
- 完全なグラント構文については、グラントの構成リファレンスを参照してください。
- ユーザーごとの支出上限を設定する: モデルやツールをまたいでコストを管理します。