create_post
Create a new CMS post (blog_post, page, or any custom post type). The post type must already exist — use list_post_types to discover, create_post_type to add a new one. excerpt = plain-text summary only (auto-derived from blocks if omitted). Structured custom fields go in meta, keyed by the field...
This record as markdown: /tools/io-favcrm-favcrm/create-post.md
What create_post does on FavCRM
AI agents use create_post to create or update resources in FavCRM, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your FavCRM environment.
| Parameter | Type | Required | Description |
|---|---|---|---|
meta | object | — | Structured custom field values, keyed by field key (see list_post_type_fields). Validated against the post type field schema. Use this for all machine-readable |
slug | string | — | URL slug. Auto-generated from title if omitted; collisions get -2, -3 suffix. |
type | string | Yes | Post type slug (e.g. blog_post, page, treatment). Must exist in post_types for this company. |
title | string | Yes | Post title |
blocks | array | — | Ordered array of content blocks. Each block has { id, version, type, data } where type is one of: paragraph, heading, image, list, quote, code, divider, spacer, |
status | string | — | Status (default draft) |
tagIds | array | — | Tag IDs to attach to the post |
excerpt | string | — | Plain-text summary only — never JSON. Auto-derived from the first paragraph/heading block if omitted and the post type supports excerpts. |
parentId | object | — | Parent post ID for nested types (e.g. pages). |
seoTitle | string | — | SEO title override |
sortOrder | number | — | Sort order (lower = earlier) |
visibility | string | — | Visibility (default public) |
Parameters from the server's own tool schema.
Why create_post is rated Medium
This tool creates new content (blog posts, pages, custom post types) in the CMS system, which is reversible through standard content management operations (edit, delete, or archive). It does not execute arbitrary code, delete data irreversibly, move money, or breach system boundaries.
From the tool's definition Tool description explicitly states 'Create a new CMS post' and accepts parameters for post type, excerpt, and custom fields (meta). These are characteristics of content creation operations.
Risk signalsHigh parameter count (16 properties)
Attacks that exploit this kind of access
The rule that runs create_post safely
PolicyLayer is an MCP gateway: it sits between your AI agents and FavCRM, and checks every tool call against a rule you set before the call runs. Nothing changes on the server itself. For create_post, this is the rule to start with:
create_post stays usable, but capped: an agent stuck in a loop can't make hundreds of changes a minute. Everything else on the server is denied unless you say otherwise.
The button opens the PolicyLayer dashboard: create your workspace, connect FavCRM, apply this rule, and every create_post call is checked against it from then on.
Questions about create_post
Create a new CMS post (blog_post, page, or any custom post type). The post type must already exist — use list_post_types to discover, create_post_type to add a new one. excerpt = plain-text summary only (auto-derived from blocks if omitted). Structured custom fields go in meta, keyed by the field schema defined with create_post_type_field. It is categorised as a Write tool in the FavCRM MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.
create_post accepts 12 parameters: meta, slug, type, title, blocks, status, tagIds, excerpt, parentId, seoTitle, sortOrder, visibility. Required: type, title. The full parameter table on this page comes from the server's own tool schema.
Register the FavCRM MCP server in PolicyLayer and add a rule for create_post: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches FavCRM. Nothing to install.
create_post is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.
Yes. Add a rate_limit block to the create_post rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for create_post. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
create_post is provided by the FavCRM MCP server (https://api.favcrm.io/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
More on FavCRM, and thousands of servers like it.
This server
Across the catalogue