Prismic Automation
Prismic ヘッドレスCMS を Claude Code から直接管理します。タイプ別のドキュメントクエリ、全文コンテンツ検索、カスタムタイプの確認、コンテンツバージョン管理のためのリポジトリ参照の操作が可能です。
ツールキットドキュメント: composio.dev/toolkits/prismic
セットアップ
- Composio MCP サーバーを設定に追加します:
https://rube.app/mcp - プロンプトに従って Prismic アカウントを接続します。エージェントが認証リンクを提供します。
- ほとんどのコンテンツクエリには
refトークンが必要です。まずは必ずPRISMIC_REPOSITORY_API_GET_REFSまたはPRISMIC_REPOSITORY_API_GET_INFOを呼び出してマスターref を取得してください。
コアワークフロー
1. リポジトリ情報と参照の取得
利用可能な参照(コンテンツバージョン)、カスタムタイプ、言語、タグ、ブックマークを含む、リポジトリの包括的なメタデータを取得します。通常、これが最初の API 呼び出しです。
ツール: PRISMIC_REPOSITORY_API_GET_INFO、PRISMIC_REPOSITORY_API_GET_REFS
パラメータは不要です。これらのエンドポイントはリポジトリの完全な設定を返します。refs フィールドは、すべてのコンテンツクエリに ref が必要なため、非常に重要です。
プロンプト例: 「Prismic リポジトリ情報と現在のマスター ref を取得して」
2. 述語を使用したドキュメントのクエリ
Prismic の述語クエリ構文を使用して、完全なページネーションとフィルタリングサポート付きでドキュメントを取得します。
ツール: PRISMIC_CONTENT_API_QUERY_DOCUMENTS
主なパラメータ:
ref(必須) — コンテンツリリース参照 ID(通常はマスター ref)q— 述語クエリ(例:[[at(document.type, "page")]])page(最小1) とpageSize(1〜100) — ページネーションlang— 言語コード(例:en-us、デフォルトは全言語の*)orderings— ソート順(例:[my.article.date desc])fetch— カンマ区切りの取得フィールド(レスポンスサイズを削減)fetchLinks— リンクされたドキュメントフィールドをインラインで解決
プロンプト例: 「Prismic で公開済みのブログ投稿をすべて、日付降順、英語でクエリして」
3. タイプ別のドキュメント取得
特定のカスタムタイプの全ドキュメントを、マスター ref の自動解決付きで取得します。
ツール: PRISMIC_GET_DOCUMENTS_BY_TYPE
主なパラメータ:
type(必須) — カスタムタイプ API ID(例:blog_post、article、page)page(デフォルト1) とpageSize(1〜100、デフォルト20)lang— 言語コードフィルターorderings— ソート順(例:[my.article.date desc])after— 50ページを超える深いページネーションのためのカーソルベースのページネーション
プロンプト例: 「Prismic の blog_post ドキュメントをすべて、1ページ20件で取得して」
4. 全文検索
指定された用語について、ドキュメント内のすべてのテキストフィールドを横断して検索します。大文字小文字を区別せず、語幹に基づいてマッチングします。
ツール: PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_FULLTEXT_SEARCH
主なパラメータ:
q(必須) — 全文述語(例:[[fulltext(document, "machine learning")]])page、pageSize、lang、orderings— 他のクエリと同様のページネーション/フィルタリング
プロンプト例: 「Prismic の全ドキュメントから 'machine learning' を検索して」
5. 単一ドキュメントの ID 取得
一意の識別子で特定のドキュメントを取得します。
ツール: PRISMIC_GET_DOCUMENT_BY_ID
主なパラメータ:
document_id(必須) — 一意のドキュメント識別子ref(必須) — リポジトリからのコンテンツ reflang— オプションの言語フィルター
プロンプト例: 「Prismic ドキュメント Xx2KLhEAAJljVWaA を取得して」
6. カスタムタイプの一覧表示
リポジトリで定義されているすべてのカスタムタイプ(コンテンツモデル)を、その構造定義を含めて検出します。
ツール: PRISMIC_TYPES_API_GET_TYPES
主なパラメータ:
limit— 1ページあたりの最大タイプ数page— ページ番号(1始まり)sort— ソート順(例:name)
プロンプト例: 「Prismic リポジトリの全カスタムタイプを一覧表示して」
既知の落とし穴
- すべてのコンテンツクエリに ref が必要: ドキュメントをクエリする前に、
PRISMIC_REPOSITORY_API_GET_REFSまたはPRISMIC_REPOSITORY_API_GET_INFOから有効なref(通常はマスター ref)を取得する必要があります。ref なしのクエリは失敗します。 - 述語構文には二重括弧が必要: Prismic クエリは二重角括弧を使用します:
[[at(document.type, "page")]]。複数の述語を組み合わせるには:[[at(document.type, "blog")][at(document.tags, ["featured"])]]。 - 深いページネーションの制限: 標準のページベースのページネーションは50ページ以降で失敗する可能性があります。深いページネーションには、前の結果セットの最後のドキュメント ID を指定して
afterパラメータを使用します。 - pageSize の上限は 100: 1ページあたり100件を超えるリクエストは拒否されます。より大きな結果セットを反復処理するにはページネーションを使用します。
- 言語フィルタリング: デフォルトの言語フィルターは
*(全言語)です。特定のロケールのドキュメントが必要な場合は、常にlangを明示的に指定してください(例:en-us、fr-fr)。 - 統合フィールドには別途 ref が必要:
PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_INTEGRATION_FIELDSを使用する場合、標準のコンテンツrefに加えてintegrationFieldsRefが必要です。
クイックリファレンス
| ツールスラッグ | 説明 |
|---|---|
PRISMIC_REPOSITORY_API_GET_INFO | リポジトリメタデータ、ref、タイプ、言語を取得 |
PRISMIC_REPOSITORY_API_GET_REFS | すべての ref(マスター + リリース)を一覧表示 |
PRISMIC_TYPES_API_GET_TYPES | すべてのカスタムタイプ/コンテンツモデルを一覧表示 |
PRISMIC_CONTENT_API_QUERY_DOCUMENTS | 述語とページネーションでドキュメントをクエリ |
PRISMIC_GET_DOCUMENTS_BY_TYPE | カスタムタイプでフィルタリングしたドキュメントを取得 |
PRISMIC_GET_DOCUMENT_BY_ID | ID で単一ドキュメントを取得 |
PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_FULLTEXT_SEARCH | 全ドキュメントの全文検索 |
PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_PREDICATES | 複数の述語条件でドキュメントをフィルタリング |
PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_INTEGRATION_FIELDS | 統合フィールドデータを含むドキュメントを取得 |
PRISMIC_GET_DOCUMENTS_ORDERED | 指定フィールドでソートされたドキュメントを取得 |
Powered by Composio