findPosts
Blog-style articles. content is Lexical richText (call listAvailableBlocks for richTextFeatures + inline-block list). PUBLIC AUTHOR: by default published AS the organization — set authorMode: "organization" (brand voice from the branding global). To publish AS a team member, set authorMode: "person" + teamAuthor: <team-member-id> (find the id via the team find tool — it lists members with id + name) and call getPersona(<id>) for their writing voice (style). The author field (relation to users) is the INTERNAL "created by" only — NOT the public author; it defaults to the user your key is bound to. Use categories+tags for taxonomy. SCHEDULING: to publish (or unpublish) at a FUTURE date, keep _status:"draft" and call the schedulePost tool with publishAt/unpublishAt — do NOT set a future publishedAt (the post stays a draft until the scheduled time, then auto-publishes). posts 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). Fields: title (localized), slug (localized), excerpt (textarea, localized), coverImage (upload: media|brand), content (richText, localized), author (rel: users), authorMode (enum: organization (Organisation)|person (Person (team member))), teamAuthor (rel: team), publishedAt (date), categories (rel-array: categories), tags (rel-array: tags), relatedFaqs (rel-array: faqs), robots (enum: index (Index (default))|noindex (noindex (hide))), searchText (textarea, localized, ≤60000 chars, redacted), lastAiScanAt (date).
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 |