skills/ranbot-ai/awesome-skills/Prismic Automation

Prismic Automation

Installation
SKILL.md

Prismic Automation

Manage your Prismic headless CMS directly from Claude Code. Query documents by type, full-text search content, inspect custom types, and work with repository refs for content versioning.

Toolkit docs: composio.dev/toolkits/prismic


Setup

  1. Add the Composio MCP server to your configuration:
    https://rube.app/mcp
    
  2. Connect your Prismic account when prompted. The agent will provide an authentication link.
  3. Most content queries require a ref token. Always start by calling PRISMIC_REPOSITORY_API_GET_REFS or PRISMIC_REPOSITORY_API_GET_INFO to obtain the master ref.

Core Workflows

1. Get Repository Info and Refs

Retrieve comprehensive repository metadata including available refs (content versions), custom types, languages, tags, and bookmarks. This is typically your first API call.

Tools: PRISMIC_REPOSITORY_API_GET_INFO, PRISMIC_REPOSITORY_API_GET_REFS

No parameters required -- these endpoints return the full repository configuration. The refs field is critical since refs are required for all content queries.

Example prompt: "Get my Prismic repository info and the current master ref"


2. Query Documents with Predicates

Fetch documents using Prismic's predicate query syntax with full pagination and filtering support.

Tool: PRISMIC_CONTENT_API_QUERY_DOCUMENTS

Key parameters:

  • ref (required) -- content release reference ID (typically the master ref)
  • q -- predicate query, e.g., [[at(document.type, "page")]]
  • page (min 1) and pageSize (1-100) -- pagination
  • lang -- language code, e.g., en-us (default * for all)
  • orderings -- sort order, e.g., [my.article.date desc]
  • fetch -- comma-separated fields to fetch, reducing response size
  • fetchLinks -- resolve linked document fields inline

Example prompt: "Query all published blog posts in Prismic, sorted by date descending, in English"


3. Fetch Documents by Type

Retrieve all documents of a specific custom type with automatic master ref resolution.

Tool: PRISMIC_GET_DOCUMENTS_BY_TYPE

Key parameters:

  • type (required) -- custom type API ID, e.g., blog_post, article, page
  • page (default 1) and pageSize (1-100, default 20)
  • lang -- language code filter
  • orderings -- sort order, e.g., [my.article.date desc]
  • after -- cursor-based pagination for deep pagination beyond page 50

Example prompt: "Get all blog_post documents in Prismic, 20 per page"


4. Full-Text Search

Search across all text fields in documents for specified terms. Case-insensitive, matches on root words.

Tool: PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_FULLTEXT_SEARCH

Key parameters:

  • q (required) -- full-text predicate, e.g., [[fulltext(document, "machine learning")]]
  • page, pageSize, lang, orderings -- same pagination/filtering as other queries

Example prompt: "Search all Prismic documents for 'machine learning'"


5. Get a Single Document by ID

Retrieve a specific document by its unique identifier.

Tool: PRISMIC_GET_DOCUMENT_BY_ID

Key parameters:

  • document_id (required) -- unique document identifier
  • ref (required) -- content ref from repository
  • lang -- optional language filter

Example prompt: "Fetch Prismic document Xx2KLhEAAJljVWaA"


6. List Custom Types

Discover all custom types (content models) defined in the repository, including their structure definitions.

Tool: PRISMIC_TYPES_API_GET_TYPES

Key parameters:

  • limit -- max number of types to return per page
  • page -- page number (1-indexed)
  • sort -- sort order, e.g., name

Example prompt: "List all custom types in my Prismic repository"


Known Pitfalls

  • Ref is required for all content queries: You must obtain a valid ref (typically the master ref) from PRISMIC_REPOSITORY_API_GET_REFS or PRISMIC_REPOSITORY_API_GET_INFO before querying any documents. Queries without a ref will fail.
  • Predicate syntax requires double brackets: Prismic queries use double square brackets: [[at(document.type, "page")]]. For multiple predicates, combine them: [[at(document.type, "blog")][at(document.tags, ["featured"])]].
  • Deep pagination limit: Standard page-based pagination may fail beyond page 50. For deep pagination, use the after parameter with the last document ID from your previous result set.
  • pageSize cap is 100: Requesting more than 100 documents per page will be rejected. Use pagination to iterate through larger result sets.
  • Language filtering: The default language filter is * (all languages). If you need documents in a specific locale, always pass lang explicitly (e.g., en-us, fr-fr).
  • Integration fields require separate ref: When using PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_INTEGRATION_FIELDS, you need an integrationFieldsRef in addition to the standard content ref.

Quick Refer

Weekly Installs
GitHub Stars
4
First Seen