findPages
Editor-curated marketing pages. Call listAvailableBlocks first to learn the available layout-block types. Title is required in default-locale. Use _status="draft" until reviewed, then _status="published" to go live NOW. To publish (or unpublish) at a FUTURE date, use the schedulePost tool with publishAt/unpublishAt — do NOT set a future publishedAt (the page stays a draft until the scheduled time, then auto-publishes). HOMEPAGE convention: set slug="home" (hardcoded in frontend route, both default + IT locale need slug="home"). System-pages use systemPageKey field — read-only in MCP. After page creation, link them in menus collection (slug="header-main") so they appear in navigation. pages collection. Drafts: yes (publish workflow; a find WITHOUT draft:true returns the published main-table state only). Public read: yes via /api/agents. MCP capabilities: find, create, update, delete. ⚠ delete is PERMANENT (hard-delete; the admin Trash does NOT catch MCP deletes). Before writing public text here, call getWritingGuidelines with this collection and the locale (brand voice, writing rules, fixed terms, SEO rules, taken keywords, field rules). Fields: title (localized), slug (localized), layout (blocks, localized), systemPageKey (enum: faq (FAQ index)|search (Search results)|posts-archive|glossary-archive|not-found (404 — page not found)|server-error (500 — server error)|+7), publishedAt (date), robots (enum: index (Index (default))|noindex (noindex (hide))), searchText (textarea, localized, ≤60000 chars, redacted), meta (group: title, description, focusKeyword, secondaryKeyword1-4, searchIntent, eeatInsight, image — localized). Layout blocks (39): hero, trustMarquee, statement, cardGrid, quotes, splitKi, codeFiles, splitMcp, capabilities, splitSprachen, coreScrolly, stackChips, fundament, teamAbout, faqBlock, cta, factsBand, pageHeader, featureList, compareTable, race, contactSplit, geoMap, eigenbau, legal, textContent, archive, mediaBlock, gallery, formBlock, newsletterBlock, snippetEmbed, testimonialsBlock, mediaText, cards, searchClient, html, styledHtmlBlock, datasetCitation. Use listAvailableBlocks for per-block field schemas.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Optional: specific document ID to retrieve. If not provided, returns all documents | |
| page | No | Page number for pagination (default: 1) | |
| sort | No | Field to sort by (e.g., "createdAt", "-updatedAt" for descending) | |
| depth | No | How many levels deep to populate relationships (default: 0) | |
| draft | No | Optional: Whether the document should be queried from the versions table/collection or not. | |
| limit | No | Maximum number of documents to return (default: 10, max: 100) | |
| where | No | Optional JSON string for where clause filtering (e.g., '{"title": {"contains": "test"}}') | |
| locale | No | Optional: locale code to retrieve data in (e.g., "en", "es"). Use "all" to retrieve all locales for localized fields | |
| select | No | Optional: define exactly which fields you'd like to return in the response (JSON), e.g., '{"title": true}' | |
| fallbackLocale | No | Optional: fallback locale code to use when requested locale is not available |