Claude Media
CARTO MCPサーバーをClaudeにつなぐ手順 — 地図付きの空間分析

CARTO MCPサーバーをClaudeにつなぐ手順 — 地図付きの空間分析

CARTOのMCPサーバーをClaude.ai・Claude Desktop・Claude Codeにつなぐ手順です。URLだけで接続できる理由、OAuthとAPIトークンの差、地図がチャットに描画される条件を押さえます。

CARTO MCPサーバーをClaudeにつなぐと何ができるか

CARTOは、クラウドのデータウェアハウス(DWH)に置いた位置情報データを地図にして分析するプラットフォームです。そのMCPサーバーをClaudeにつなぐと、DWHの探索、空間SQLの実行、地図(Builder map)の作成、ワークフローの組み立てと実行を、会話の中から進められます。

AIモデルは使っているアシスタント側(Claude)で動きます。CARTOが受け取るのはアシスタントが送るツール呼び出しだけで、会話の内容は見ません。

ツールは自然文の依頼から選ばれるので、名前を覚える必要はありません。できることは6つの分類にまとまっています。

分類エージェントができること
データの探索エージェントができること接続の一覧、テーブルの閲覧と検索、列の分布の確認
地図の作成と編集エージェントができることテーブルやSQLから地図を作る、レイヤーのスタイル変更、ウィジェットとポップアップの追加、公開範囲の設定
ワークフローエージェントができることフィルタ・空間結合・集計・エンリッチを組んで検証し、同期または非同期で実行、スケジュールも設定
クエリと分析エージェントができること空間SQL、住所のジオコーディング、等時間圏(アイソライン)と経路、Data Observatoryでの補強
インポートとエクスポートエージェントができること地理空間ファイルのDWHへの取り込み、結果の書き出し、接続間のデータ移動
ワークスペース管理エージェントができること接続・認証情報・名前付きソース・プロジェクト、管理者ならユーザーや組織設定

組織で作ったワークフローをMCPツールとして公開すると、この一覧に自社のツールを足せます。

同じ地図系の連携にはClaudeとFelt Mapsの連携もあります。Feltは地図の作成と共有が中心で、CARTOはDWH上のデータを直接クエリして分析するところに重心があります。

接続前に決める2つのこと — URLと認証方式

MCPサーバーURLはワークスペースからコピーする

URLはCARTOのワークスペースに表示されます。EditorとAdminは「Developers > Workflow API & MCP Server」にあります。Guest以外なら「Settings > CARTO AI > CARTO MCP Server」でも見られます。

形は https://<region>.api.carto.com/mcp/<account_id> です。ただし手で組み立てず、コピーするのが確実です。セットアップの失敗でいちばん多いのがここだと書かれています。

組織がシングルサインオン(SSO)でCARTOにログインしているなら、標準のURLの下にある「SSO login」用のURLを使います。ログインが自社のIDプロバイダー経由になります。

セルフホスト版と専用デプロイでは、パスが https://<host>/api/mcp/... と /api/ 付きになります。パスを間違えると、中身のない 405 Not Allowed が返ります。

OAuthかAPIアクセストークンか

認証方式で、エージェントが触れる範囲が決まります。

方式向く用途エージェントが使える範囲
OAuth(ユーザー単位)向く用途Claudeのような対話クライアントエージェントが使える範囲ロールが許すツール。EditorとAdminは地図の作成・編集とワークフローの作成も可能
OAuth(M2M)向く用途人が介在しないサービス間連携エージェントが使える範囲全ツール
APIアクセストークン向く用途読み取りと探索だけの手軽な接続、静的トークンしか受けない環境エージェントが使える範囲閲覧・SQL実行・ワークフロー実行状況の確認など。地図やワークフローの作成と管理者機能は使えない

目安は「エージェントに何かを作らせるならOAuth、見るだけならトークン」です。ClaudeはOAuthで接続するので、ここから先はOAuthが前提です。

どちらの方式でも、エージェントの操作はあなたの権限の範囲です。実行内容は組織のアクティビティデータに記録され、通常のAPI利用と同じようにクォータを消費します。

ロール別の見え方は、OAuth接続でこう分かれます。

ツール群AdminEditorViewer
地図の作成・更新(create_map / update_map)Admin可Editor可Viewer不可
地図の読み取り・表示(read_maps / view_map)Admin可Editor可Viewer可
ワークフローの作成・スケジュールAdmin可Editor可Viewer不可
ワークフローの実行(run_workflow)Admin可Editor可Viewer状態と結果の確認のみ
データ探索・SQL・ジオコーディング(explore_data / execute_query / geocode)Admin可Editor可Viewer可
接続の管理・データのインポートAdmin可Editor可Viewer不可

Viewerロールで接続して「地図を作って」と頼んでも、create_map はそもそもツール一覧に出ません。地図を作らせたい人は、EditorかAdminのアカウントでサインインします。

Claude.aiとClaude Desktopでつなぐ

ClaudeはCIMD(Client ID Metadata Document)という仕組みで、CARTO側に自分を自動登録できます。OAuthクライアントの作成や登録は不要で、URLを渡してサインインするだけです。Claude.ai、Claude Desktop、Claude Codeの3つがCIMDに対応しています。

手順

Claude.aiでCARTOを追加する流れ

  1. 1

    コネクタ設定を開く

    Claude.aiの「Settings → Connectors」を開き、「Add custom connector」を押します。

  2. 2

    名前とURLを入れる

    名前は CARTO など任意です。URL欄にはワークスペースからコピーしたMCPサーバーURLを貼ります。

  3. 3

    追加して接続する

    「Add」のあと「Connect」を押します。

  4. 4

    CARTOでサインインする

    CARTOのログイン画面に移るので、サインインして許可します。

Claude Desktopも同じ手順で、入り口は「Settings → Connectors」です。最後のサインインまで同じ流れになります。

カスタムコネクタはFree、Pro、Max、Team、Enterpriseの各プランで使えます。Freeは1つまでです。Team・Enterpriseでは、コネクタを組織に追加できるのはOwnerとPrimary Ownerなどに限られるため、メンバーは先にOwnerへ追加を依頼します。コネクタ追加の一般的な流れは、ClaudeのコネクタとChatGPTのアプリの違いでも比べています。

Claude Codeでつなぐ

Claude Codeは claude mcp add で追加します。CARTOがClaude Codeを自動で認識するので、SPA OAuthクライアントは要りません。

claude mcp add --transport http carto \
  https://<region>.api.carto.com/mcp/<account_id>

追加したら、Claude Codeの中で /mcp を実行して「Authenticate」を選びます。ブラウザでCARTOのログインが開き、OAuthが完了します。SSOの組織は、SSO用のURLで同じ手順を踏みます。

Claude Code向けには、MCPのほかにAgent SkillsとCLIも用意されています。

  • Agent Skills: ツールの選び方、DWHごとのSQL方言、よくある空間分析のレシピを教えるプレイブック
  • CARTO CLI: スクリプト、CI/CD、一括処理、利用ログのSQL検索など深い管理向け

Skillsのインストールはこの2行です。

/plugin marketplace add CartoDB/agent-skills
/plugin install carto-skills@carto-agent-skills

CLIは npm install -g @carto/carto-cli で入れ、carto auth login で認証します。Skillsは、MCPで済む処理とCLIに回す処理を自分で判断するように作られています。

Claude.aiとClaude Desktopでも、同じSkillsをプラグインとして入れられます。「Customize」の「Plugins」タブで、CartoDB/agent-skills をマーケットプレイスに追加し、carto-skills をインストールします。プラグインは有料プランで使えます。

地図がチャットに出る場所と出ない場所

地図のインライン描画は、MCP Appsに対応したクライアントだけで起きます。ドキュメントが挙げているのは、Claude.ai、ChatGPT、Claude Desktopです。

対応していないクライアントでは、地図ツールは「作成した」という文字の確認を返すだけです。その場合は、エージェントに地図のURLを聞いてCARTOで開きます。Claude Codeはこの一覧に入っていないので、ターミナルから使うときはURLを受け取る前提で考えます。

くらべる

同じ依頼でも、つなぐ先で戻ってくるものが変わる

インライン描画

Claude.ai / Claude Desktop

会話の中にインタラクティブな地図が表示されます。結果をチャットから離れずに確認できます。

URLで確認

Claude Code

地図は作成されますが、返るのはURLです。ブラウザでCARTOを開いて見ます。

依頼の書き方と、ツールが動く順番

エージェントは依頼文からツールを選ぶので、データの場所と欲しい成果物を一緒に伝えるとうまく回ります。次は、ドキュメントの機能一覧に沿って組んだ依頼の例です。

CARTOの接続一覧から店舗データを置いているDWHを探して、
stores テーブルの列と分布を確認してください。
そのあと、各店舗から徒歩10分圏のアイソライン内にある
人口を集計し、結果を地図にして共有設定は組織内にしてください。

この依頼が通るなら、裏ではおおむね次の順にツールが使われます。

  1. explore_data で接続とテーブル、列の分布を確認する
  2. calculate_isolines で等時間圏を作り、execute_query で人口を空間結合して集計する
  3. create_map で地図を作り、公開範囲を設定して開く

ツール名はリファレンスの表に載っている名前です。実際にどのツールが選ばれるかは依頼の書き方とロール次第なので、個別の呼び出しは会話中のツール実行表示で確かめます。

定型の分析を繰り返すなら、ワークフローにして保存し、MCPツールとして公開する形が向いています。条件が毎回同じ処理は、会話のたびにSQLを組み直させるより、入力だけを渡すツールにしたほうがぶれません。

つまずきやすいところ

落とし穴

405 Not Allowedが返る

セルフホスト版や専用デプロイでは、URLのパスが /api/mcp/ 形式になります。/api/ を付け忘れたパスでは、このエラーになります。ワークスペースに表示されたURLをコピーします。

落とし穴

APIトークンで接続したら地図が作れない

トークン接続は読み取りと探索のサブセットだけです。さらに、MCP Serverのスコープを入れただけでは使えるツールが4つにとどまり、SQLやジオコーディングなどは「Allowed APIs」に足した分だけ増えます。SQLのグラントは、source にクエリ本文か * を指定します。テーブル名にすると、そのテーブルへの SELECT が 403 になります。

落とし穴

ワークスペースにURLが見つからない

「Developers」のメニューはEditorとAdminに出ます。Guestは「Settings > CARTO AI」にもURLが出ないので、Adminにロールの確認を頼みます。Claude Code向けの接続ガイドには「Settings > CARTO MCP Server」という短い表記もありますが、探すときは前半で挙げた2つのパスをたどります。

ChatGPTやCopilot Studioなど、CIMDに対応していないクライアントは、SPA OAuthクライアントをCARTOで作り、コールバックURLを登録する手間が加わります。Claude系だけがURLだけで済むのは、この差です。AWSのMCPで認証方式の使い分けを扱ったClaudeとAWS MCPサーバーの連携も、考え方の参考になります。

まとめ

CARTO MCPサーバーのClaude接続は、ワークスペースでURLを取り、コネクタ(Claude.ai・Desktop)か claude mcp add(Claude Code)に貼ってサインインするだけです。作らせるならOAuth、見るだけならトークンという線引きがあり、ロールが低いと地図の作成ツールは出てきません。

地図を会話の中で見たいならClaude.aiかClaude Desktop、スクリプトと組み合わせた作業ならSkillsとCLIを足したClaude Code、という使い分けになります。

この記事を共有:XはてブLinkedIn