knowledge_management
Butter CMS
Connect Butter CMS to Elaichi and hand every teammate a governed MCP endpoint — 25 tools ready to call from Claude, Cursor, or any MCP client, clamped by roles, restrictions, and an audit log.
AI tools
Butter CMS tools for your AI agents
25 tools are ready to mint as an MCP endpoint the moment you connect Butter CMS — governed by the same roles, restrictions, and audit log as everything else in Elaichi.
list_all_buttercms_pages
Retrieve a paginated list of ButterCMS pages for a given page type, or all Single Pages when page_type is `*`. Returns: slug, name, page_type, published, updated, fields. Field filtering and ordering apply to Page Type endpoints, not Single Pages. Required: page_type.
create_a_buttercms_page
Create a new ButterCMS page via the Write API with support for multiple locales and automatic media uploads. The page type schema must already exist in your account; pages are created as draft by default and processing is asynchronous. Returns: status. Required: title, slug, page_type, fields.
update_a_buttercms_page_by_id
Update an existing ButterCMS page via the Write API using a partial PATCH (PUT is supported for backwards compatibility). Only included fields are modified; title and slug are immutable. Page updates are asynchronous; scheduling is not supported. Returns: status, examples, name. Required: id, page_type.
get_single_buttercms_page_by_id
Retrieve a specific ButterCMS page by page type and slug (id). Use `*` as page_type to look up a Single Page when the type is unknown. Returns: slug, name, page_type, published, updated, fields. Required: page_type, id.
list_all_buttercms_pages_searches
Search ButterCMS pages by text query, returning matching pages sorted by relevancy. Only direct page content is searched; references are excluded from search but still included in the response based on levels. Returns: slug, name, page_type, published, updated, fields. Required: query.
list_all_buttercms_contents
Retrieve items from a ButterCMS Collection with filtering, pagination, and relationship serialization. Collection fields are user-defined in the dashboard and vary by collection. Returns: meta. Required: collection_key.
create_a_buttercms_content
Create a new item in a ButterCMS Collection via the Write API. Field structure must match the collection schema configured in the dashboard. Processing is asynchronous (202 Accepted). Returns: status. Required: key, fields.
update_a_buttercms_content_by_id
Fully update (PUT) a ButterCMS Collection item, replacing the item with the provided data. Use PUT when you need complete field synchronization; processing is asynchronous (202 Accepted). Returns: status. Required: id, collection_key, fields.
delete_a_buttercms_content_by_id
Soft-delete a ButterCMS Collection item by id, marking it deleted while preserving data for potential recovery. The item no longer appears in collection listings or standard API responses. Returns an empty 204 response on success. Required: id, collection_key.
buttercms_contents_partial_update
Partially update (PATCH) a ButterCMS Collection item, modifying only the specified fields while preserving all other content. Processing is asynchronous (202 Accepted). Returns: status. Required: id, collection_key.
list_all_buttercms_posts
Retrieve a paginated list of published ButterCMS blog posts sorted by publication date (newest first). Use exclude_body to reduce payload size on listing pages; filter by author_slug, category_slug, or tag_slug. Returns: url, id, _id.
create_a_buttercms_post
Create a new ButterCMS blog post via the Write API with support for author assignment, categories, tags, and media integration. Posts default to draft; processing is asynchronous (202 Accepted). Scheduling is not supported on create. Returns: status, example. Required: title.
update_a_buttercms_post_by_id
Partially update an existing ButterCMS blog post by id, modifying only the provided fields while preserving omitted ones. Use locale to update or create a specific locale variant. Scheduling parameters may be ignored with warning fields in the response. Returns: status, example. Required: id.
delete_a_buttercms_post_by_id
Soft-delete a ButterCMS blog post by id, removing it from public listings, search, and feeds while preserving content for potential recovery. Use locale to target a specific locale variant. Returns an empty 204 response on success. Required: id.
get_single_buttercms_post_by_id
Retrieve a specific ButterCMS blog post by slug (id), including content regardless of publication status (published, draft, or scheduled). Ideal for individual post pages and preview workflows. Returns: url, id, _id. Required: id.
list_all_buttercms_authors
Retrieve all ButterCMS blog post authors with profile information. Pass include=recent_posts to enrich each author with recent posts; use locale to filter those posts. Returns: slug, first_name, last_name, email, bio, title, profile_image.
get_single_buttercms_author_by_id
Retrieve a ButterCMS author by slug (id), including profile details and optional recent posts. Returns: slug, first_name, last_name, email, bio, title, profile_image. Required: id.
list_all_buttercms_categories
Retrieve all ButterCMS blog post categories that contain published posts. Pass include=recent_posts to attach recent posts per category; use locale to filter those posts. Returns: name, slug, recent_posts.
get_single_buttercms_category_by_id
Retrieve a ButterCMS blog post category by slug (id), optionally including recent posts. Returns: name, slug, recent_posts. Required: id.
list_all_buttercms_tags
Retrieve all ButterCMS blog post tags that contain published posts. Pass include=recent_posts to attach recent posts per tag; use locale to filter those posts. Returns: name, slug, recent_posts.
get_single_buttercms_tag_by_id
Retrieve a ButterCMS blog post tag by slug (id), optionally including recent posts. Returns: name, slug, recent_posts. Required: id.
list_all_buttercms_posts_searches
Search ButterCMS blog posts with full-text search across titles and body content, ranked by relevance. An empty query returns no results; use exclude_body to omit the body field and reduce response size. Returns: url, id, _id.
list_all_buttercms_feeds_rses
Generate a standards-compliant RSS 2.0 XML feed of ButterCMS blog posts for syndication and feed readers. Filter with category_slug, tag_slug, or locale. Returns the complete RSS 2.0 XML feed string.
list_all_buttercms_feeds_atoms
Generate a standards-compliant Atom 1.0 XML feed of ButterCMS blog posts for syndication, with richer metadata than RSS. Filter with category_slug, tag_slug, or locale. Returns the complete Atom 1.0 XML feed string.
list_all_buttercms_feeds_sitemaps
Generate a standards-compliant XML sitemap of ButterCMS blog posts for search engine discovery (sitemaps.org protocol). Filter with category_slug, tag_slug, or locale. Returns the complete XML sitemap string with loc and lastmod entries.
How it works
From Butter CMS account to governed MCP endpoint
Connect
Link a Butter CMS account through Elaichi's hosted connect flow. Credentials are vaulted — nobody, including the AI, ever sees them.
Compose
The connection becomes a toolbox instantly. Curate which Butter CMS tools are exposed, rename them, or freeze arguments.
Mint
Mint a personal MCP endpoint on that toolbox and paste it into Claude, Cursor, or any MCP client — governed by roles, restrictions, and audit logs.
Give every teammate a governed MCP server
Start a 14-day Gold trial — connect a product, curate a toolbox, and paste an endpoint into Claude or Cursor in minutes.