create_content_type
Creates a new content type with the specified schema, options, field rules, and taxonomies.
Model content types, write entries against them, and push a specific entry live to a named environment and locale.
LABSCO SUMMARY
update_entry can revise a live entry without shipping the change, and unpublish_entry pulls a page out of an environment and locale without deleting anything behind it. The depth sits on the read side: get_entries carries the filtering, ordering, field-trimming and include flags of the underlying query surface, so a narrow read stays narrow instead of returning a whole content type. The thin spot is global fields — create_global_field and update_global_field exist and get_all_global_fields lists them, but there is no single-field read and no delete, so a global field, once created, can only be revised.
A Contentstack management client covering the content model, the entries written against it, the global fields shared between them, and publishing as a separate act.
A Contentstack account and the credentials issued for it, supplied as CONTENTSTACK_API_KEY and CONTENTSTACK_MANAGEMENT_TOKEN.
One command plus a key — npx @drossman/contentstack-mcp, then supply credentials
USE CASES
Define the content type and the global fields it reuses, then adjust the shape while it is still cheap to change.
Create entries against a type, read back what is there, and publish a specific entry to a named environment and locale rather than everything at once.
Take an entry off an environment without deleting it, or remove it outright once you are sure.
Counted once with only startup setup. Other versions, modes or optional credentials may expose a different list.
create_content_typeCreates a new content type with the specified schema, options, field rules, and taxonomies.
create_entryCreates a new entry for a specified content type.
create_global_fieldCreates a new global field with the specified title, UID, and schema.
delete_content_typeDeletes a content type identified by its UID.
delete_entryDeletes an entry identified by its UID and content type UID.
get_all_content_typesRetrieves a list of all content types, with options for pagination and including additional details like global field schema and counts.
get_all_global_fieldsRetrieves a list of all global fields, with options for pagination and including branch information.
get_content_typeRetrieves a specific content type by its UID, optionally including the global field schema.
get_entriesRetrieves entries for a specified content type, with extensive options for filtering, sorting, pagination, and including related data.
get_entryRetrieves a specific entry by its content type UID and entry UID, with options for locale and including references.
publish_entryPublishes an entry to a specified environment and locale.
unpublish_entryUnpublishes an entry from a specified environment and locale.
update_content_typeUpdates an existing content type identified by its UID. Allows modification of title, schema, options, and field rules.
update_entryUpdates an existing entry identified by its UID and content type UID.
update_global_fieldUpdates an existing global field identified by its UID. Allows modification of title and schema.
BEFORE YOU INSTALL
15 tools when we connected. They include publish_entry, which puts content live in an environment. The five items under Available Resources are resources, not tools, and direct asset manipulation and bulk operations are not built yet.
Both documented clients run the server on your machine.
CONTEXT COST
Rated by the size of the 15 tool definitions that ride along on every turn, not by how many there are
INSTALLATION
npx @drossman/contentstack-mcp{
"mcpServers": {
"contentstack": {
"command": "npx",
"args": [
"-y",
"@drossman/contentstack-mcp"
],
"env": {
"CONTENTSTACK_API_KEY": "<YOUR_CONTENTSTACK_API_KEY>",
"CONTENTSTACK_MANAGEMENT_TOKEN": "<YOUR_CONTENTSTACK_MANAGEMENT_TOKEN>"
}
}
}
}