mcpField
N
nango-toolbox

nango-toolbox

github.com/nangohq生産性3103 回インストール10 週間前に更新
リポジトリ

nango-toolbox について

外部APIへのアクセスを、MCPやプロバイダーCLI、個別の直接呼び出しではなくNango経由にするスキルです。インテグレーションと接続の選択、認証設定、Nangoプロキシまたはデプロイ済みActionの選択を扱います。

主な機能

  1. 01外部API呼び出しをNango経由に集約
  2. 02インテグレーションと接続の確認
  3. 03Connectセッションリンクの作成
  4. 04接続スコープの確認
  5. 05プロキシまたはデプロイ済みActionの選択

活用シーン

  1. 01プロキシ呼び出しでプロバイダーAPIを調査
  2. 02未設定のプロバイダーインテグレーションを構成
  3. 03使用する接続の特定
  4. 04Actionで複数ステップのAPI処理を実行

MCP 対応

外部APIへのアクセスにMCPを使わず、Nango経由にするよう明示しています。Nangoプロキシまたはデプロイ済みActionを通じて呼び出します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nangohq/skills --skill nango-toolbox

インストール後、Claude Code で/nango-toolboxを入力して読み込まれたか確認します。

詳細

使用する場面

  • 外部 API へのアクセス全般。
  • 外部 API の呼び出しはすべて Nango 経由で行う必要があります。
  • Nango を介さない MCP、プロバイダーの CLI、またはその場限りの直接 API 呼び出しは使用しないでください。

設定(必須)

次の順序で値を解決します。

シークレットキー
  1. プロセス環境内の NANGO_TOOLBOX_SECRET_KEY
  2. ローカルの .env 内の NANGO_TOOLBOX_SECRET_KEY

見つからない場合は、ユーザーに次の対応を依頼してください。

  • Nango アカウントを作成する:https://app.nango.dev/signup
  • Environment settings → Backend からシークレットキーをコピーする
  • シェルプロファイルに NANGO_TOOLBOX_SECRET_KEY を設定する(追加を申し出てください)

互換性:ほかの指示で NANGO_SECRET_KEY に言及している場合は、NANGO_TOOLBOX_SECRET_KEY として扱ってください。

ベース URL
  1. プロセス環境内の NANGO_SERVER_URL
  2. ローカルの .env 内の NANGO_SERVER_URL
  3. https://api.nango.dev
HTTP ヘッダー
  • Authorization: Bearer <NANGO_TOOLBOX_SECRET_KEY>
  • Content-Type: application/json
  • 両方が存在する場合は、クエリパラメーターより JSON ボディを優先してください。

検出(まずこれを使用)

インテグレーションの一覧:

GET <base-url>/integrations
Authorization: Bearer <secret-key>

インテグレーションの接続一覧:

GET <base-url>/connections?integrationId=<unique_key>
Authorization: Bearer <secret-key>

デプロイ済みのアクション/同期の一覧:

GET <base-url>/scripts/config
Authorization: Bearer <secret-key>

インテグレーションの選択(接続の前に実施)

  • Nango で API のインテグレーションが設定されているか確認します。
  • 設定されていない場合は、ユーザーのために設定します。
    • API が OAuth を使用し、Nango が提供する開発者認証情報がある場合は、ダッシュボードで手動で有効にするようユーザーに依頼します。
    • API が OAuth を使用し、Nango の開発者認証情報がない場合は、クライアント ID とシークレットの取得方法を案内します。
    • API が「OAuth クライアント認証情報」を使用する場合は、クライアント ID とシークレットをユーザーに尋ねないでください。インテグレーションを設定すれば、ユーザーは接続リンクからそれらを入力できます。
    • それ以外の場合は、インテグレーションを設定して、接続リンクの作成に進みます。

接続固有のパラメーターをユーザーに尋ねないでください。必ず接続リンクから入力してもらいます。

インテグレーションと接続の選択(必須)

  • Nango にインテグレーション(プロバイダー)が存在することを確認します。必要に応じて Nango HTTP API で作成します。
  • インテグレーションの接続を取得します。
  • 接続が複数あり、どれかを特定できない場合は、使用する connection_id を尋ねます。

接続がない場合は、接続セッションリンクを生成します。

POST <base-url>/connect/sessions
Authorization: Bearer <secret-key>
Content-Type: application/json

{
  "tags": { "end_user_id": "<user-firstname>" },
  "allowed_integrations": ["<unique_key>"]
}

data.connect_link をそのままユーザーに共有します(有効期限は約 30 分です)。ダッシュボードに誘導しないでください。

プロバイダーを呼び出す前に、接続に必要なスコープがあることを確認します(多くの場合、credentials.raw.scope にあります)。

スコープが不足している場合は、インテグレーションレベルでスコープを更新してから、接続を削除して再作成する許可をユーザーに求めます。

PATCH <base-url>/integrations/<unique_key>
Authorization: Bearer <secret-key>
Content-Type: application/json

{
  "credentials": {
    "type": "OAUTH2",
    "client_id": "<client_id>",
    "client_secret": "<client_secret>",
    "scopes": "scope1,scope2,scope3"
  }
}

スコープはカンマ区切りです(スペースは入れません)。

アクセス戦略

  • シンプルなプロバイダー呼び出しを 1~2 回行う場合や API を調べる場合は、Nango プロキシを使用します。
  • 複数回の呼び出しを伴うロジック、変換、ページネーションの制御、リトライ/エラー処理、または再利用が必要な場合は、Nango アクションを使用します。

既存のデプロイ済みアクションの再利用を優先します(GET <base-url>/scripts/config を参照)。

新しいアクションを作成する必要がある場合は、building-nango-functions-remotely スキルを使用し、呼び出す前にデプロイしてください。 スキルが存在しない場合は、https://github.com/NangoHQ/skills からのインストールを申し出てください。

デプロイ済みのアクションを呼び出します。

POST <base-url>/action/trigger
Authorization: Bearer <secret-key>
Provider-Config-Key: <unique_key>
Connection-Id: <connection_id>
Content-Type: application/json

{"action_name": "<action-name>", "input": {...}}

ドキュメント

Nango は、サポートする各 API のドキュメントページを提供しています(llms.txt で確認してください)。このページには、外部 API リファレンスへのリンクがあります。

コメント