catalyst-datastore について
Zoho Catalyst Data Store のテーブル操作、CRUD、ZCQL を扱うスキルです。作業前に Catalyst MCP の接続とプロジェクトコンテキストを確認し、権限、結果の展開、ページネーションにも注意します。
主な機能
- 01MCP 接続の事前確認
- 02テーブル検索と作成の案内
- 03CRUD と ZCQL の資料
- 04権限と結果処理の確認
- 05大規模クエリのページネーション案内
活用シーン
- 01Catalyst テーブルの作成や検索
- 02Data Store レコードの読み取りや変更
- 03ページネーション付き ZCQL クエリの作成
MCP 対応
CatalystbyZoho_* MCP ツールで組織とプロジェクトのコンテキストを設定し、テーブルの検索や作成、Data Store 操作を行う必要があります。
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ catalystbyzoho/ agent-skills --skill catalyst-datastoreインストール後、Claude Code で/catalyst-datastoreを入力して読み込まれたか確認します。
同梱ファイルreferences/datastore-basics.md
詳細
前提条件 — まずお読みください
データストアを操作する前に、必ず MCP の接続を確認してください。
- 利用可能なツール一覧から
CatalystbyZoho_*ツールを検索します。 - 見つからない場合: 処理を中止してください。コードの作成、ファイルのスキャフォールディング、コンソールでの手順の案内は行わないでください。
catalyst-zoho-mcpスキルを読み込み、MCP のセットアップをユーザーに案内します。ユーザーがCatalystbyZoho_*ツールを確認できたと伝えるまで、先に進まないでください。 - 見つかった場合:
CatalystbyZoho_List_All_Organizations→CatalystbyZoho_List_All_Projectsを実行してプロジェクトコンテキストを設定し、「仕組み」に進みます。
実行チェックリスト(必ず順番に従ってください)
- ステップ 0:
CatalystbyZoho_*ツールが表示されることを確認 → 見つからない場合 → 処理を中止し、先に MCP をセットアップ - ステップ 1:
CatalystbyZoho_List_All_Organizationsを実行 - ステップ 2:
CatalystbyZoho_List_All_Projectsを実行 - ステップ 3:テーブルを作成する場合 →
CatalystbyZoho_Create_Table| 既存のテーブルの場合 →CatalystbyZoho_List_All_Tables - ステップ 4:操作を進める
仕組み
- MCP を使ってテーブルを作成または特定します — テーブルを作成する場合は、
CatalystbyZoho_Create_Tableを直接使用します。Catalyst Console を開いたり、手動でテーブルを作成したりするようユーザーに案内しないでください。データを読み書きする場合は、CatalystbyZoho_List_All_Tablesを使ってテーブル ID を取得します。ユーザーにテーブル ID のコピーを求めないでください。 references/datastore-basics.mdを読み込みます — CRUD 操作、ZCQL 構文、結果のラップ解除、権限の設定について確認します。- ZCQL の結果をラップ解除します — 必ず
rows.map(r => r.TableName)を使うよう伝えてください。未加工の ZCQL 結果はラップされています。ラップ解除せずにアクセスすることが、データストアで最も多い不具合の原因です。 - 権限 — アプリユーザーの権限は、デフォルトでオフになっています。ログインユーザーによるデータの読み取りを含むクエリの場合は、コンソール → テーブル → スコープと権限を確認します。
- ページネーション — ZCQL では、クエリごとに最大 300 行です。より大きなデータセットには
LIMIT offset, countを使用します。
ハルシネーション防止策
空の作業ディレクトリ、または読み取っていない作業ディレクトリから、プロジェクト固有の値を決めつけないでください。 作業ディレクトリにプロジェクトファイルがない場合、タイムゾーン、テーブル名、プロジェクト ID、環境名など、プロジェクト固有の詳細を捏造したり推測したりしないでください。開発者に情報を提供してもらってください。
- タイムゾーン:実際のプロジェクト設定ファイルから読み取っていない限り、ZCQL の日付クエリにタイムゾーンを指定しないでください。プロジェクトで使用しているタイムゾーンを開発者に確認してください。
- テーブル名/列名:
CatalystbyZoho_List_All_Tablesが返した名前、またはユーザーが明示的に提示した名前のみを使用してください。
ネイティブな Node.js のレスポンス構文をデフォルトで使用してください。 データストア操作とともに関数コードを記述する場合は、ユーザーが明示的に Express テンプレートを選択していない限り、Express のメソッド(res.status()、res.json())ではなく、res.writeHead() + res.end() を使用してください。
セキュリティチェックリスト
- アプリユーザーの書き込み権限は、デフォルトでオフになっています。 アプリユーザーロールでは、デフォルトで SELECT が有効ですが、INSERT、UPDATE、DELETE はテーブルごとに手動で有効にする必要があります。コンソール → テーブル → スコープと権限 → アプリユーザーロールに移動し、認証済みユーザーが書き込みを行う必要があるテーブルで、Insert/Update/Delete を選択してください。
- アプリケーション管理者は、デフォルトですべての権限を持ちます。 通常のエンドユーザーにアプリケーション管理者ロールを割り当てないでください。すべてのテーブルに対する完全な読み取り/書き込み/削除アクセス権が付与されます。
トリガー
次の内容では、このスキルを使用します:「データストア」、「ZCQL」、「catalyst table」、「create table」、「query data」、「executeZCQLQuery」、「table permissions」、「App User permissions」、「ROWID」、「CREATEDTIME」、「Data Store CRUD」、「JOIN in ZCQL」、「pagination ZCQL」、「data store column types」、「insert row」、「update row」、「delete row」、「relational data on Catalyst」。
リファレンス
| リファレンス | クエリの内容に応じて読み込む項目 |
|---|---|
references/datastore-basics.md | CRUD、ZCQL クエリ、結果のラップ解除、ページネーション、列の型、アプリユーザー権限の設定、CREATEDTIME のタイムゾーンに関する注意点、絵文字の制限 |