MCP 件のコネクタ¶
概要¶
Snowflakeの MCP コネクタは Snowflake Intelligence およびCortex Agentをリモートのモデルコンテキストプロトコル( MCP )サーバーに接続し、エージェントがAtlassian Jira、Salesforce、独自のカスタムアプリケーションなどのプロバイダーによってホストされているツールを検出して呼び出せるようにします。MCP コネクタを使用すると、エージェントは質問に回答するだけでなく、Jiraチケットの作成、Salesforceの記録の更新、Slackへの投稿など、すべてSnowflakeの管理対象環境内で、エンタープライズシステム全体でアクションを実行できます。
MCP コネクタの仕組み¶
管理者は、 API 統合 を参照する外部 MCP サーバーオブジェクトを作成します。これには、 OAuth 認証情報が含まれます。Snowflakeは、認証情報を持つ標準 OAuth (クライアント ID 、クライアントシークレット)、および動的クライアント登録( DCR )をサポートしています。利用可能な MCP コネクタのセットから選択するか、カスタムコネクタをビルドします。MCP コネクタがエージェントに追加されると、ユーザーはサードパーティのサービスで認証され、Cortex Agentsと Snowflake Intelligence でツールを直接使用することができます。
設定フロー¶
MCP コネクタを作成してSnowflakeワークフローで使用するには、次のステップを完了します。
プロバイダーのセットアップ:アカウント管理者はプロバイダーのダッシュボード(例: SalesforceまたはAtlassian)で MCP サーバーを作成し、 OAuth 認証情報を取得します。
API 統合:アカウント管理者は、サーバー URL 、クライアント ID 、クライアントシークレット、および OAuth エンドポイントを保存する API 統合をSnowflakeに作成します。
外部 MCP サーバーの作成:アカウント管理者は、 API 統合を参照する外部 MCP サーバーオブジェクトを作成します。
エージェント構成:エージェント開発者は外部 MCP サーバーをCortex Agentの仕様に追加します。
ユーザー認証: Snowflake Intelligence ユーザーは Snowflake Intelligence インターフェースを介して MCP サーバーに接続し、 OAuth を使用してサードパーティサービスで認証します。
ツールの検出と呼び出し¶
エージェントが呼び出されると、 tools/list メソッドを使用して、構成された各外部 MCP サーバーから利用可能なツールのリストを取得します。オーケストレーション中、エージェントは tools/call メソッドを使用し、必要な引数を渡して特定のツールを呼び出します。Snowflakeは、 MCP サーバーとその基になる API 統合両方がツール呼び出しを実行する前に有効化されていることを確認します。
アクセス制御¶
次の表は、外部 MCP サーバー操作に必要な権限を説明しています。
権限 |
オブジェクト |
以下に必要 |
|---|---|---|
CREATE EXTERNAL MCP SERVER |
スキーマ |
外部 MCP サーバーの作成 |
OWNERSHIP |
MCP サーバー |
MCP サーバーのドロップ |
MODIFY |
MCP サーバー |
MCP サーバーの更新、ドロップ、記述、表示、使用 |
USAGE |
MCP サーバー |
MCP サーバーへの接続とツール検出 |
USAGE |
API 統合 |
MCP サーバーへの接続とツール検出 |
OWNERSHIP または MODIFY |
API 統合 |
API 統合の有効化、無効化、またはドロップ |
デフォルトでは、アカウント管理者のみがこれらの権限を持っています。
重要
外部 MCP サーバーはSnowflakeによって提供、保守、または検証されません。外部 MCP サーバーに接続することにより、サーバーの信頼性を確認し、サーバーが提供するデータにアクセスして処理する権利を持っていることを確認し、そのデータの管理に適用されるすべての法律およびサードパーティの規約に準拠する責任があります。Snowflakeは外部 MCP サーバーを保証、またはサポートしません。また、その使用によって発生したエラー、データの損失、またはセキュリティインシデントについて責任を負いません。
サポートされている MCP コネクタの設定¶
最小限の構成を持つ以下の MCP サーバーに接続できます。
Atlassian
GitHub
Glean
Linear
Salesforce
これらの MCP プロバイダーの場合は、次のワークフローを完了します。
API_USER_AUTHENTICATION型フィールドで、プロバイダーの詳細を指定します。各プロバイダーに固有のプロバイダー構成を設定します。
外部 MCP サーバーオブジェクトの作成でこの API 統合を参照します。
注釈
OAuth 認証コードフローの場合、クライアントは、外部サービスプロバイダーに同意した後、コールバック URL を提供する必要があります。外部サービスプロバイダーはユーザーをコールバック URL に送信し、フローを終了します。一般に、2つの URLs を OAuth アプリ構成に提供する必要があります。
Cortexコード CLI の場合:
<account_url>/oauth/complete-secretSnowflake Intelligence およびSnowsight UI の場合:
<snowsight_url>/oauth/complete-secret
Snowsight URL は、 PrivateLink が使用されているかどうかによって、 SYSTEM$ALLOWLIST または SYSTEM$ALLOWLIST_PRIVATELINK から取得できます。apps-api (パブリックアクセス用)または app.<region>.privatelink.snowflakecomputing ( PrivateLink 用)で始まる SNOWSIGHT_DEPLOYMENT 型のいずれかを選択します。
Admin.atlassian.comに移動します。左側のナビゲーションで、 Apps > AI Settings > Rovo MCP Server を選択します。
上記のメモで説明されているように、 Your domains で Add Domain を選択して2つのコールバック URLs を追加します。
Add を選択します。
Snowsight にサインインします。
ナビゲーションメニューで AI & ML » Agents を選択します。
Settings を選択します。
Tools and Connectors を選択します。
Browse Connectors を選択します。
Atlassian を選択します。
MCP サーバーの名前と説明を入力します。
Server URL には、
https://mcp.atlassian.com/v1/mcpを入力します。MCP サーバーが作成されるデータベースとスキーマを選択します。
Add を選択します。
次の例は、Atlassian用の API 統合と MCP サーバーを作成する SQL コマンドを示しています。
GitHub にサインインします。
右上のアバターにナビゲートし、 Settings を選択します。
Developer Settings を選択します。
New GitHub App を選択します。前述のとおり、名前、ホームページ URL 、2つのコールバック URLs を指定します。
Webhookを無効にし、カスタム権限(スコープ)を設定できます。
アプリを作成します。Developer Settings の GitHub Apps にアプリが表示されるはずです。
Edit および Generate a new client secret を選択します。クライアント ID とシークレットを記述します。
Snowsight にサインインします。
ナビゲーションメニューで AI & ML » Agents を選択します。
Settings を選択します。
Tools and Connectors を選択します。
Browse Connectors を選択します。
GitHub を選択します。
MCP サーバーの説明を入力します。
Server URL には、
https://api.githubcopilot.com/mcpを入力します。Token endpoint の場合、
https://github.com/login/oauth/access_tokenを入力します。Authorization endpoint の場合、
https://github.com/login/oauth/authorizeを入力します。Client ID の場合、記述したクライアント ID を入力します。
Client secret の場合、記述したクライアントシークレットを入力します。
MCP サーバーが作成されるデータベースとスキーマを選択します。
Add を選択します。
app.glean.com/settings/installに移動します。Configure MCP Server を選択します。
Host application で、 Custom を選択します。MCP サーバーの場合、目的のサーバーを選択します(デフォルトである可能性があります)。
サーバー URL をコピーします。
Save を選択します。
Snowsight にサインインします。
ナビゲーションメニューで AI & ML » Agents を選択します。
Settings を選択します。
Tools and Connectors を選択します。
Browse Connectors を選択します。
Glean を選択します。
MCP サーバーの説明を入力します。
Server URL の場合、コピーしたサーバー URL を入力します。
MCP サーバーが作成されるデータベースとスキーマを選択します。
Add を選択します。
Snowsight にサインインします。
ナビゲーションメニューで AI & ML » Agents を選択します。
Settings を選択します。
Tools and Connectors を選択します。
Browse Connectors を選択します。
Linear を選択します。
MCP サーバーの説明を入力します。
MCP サーバーが作成されるデータベースとスキーマを選択します。
Add を選択します。
注釈
Salesforce(サンドボックス)組織への管理者アクセスが必要です。
Salesforce組織にナビゲートします。
歯車アイコンから Setup に移動します。
新しいページの検索バーで External Client App Manager を検索します。
New External Client App を選択し、 Enable OAuth を確認します。
アプリが作成されたら、アプリの OAuth Settings にナビゲートします。
スコープと(
sfap_apiが含まれるようにします)、コールバック URI を<snowsight_url>/oauth/complete-secretになるように構成します。Consumer Key and Secret である OAuth クライアント ID とクライアントシークレットはSnowflake外部 API 統合で使用されることに注意してください。
Snowsight にサインインします。
ナビゲーションメニューで AI & ML » Agents を選択します。
Settings を選択します。
Tools and Connectors を選択します。
Browse Connectors を選択します。
Salesforce を選択します。
MCP サーバーの説明を入力します。
MCP サーバー URL を入力します。Salesforceは個別の URLs により MCP サーバーを公開し、ユーザーはアクセスするサーバー/ツールを知る必要があります。最後のステップで取得した OAuth トークンは、スコープが許可している限り、すべてのサーバーとツールで使用できます。
ホストされた各 MCP サーバーのベース URL は次のとおりです。
組織がサンドボックスの場合は
https://api.salesforce.com/platform/mcp/v1-beta.2/sandbox/platform/<server_name>それ以外の場合は
/sandboxなしのhttps://api.salesforce.com/platform/mcp/v1-beta.2/platform/<server_name>
テスト組織がサンドボックスであるため、
test.salesforce.comを OAuth エンドポイントのドメインとして、https://api.salesforce.com/platform/mcp/v1-beta.2/sandbox/platform/<server_name>をEXTERNAL MCP SERVERオブジェクト内のベース URL として使用します。そのベースを使用して必要な MCP サーバー URLs を構築できます。例:
https://api.salesforce.com/platform/mcp/v1-beta.2/sandbox/platform/sobject-allhttps://api.salesforce.com/platform/mcp/v1-beta.2/sandbox/platform/queryhttps://api.salesforce.com/platform/mcp/v1-beta.2/sandbox/platform/search
トークンと認証エンドポイントを入力します。
Token endpoint の場合、
https://<domain>/services/oauth2/tokenを入力します。Authorization endpoint の場合、
https://<domain>/services/oauth2/authorizeを入力します。
注釈
<domain>は、Salesforce組織がサンドボックスの場合はtest.salesforce.com、それ以外の場合はlogin.salesforce.comです。メモしたクライアント ID とクライアントシークレットを入力します。
MCP サーバーが作成されるデータベースとスキーマを選択します。
Add を選択します。
カスタム MCP コネクタ¶
また、カスタムコネクタを手動で構成して、任意の MCP 互換エンドポイントに接続できます。
API 統合の作成の一環として、完全な OAuth 構成を提供します。
または、 API 統合と DCR を使用できます。
MCP サーバーオブジェクトを作成します。
エージェント構成の MCP サーバーを参照します。
カスタム MCP サーバーの OAuth パラメーター¶
次のテーブル表では、カスタム MCP サーバーの OAuth パラメーターについて説明しています。
パラメーター |
型 |
必須 |
デフォルト |
説明 |
|---|---|---|---|---|
OAUTH_CLIENT_ID |
STRING |
有り |
なし |
MCP サーバープロバイダーのクライアント ID |
OAUTH_CLIENT_SECRET |
STRING |
有り |
なし |
MCP サーバープロバイダーのクライアントシークレット |
OAUTH_DISCOVERY_URL |
STRING |
無し |
なし |
自動エンドポイント解決のための OpenID Connect検出 URL |
OAUTH_TOKEN_ENDPOINT |
STRING |
有り |
なし |
アクセストークンの認証コードを交換するためのエンドポイント |
OAUTH_AUTHORIZATION_ENDPOINT |
STRING |
有り |
なし |
ユーザーが接続を承認するエンドポイント |
OAUTH_CLIENT_AUTH_METHOD |
STRING |
無し |
CLIENT_SECRET_BASIC |
認証方法: CLIENT_SECRET_BASIC または CLIENT_SECRET_POST |
MCP コネクタをCortex Agentへ追加する¶
MCP サーバーオブジェクトの作成後、エージェント開発者はCortex Agent構成でそれを参照します。MCP コネクタはAgent Admin UI で使用できます。そこでは、開発者はアカウントレベルで構成された MCP コネクタから閲覧して選択できます。SQL または API を使用して、 MCP コネクタをエージェントに追加することもできます。
Snowsight にサインインします。
ナビゲーションメニューで AI & ML » Agents を選択します。
エージェントのリストからエージェント名を選択します。
MCP Connectors を選択します。
Available Connectors のリストから、追加するコネクタを選択します。
コネクタの詳細を確認し、 Add to agent を選択します。
エージェント開発者は、Agentオブジェクト REST API を使用して外部の MCP サーバーをCortex Agentの仕様に追加します。
これらの MCP サーバーを参照するCortex Agentsは、プロバイダーが提供するツールにアクセスできます。例えば、Atlassianの場合、ツールにはJiraの問題の作成、問題へのコメント、Confluenceページの作成、既存のページの更新などがあります。
エージェントが呼び出されると、各 MCP サーバーからツールリストを取得します。サーバーのオーケストレーションにこれらのツールが含まれています。エージェントは、ユーザーのクエリと MCP サーバーから提供されたツールの説明に基づいてツールを選択し、呼び出します。
Snowflake Intelligence での MCP コネクタの使用¶
Snowflake Intelligence ユーザーは、 Snowflake Intelligence インターフェースを介して外部の MCP サーバーに接続します。
エージェントにアクセスする の指示に従って、 Snowflake Intelligence インターフェースにナビゲートします。
ソースパネルを開き、 Connectors を選択します。
選択したコネクタの横にある Connect を選択します。また、 Manage Connections を選択してから、 Connect を選択します。
ユーザーはサードパーティサービスの認証ページにリダイレクトされ、接続を承認します。
認証後、コネクタはソースリストに Connected として表示されます。エージェントと対話して、外部の MCP サーバーから情報を取得できるようになりました。。
サーバーを切断するには、ユーザーは以下の手順を完了します。
Manage Connections を選択します。
MCP Server 、 Disconnect の順に選択します。
ユーザーは、ソースドロップダウンでコネクタを接続または切断して、エージェントのオーケストレーションに含めるか、除外できます。Connected 状態でないコネクタはオーケストレーションに含まれません。
ユーザーの認証トークンの有効期限が切れると、 Snowflake Intelligence はユーザーに再認証を求めます。
Agent:run API での MCP コネクタの使用¶
Agent:run API を実行して、クライアントインターフェースを介して MCP サーバーに接続します。サードパーティサービスでユーザーを認証するには、次の関数を使用します。
OAuth フローを開始する関数:
OAuth フローを終了する関数:
SYSTEM$START_USER_OAUTH_FLOW は、 API_PROVIDER = EXTERNAL_MCP の API 統合用の認証 URL を返します。ブラウザーで URL を開き、同意を完了し、 URL リダイレクトからのクエリ文字列を使用して同じセッション内で SYSTEM$FINISH_OAUTH_FLOW を実行します。SYSTEM$FINISH_OAUTH_FLOW の詳細については、 SYSTEM$FINISH_OAUTH_FLOW をご参照ください。
MCP サーバーの管理¶
MCP サーバーの一覧表示と説明¶
異なるスコープで外部 MCP サーバーを一覧表示します。
出力にはサーバー名、データベース、スキーマ、所有者、型(構築済みまたはカスタム)、 MCP サーバー URL 、状態(有効または無効)、および関連付けられた API 統合が含まれます。
特定のサーバーの完全な構成を表示するには、以下のようにします。
MCP サーバーの無効化と有効化¶
基になる API 統合を変更することで MCP サーバーを無効化します。無効にすると、すぐにすべてのユーザートークンが無効になり、 MCP サーバーの失効エンドポイントへの呼び出しがトリガーされます。統合を無効にしても、シークレットは削除されません。統合が十分な期間、無効のままであれば、自然に期限切れになります。
警告
API 統合を無効にした場合、その MCP サーバーを使用するすべてのエージェンはすぐにツールにアクセスできなくなります。 Snowflake Intelligence は、コネクタが無効になった場合にユーザーに警告を表示します。再度有効にすると、ユーザーは、初めて接続する場合のように再認証する必要があります。
無効な API 統合を参照する新しい MCP サーバーは作成できません。エージェントの実行中、Snowflakeは MCP サーバーと API 統合の状態両方を確認し、有効なサーバーのみを使用します。
MCP サーバーのドロップ¶
まず MCP サーバーをドロップし、 API 統合をドロップします。OWNERSHIP 権限を持つロールのみがドロップを発行できます。
警告
API 統合をドロップすると、すべての OAuth 構成と保存されたシークレットは永久に削除されます。ドロップする前に、現在 MCP サーバーを使用しているエージェントがないことを確認します。もう一度両方のオブジェクトが必要になったら、ゼロからそれらを再作成する必要があります。
主な考慮事項とベストプラクティス¶
カスタム MCP サーバー: 使用可能な MCP コネクタリストにない MCP エンドポイントに接続している場合、カスタムサーバーを使用します。Snowflakeは、 API 統合でAtlassian、 GitHub 、Glean、Linear、Salesforceのユーザー認証タイプをサポートしています。
最小権限のアクセス: 各ロールに必要最低限の権限のみを付与します。MCP サーバーへのアクセスはツールへのアクセスを自動的に付与しません。ツールごとに個別に権限を付与する必要があります。
OAuth 認証: Snowflakeは、すべての MCP サーバー接続で OAuth の使用のみをサポートしています。
無効またはドロップ: API 統合を無効化しても、その構成は保持されますが、すぐにすべてのユーザートークンが無効になり、ツール呼び出しはブロックされます。API 統合をドロップすると、保存されているすべてのシークレットとともに永久に削除されます。メンテナンスを実行する場合は、統合を無効にします。デコミッショニング時に統合をドロップします。
ホスト名の書式設定: MCP サーバー接続の構成時に、ホスト名にアンダースコア(
_)の代わりにハイフン(-)を使用します。アンダースコアを含むホスト名は、接続の問題を引き起こします。
制限事項¶
MCP コネクタには、次の制限が適用されます。