carto-connect-datawarehouse について
CARTO とデータウェアハウスの接続を設定・管理するスキルです。新しいウェアハウスの接続、アクセス問題の調査、認証情報の更新を行うユーザー向けで、エンジン選択や権限、認証、書き込み範囲の注意点も扱います。
主な機能
- 01接続の一覧表示・確認・作成・更新
- 02複数のデータウェアハウスエンジンに対応
- 03接続の削除と認証情報の更新
- 04認証・リージョン・権限の問題確認
活用シーン
- 01新しいデータウェアハウスを CARTO に接続
- 02接続の認証エラーや権限エラーの調査
- 03認証情報の更新やプロジェクト・DB 範囲の変更
MCP 対応
CARTO MCP サーバーの explore_data で接続を一覧表示し、manage_connections で作成・更新、delete で削除します。詳細の取得や書き込み操作はセッション権限に依存し、トークンセッションでは carto connections CLI を利用できます。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cartodb/ agent-skills --skill carto-connect-datawarehouseインストール後、Claude Code で/carto-connect-datawarehouseを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/bigquery.mddatabricks.mdoracle.mdpostgres.mdredshift.mdsnowflake.md詳細
carto-connect-datawarehouse
CARTO はユーザー自身のデータウェアハウスで空間分析を実行します。接続は、CARTO とデータウェアハウスをつなぐ橋渡し役です。接続には、認証情報、対象となるプロジェクト/データベースのスコープ、場合によってはサービスアカウントや PAT が含まれます。その他のほとんどの CARTO 操作(クエリ、インポート、マップの作成、ワークフローの実行)には、既存の接続が必要です。
| タスク | MCP | CLI(代替手段) |
|---|---|---|
| 接続の一覧表示/確認 | explore_data(任意のセッションで list_connections、get_connection は OAuth 専用) | carto connections list / get |
| 接続の作成/更新 | manage_connections(create、update)— OAuth セッションのみ | carto connections create / update |
| 接続の削除 | delete(kind=connection)— OAuth セッションのみ | carto connections delete |
アクセス経路の使い分け。 MCP サーバーが接続されている場合、一覧表示には
explore_data(list_connections)、作成/更新にはmanage_connections、削除にはdeleteを使用します。トークンセッションで利用できるのはlist_connectionsのみです。get_connectionと書き込みツール(manage_connections、delete)には OAuth が必要なため、carto connectionsCLI に切り替えてください。サーバーが接続されていない場合や、スクリプトでセットアップする場合も CLI を使用してください。以下のエンジン選択に関するガイダンスと注意点は、どちらの経路でも適用されます。検出の手がかりについては、carto-basics/references/access-paths.mdを参照してください。
このスキルを使う場面
- ユーザーが新しいデータウェアハウスを CARTO に接続したい場合。
- ユーザーが接続の問題(認証エラー、テーブルが見つからない、権限エラー)をデバッグしている場合。
- 下流のスキルで接続名が必要だが、ユーザーがどのエンジンを使っているかまだわからない場合。
- ユーザーが認証情報をローテーションする場合や、別のプロジェクト/データベースに移行する場合。
接続が確立され、その中身を確認したい場合は、carto-explore-datawarehouse を使用してください。
簡単なライフサイクル(CLI)
carto connections list --json # what's already connected? (--all, --search "prod")
carto connections get <id> # detailed view of one connection
carto connections create # interactive create
carto connections update <id> # rotate credentials, change scoping
carto connections delete <id> # remove (irreversible)
一覧表示/確認は破壊的ではありません。実行したい操作を決める前に、自由に実行してください。すでに接続がある場合は、新しい接続を作成せず、既存の接続を使用してください。
エンジンの選択
| エンジン | 選択する場面 | リファレンス |
|---|---|---|
| BigQuery | Google Cloud ユーザー向けです。CARTO の主要なインテグレーションであり、充実した GIS 関数をネイティブに利用できます。 | references/bigquery.md |
| Snowflake | Snowflake を利用するお客様向けです。SQL 関数とネイティブ型を通じて地理空間機能を利用できます。 | references/snowflake.md |
| Redshift | Redshift Serverless または RA3 クラスターを利用する AWS のお客様向けです。 | references/redshift.md |
| Postgres | PostGIS を使用するセルフホスト環境または RDS Postgres 向けです。小規模から中規模のデプロイでよく使われます。 | references/postgres.md |
| Databricks | Lakehouse/Unity Catalog のユーザー向けです。対話型ワークロードには SQL Warehouses を使用します。 | references/databricks.md |
| Oracle | Spatial を備えた Oracle Database 向けです。オンプレミス、OCI、Autonomous Database で利用できます。 | references/oracle.md |
よくある注意点
- 認証モードの不一致:BigQuery は OAuth(対話型)とサービスアカウント JSON(CI)の両方をサポートしています。環境ごとにどちらか一方を選び、一貫して使用してください。両方を混在させると、共有接続で問題が発生します。
- リージョンとプロジェクト:一部のエンジンでは、アカウント/プロジェクトとリージョンの両方が必要です(Snowflake、Redshift)。リージョンを指定しないと、権限エラーではなく「endpoint not found」が返されることがよくあります。
- デフォルトのデータベース/スキーマのスコープ:CARTO はタイルセット、名前付きソース、分析結果をデータウェアハウスに書き戻します。接続を作成する前に、CARTO が書き込み可能なデータセット/スキーマを確認してください。
- 権限:テーブルの詳細確認と読み取りの権限は、ユーザーの CARTO ロールではなく、CARTO が保持する認証情報によって決まります。権限の低いサービスアカウントを使用している場合、CARTO Admin でもデータウェアハウスから「permission denied」が返されます。
このスキルで対応していないこと
- 既存の接続のテーブル/スキーマを参照すること —
carto-explore-datawarehouse。 - ウェアハウスに対して SQL を実行すること —
carto-query-datawarehouse。 - ウェアハウスにファイルをインポートすること —
carto-import-export-data。