ClaudeとZoho Analyticsを連携する方法 — 接続経路の選び方と書き込みの線引き
Zoho Analytics MCPサーバーをClaudeにつなぐ5つの経路、OAuth資格情報とデータセンター別URLの設定、SQL実行から行の削除まで可能なツールの範囲、ベータ版の注意点をまとめます。
Zoho Analytics MCPサーバーでClaudeにできること
Zoho Analytics MCPサーバーは、Zoho AnalyticsのV2 APIの手前に置くミドルウェアです。Claudeが質問を受けるとサーバーを呼び、サーバーがAPIを呼び、結果をClaudeが文章にします。ベータ版として公開されており、ツールは約20本あります。
読み取りだけのコネクタではありません。できることは4系統に分かれます。
- データ照会: ワークスペースに対してSQLのSELECTを実行する
- レポート作成: 棒・折れ線・円・散布・バブルのグラフ、ピボット、集計レポートを作る
- データ書き込み: 行の追加・更新・削除、テーブルやワークスペースの作成、データのインポート
- 探索: ワークスペース一覧、ビュー検索、ビューの構造の取得
つまり「先月の売上上位5商品は」と聞けば、Claudeがワークスペースを探し、スキーマを読み、SQLを組んで答えるところまで進みます。BIの画面でフィルタを組み直す代わりに、会話で問い合わせを繰り返す使い方です。
接続経路は5つ。Claudeの使い方で選ぶ
Zoho側の経路は、ローカル実行とリモートの2系統に分かれます。ローカルは各自のPCでサーバーを動かし、資格情報も端末ごとに持ちます。リモートはHTTPSで共有のサーバーに接続するので、端末への導入が要りません。
| 経路 | 系統 | 向く人 | 認証の持ち方 |
|---|---|---|---|
| Claudeコネクタ(マーケットプレイス) | 系統ローカル | 向く人Claude Desktop(macOS・Windows)の個人利用 | 認証の持ち方Self-Clientの資格情報を入力 |
| Docker | 系統ローカル | 向く人Claude Desktop・VS Code・Cursorで揃えたい人 | 認証の持ち方環境変数で渡す |
| NPM | 系統ローカル | 向く人Dockerを避けたい人 | 認証の持ち方設定ファイルの環境変数 |
| Zoho MCP(マネージド) | 系統リモート | 向く人チーム共有・Claude Codeなどからの利用 | 認証の持ち方認可モードを選ぶ |
| セルフホスト | 系統リモート | 向く人自社で共有サーバーを運用する組織 | 認証の持ち方サーバー型OAuthアプリ |
Claudeコネクタの対応ホストはClaude Desktopのmac・Windows版だけです。ブラウザ版のClaudeや他のホストからは使えないため、その場合はDockerかNPM、リモートを選びます。
Claude Desktopのコネクタで入れる手順
Docker・Node.js・コマンド操作は不要です。必要なのは、Zoho側で作る資格情報の一式です。
Claudeコネクタを入れる流れ
- 1
Zoho Developer ConsoleでSelf-Clientを作る
Zoho Analytics APIのスコープを有効にし、クライアントID・クライアントシークレット・リフレッシュトークンを発行します。
- 2
組織IDとデータセンターのURLを控える
ANALYTICS_ORG_IDに加え、アカウントが登録されたリージョンのサーバーURLを2つ使います。
- 3
マーケットプレイスから追加する
Claude Desktopの設定の統合タブで、Zoho Analyticsの項目の追加を押します。
- 4
ダイアログに値を入れて Install
入力した資格情報はClaude Desktopが検証し、通るとMCPサーバーが登録されます。以後の新しい会話で使えます。
入力する項目は6つです。
| 変数 | 内容 |
|---|---|
| ANALYTICS_CLIENT_ID | 内容OAuthのクライアントID |
| ANALYTICS_CLIENT_SECRET | 内容OAuthのクライアントシークレット |
| ANALYTICS_REFRESH_TOKEN | 内容OAuthのリフレッシュトークン |
| ANALYTICS_ORG_ID | 内容Zoho Analyticsの組織ID |
| ACCOUNTS_SERVER_URL | 内容Zoho AccountsのサーバーURL |
| ANALYTICS_SERVER_URL | 内容Zoho AnalyticsのサーバーURL |
最後の2つはデータセンターで決まります。日本のアカウントなら https://accounts.zoho.jp と https://analyticsapi.zoho.jp です。米国は .com、欧州は .eu、インドは .in、豪州は .com.au、カナダは zohocloud.ca 系で、それぞれ対になるURLを使います。
落とし穴
リージョンのURLを間違えると接続が失敗するか空の結果になる
Zoho側の解説では、URLがアカウントのデータセンターと合わないと、接続に失敗するか、認証は通るのに結果が空になります。設定でいちばん多いつまずきとして挙げられています。「データが見えない」と感じたら、まずURL2つの .jp や .com を見直します。
設定ファイルで入れる: NPMとDockerの書き方
マーケットプレイスを使わない場合は、Claude Desktopの設定の開発者タブから claude_desktop_config.json を開き、mcpServers に追記します。NPM経路はNode.jsのパッケージを npx で起動するだけで、ビルドやインストールの手順がありません。資格情報は同じ設定の env に入れます。
{
"mcpServers": {
"zoho-analytics-mcp": {
"command": "npx",
"args": ["zoho-analytics-mcp-server@latest"],
"env": {
"ANALYTICS_CLIENT_ID": "your-client-id-here",
"ANALYTICS_CLIENT_SECRET": "your-client-secret-here",
"ANALYTICS_REFRESH_TOKEN": "your-refresh-token-here",
"ANALYTICS_ORG_ID": "your-org-id-here",
"ACCOUNTS_SERVER_URL": "https://accounts.zoho.jp",
"ANALYTICS_SERVER_URL": "https://analyticsapi.zoho.jp"
}
}
}
}Docker経路では、先に docker pull zohoanalytics/mcp-server:latest でイメージを取得し、command を docker にして run の引数に同じ変数を -e で並べます。NPMとの違いは ANALYTICS_MCP_DATA_DIR で、一時的なデータファイルを置くディレクトリを指定し、-v でコンテナに渡します。このディレクトリは import_data や download_file のようなファイルを扱うツールが使います。
設定ファイルに書いたクライアントシークレットとリフレッシュトークンは平文で残ります。ファイルをバージョン管理に入れない、共有しないという扱いは、コネクタ経路にはない注意点です。
チームで使う: リモートのZoho MCPとClaude Code
全員に資格情報を配りたくないなら、リモートが現実的です。Zoho MCPのWebアプリ(日本は mcp.zoho.jp)でサーバーを作り、Zoho Analyticsのツールから使うものを選び、認可モードを決めると、サーバーごとに固有のURLが発行されます。ツールの構成を変えたサーバーを複数作れます。
Zoho側が接続手順を案内するホストは、Claude Desktop・Cursor・Windsurf・VS Code・その他のMCPクライアントです。Claude Codeは名指しされていませんが、HTTPのMCPサーバーを追加する標準のコマンドが使えます。発行されたURLを次のように渡す形です(URLは発行された値に置き換えます)。
claude mcp add --transport http ZohoAnalyticsMCP \
<Zoho MCPで発行されたURL>認可モードによっては、初回の利用でブラウザが開いてZohoへのログインを求められます。ログイン後はセッション内の /mcp で接続状態を確かめられ、切れたときは/mcp reconnect allでの再接続が使えます。
自社で共有サーバーを持つ場合は、Dockerイメージのリモート用タグ remote-v1 を使います。ここだけ認証の作りが違います。ローカル系はSelf-Clientですが、共有サーバーはサーバー型のOAuthアプリが必須で、リダイレクトURIに <公開URL>/auth/callback を登録します。Self-Clientは使えません。利用を許す組織は MCP_SERVER_ORG_IDS にIDをカンマ区切りで並べ、本番運用にはメモリでなくRedisのストレージを勧めています。利用者の側は、設定に <公開URL>/mcp を type: http で書くだけです。
最初の問い合わせは読み取りで試す
つないだ直後は、更新を伴わない質問から始めると挙動が見えます。ワークスペースが多い環境では、探索ツールの返却が既定20件までなので、名前を添えると探す手間が減ります。
営業分析ワークスペースにあるテーブルとレポートを一覧にして
受注テーブルの列と型を教えて
2026年第3四半期の商品別売上上位5件を、SQLも見せて出して3つ目のように「SQLも見せて」と頼むと、Claudeがどのテーブルをどう結合して数字を出したかが残ります。BIの画面と数字が合わないときに、SQLの条件を突き合わせられます。この質問文は書き方の例で、ワークスペース名や列名は自分の環境のものに置き換えます。
書き込み系ツールをどこまで許すか
ツール一覧には、照会と並んで破壊的な操作が入っています。
| 区分 | ツール |
|---|---|
| 探索・照会 | ツールget_workspaces_list、search_views、get_view_details、query_data、export_view |
| 作成 | ツールcreate_workspace、create_table、create_chart_report、create_pivot_report、create_summary_report、create_aggregate_formula、create_query_table |
| 書き込み | ツールimport_data、add_row、update_rows、delete_rows |
| 削除 | ツールdelete_view |
| ローカル用 | ツールanalyse_file_structure、download_file |
業務の数字を会話で見たいだけなら、add_row・update_rows・delete_rows・delete_view は不要です。Zoho MCPのマネージド経路なら、サーバー作成時にツールを選べるので、照会系だけを選んだサーバーを分けて作れます。
ローカル経路でツールを削れないときは、Claude Code側の権限で止めます。Claude Codeの権限ルールは mcp__<サーバー名>__<ツール名> の形で書けるので、上の例の名前なら次のとおりです。
{
"permissions": {
"deny": [
"mcp__ZohoAnalyticsMCP__delete_rows",
"mcp__ZohoAnalyticsMCP__update_rows",
"mcp__ZohoAnalyticsMCP__delete_view"
]
}
}ここで止められるのはClaude Codeから呼ぶ場合だけです。Claude Desktopで使うなら、Zoho側で発行する資格情報とユーザーの権限を最小にしておくことが、実質的な線引きになります。Zoho自身も、本番のワークスペースにつなぐ前にOAuth資格情報のアクセス範囲を絞るよう案内しています。
ベータ版で知っておく制限
- ベータ版で、ツール名や提供内容は変わる前提です。名前を決め打ちした自動化は壊れうるため、権限ルールも更新のたびに見直します
- 呼び出しごとにZoho AnalyticsのAPIユニットを消費します。頻度の高い自動エージェントでは累積に注意します
- クエリで集計されたデータはClaudeに渡り、回答の生成に使われます。個人情報や機密を含むワークスペースは、データの扱いの方針を確かめてから接続します
query_dataが返す行は既定で20件、待ち時間は結果待ちの間隔が4秒、キューで待てる時間が120秒、実行が30秒です。環境変数で変えられるのはローカル経路で、件数が多い集計はSQL側で絞るほうが確実です- ワークスペース一覧とビュー一覧の返却数の既定も、それぞれ20件です
APIの利用枠はプランごとに違います。MCPサーバー自体はAPI経由で動くため、Ask Ziaの対象プラン(PremiumとEnterprise)とは別の条件になりますが、自分のプランのAPI可否はZoho Analyticsの料金ページで確かめます。
Ask Ziaとの違い、ほかのZoho連携との使い分け
Ask ZiaはZoho Analytics内蔵のAIアシスタントで、製品の画面の中で使い、予測や異常検知も扱います。MCPサーバーを通したときに推論するのはClaudeで、サーバーが渡すのはAPI経由のデータへのアクセスです。Zoho側は「Ask Ziaは製品の中で働く人向け、MCPは外から動くAIエージェント向け」と整理しており、置き換えではなく併用の関係です。
同じZohoのZoho CRMコネクタやZoho Deskコネクタは、顧客・商談・チケットの業務データを扱います。Zoho Analyticsは、それらを集計したワークスペースを横断して引く側です。BIを会話で引く別製品の例はOmni Analyticsのコネクタにあり、あちらはセマンティックモデルを通して指標の定義を共有する作りで、SQLを直接組むZohoのMCPとは入口が異なります。
つまずきの切り分け
| 症状 | 見る場所 |
|---|---|
| 追加できない | 見る場所コネクタ経路はClaude Desktopの導入が前提。ブラウザ版では入れられない |
| 認証が通らない | 見る場所Developer Consoleでリフレッシュトークンが有効か。Claude Desktopの設定でZoho Analyticsの項目から資格情報を更新できる |
| データが空 | 見る場所ACCOUNTS_SERVER_URLとANALYTICS_SERVER_URLのリージョン。リモートなら、サーバーに載せたツールとログインしたアカウントの権限 |
| リモートに繋がらない | 見る場所MCPホストがHTTPトランスポートに対応しているか。URLが自分のリージョンのものか |
| ファイル系で失敗 | 見る場所ローカル経路のデータ用ディレクトリの存在・書き込み権限・空き容量 |
まとめ
Zoho Analytics MCPは、SQL照会からレポート作成、行の削除までをClaudeに渡せる経路です。個人でClaude Desktopから試すならマーケットプレイスのコネクタ、チームで使うならZoho MCPのマネージドサーバーが入口になります。先に決めるのは接続方法より、どのツールを渡すかです。照会系に絞ったサーバーから始め、書き込みは必要になった時点で足すと、ベータ版の変更にも巻き込まれにくくなります。