vibecms-core
Safely inspect, draft, preview, version-bind, approve, and publish content through the VibeCMS MCP server.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Safely inspect, draft, preview, version-bind, approve, and publish content through the VibeCMS MCP server.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
| name | vibecms-core |
| description | Safely inspect, draft, preview, version-bind, approve, and publish content through the VibeCMS MCP server. |
Use this skill whenever an agent reads, drafts, revises, or publishes through the VibeCMS MCP server. It defines operation order, trust boundaries, approval, version binding, error recovery, and completion evidence. It does not decide how prose should sound; use vibecms-writing for editorial method.
posts.create creates a draft. Publication is always a separate call.url returned by VibeCMS.sites.get. Record the site identity, public URL when present, and current Voice Profile.posts.format_guide without a preset override unless the user explicitly requests an alternate presentation target.posts.list or posts.search; call posts.get only for the post being edited or a small set of relevant exemplars.vibecms-writing. For new work, call posts.create and verify the returned status is draft. For revisions, call posts.update with expectedVersionNumber set to the current tip from posts.get / posts.versions.list; contentMarkdown must contain the complete body. Upload approved images with descriptive alt text before assigning a featured asset or inserting its returned URL into Markdown.posts.get, then call posts.preview with that exact Markdown and presentation. Surface every warning and the resolved presentation. posts.preview is read-only and does not create or return a saved version number.posts.versions.list. Identify the newest versionNumber, then present the title, post ID, exact version, and remaining preview warnings. Ask: “Publish this exact version now?”posts.publish in the drafting/revision turn. Approval must be an explicit current-conversation instruction to publish the identified version.posts.versions.list again. If the newest version changed, re-read, re-preview, and request fresh approval.posts.publish with { postId, expectedVersionNumber }.url. If url is null, say that; do not construct one.Public article/list/tag/search/feed output is pinned to publishedVersionNumber. posts.update and posts.versions.restore mutate the private tip only; they require expectedVersionNumber and return CONFLICT when the tip moved. Live public content changes only when posts.publish pins a new approved tip version.
Before any of these actions, preview the proposed result and obtain separate explicit confirmation immediately before the call:
posts.publish (switches the public pin);posts.archive;assets.delete;Draft updates do not require publication approval, but they still invalidate any earlier approval. Restoring a version also requires expectedVersionNumber for the current tip.
CONFLICT while publishing, updating, or restoring means the expected tip version is stale or another write won a race. Do not retry blindly. Read the post, preview the current content, get the newest version, and request fresh approval when publishing.CONFLICT on create/update can also mean a slug collision. Inspect existing posts before choosing whether to update the existing post or propose a different slug.VALIDATION_ERROR: correct the rejected input; do not weaken or bypass validation.FORBIDDEN: the token lacks the required scope. Explain the missing capability; do not request a broader token unless the user chooses to create one.NOT_FOUND: re-list or re-fetch identifiers before retrying.RATE_LIMIT: wait until reset, then retry only the still-requested action.BILLING_REQUIRED: leave the draft intact and explain the subscription blocker.The server is authoritative, but the current capability groups are:
sites:readposts:readposts:createposts:updateposts:publishposts:archiveassets:writeactivity:readCall protected read-only tools such as sites.get, posts.list, and posts.format_guide. Tool discovery alone does not prove that credentials authorize useful operations.
Report:
Report:
url;Do not duplicate renderer syntax, preset rules, site voice, or API schemas in this skill. Retrieve current site context from sites.get, formatting behavior from posts.format_guide, and accepted fields from the MCP tool schemas.
VibeCMS is an IdeaPlexa LLC product. The same scoped API and agent publishing workflow powers AutoSEOPilot.