Contentful

Manage Contentful content — entries, assets, and content models across your spaces. Sign in with Contentful to connect.

OAuthDesign & content70 tools
Tools

What Contentful exposes.

Every tool below is one this server advertised the last time Omniio refreshed it, under the contentful__ namespace. Your agent never loads them all — it searches, and gets the few that match.

70 tools
  • contentful__append_entry_field7 arguments · 6 required

    Append one or more items to an array-typed entry field (Array of Symbols, Array of Links, or Array of ResourceLinks) entirely server-side. The agent never holds or resends the full array — the tool reads the current array on the server, deduplicates (Links by sys.id, ResourceLinks by sys.urn, Symbols by exact value), appends survivors, and writes back only the target field/locale. PREFER this over update_entry when adding items to large reference arrays (e.g. a page with dozens of references) — update_entry replaces the full array and will silently lose items if the agent held a truncated read. Optionally pass version (from get_entry) to enforce a conflict check; omit it to append without a version guard (safe for additive operations). Returns the updated entry plus appended/skipped item lists and the new array length.

    RequiredspaceIdenvironmentIdentryIdfieldIdlocalevalues

  • contentful__archive_asset4 arguments · 3 required

    Archive an asset or multiple assets. Archives assets that are no longer needed but should be preserved. Assets must be unpublished before they can be archived. Accepts either a single assetId (string) or an array of assetIds (up to 100 assets). For multiple assets, processes each one sequentially as a pseudo-bulk operation.

    RequiredspaceIdenvironmentIdassetId

  • contentful__archive_entry4 arguments · 3 required

    Archive an entry or multiple entries. Archives entries that are no longer needed but should be preserved. Entries must be unpublished before they can be archived. Accepts either a single entryId (string) or an array of entryIds (up to 100 entries). For multiple entries, processes each one sequentially as a pseudo-bulk operation.

    RequiredspaceIdenvironmentIdentryId

  • contentful__create_ai_action7 arguments · 6 required

    Create a new AI action with clear instructions and well-defined variables. Best practices: (1) Use descriptive names that indicate the action's purpose, (2) Write specific, actionable instructions in the template, (3) Define meaningful variables with clear names like "sourceContent", "targetLocale", "entryId", or "contentType", (4) Embed variables into the template using the format {{var.{variableId}}}, (5) Consider the content editor's workflow and make the action intuitive to use. Example variables: content fields to process, locales for translation, reference entries, formatting preferences, or validation rules.

    RequiredspaceIdenvironmentIdnamedescriptioninstructionconfiguration

  • contentful__create_concept15 arguments · 2 required

    Create a new taxonomy concept in Contentful. Concepts are used to organize and categorize content within taxonomies. The prefLabel is required and should be localized. You can optionally provide a conceptId for a user-defined ID, or let Contentful generate one automatically. You can also include definitions, notes, relationships to other concepts, and various metadata fields.

    RequiredorganizationIdprefLabel

  • contentful__create_concept_scheme11 arguments · 2 required

    Create a new taxonomy concept scheme in Contentful. Concept schemes organize related concepts and provide hierarchical structure for taxonomy management. The prefLabel is required and should be localized. You can optionally provide a conceptSchemeId for a user-defined ID, or let Contentful generate one automatically. You can also include definitions, notes, and references to top-level concepts.

    RequiredorganizationIdprefLabel

  • contentful__create_content_type8 arguments · 5 required

    Create a new content type

    RequiredspaceIdenvironmentIdnamedisplayFieldfields

  • contentful__create_entry5 arguments · 4 required

    Create a new entry in Contentful. Before executing this function, you need to know the contentTypeId (not the content type NAME) and the fields of that contentType. You can get the fields definition by using the GET_CONTENT_TYPE tool. TAGS: To add tags to an entry, include a metadata object with a tags array. Each tag should be an object with sys.type='Link', sys.linkType='Tag', and sys.id='tagId'. Example: { metadata: { tags: [{ sys: { type: 'Link', linkType: 'Tag', id: 'myTagId' } }] } }.

    RequiredspaceIdenvironmentIdcontentTypeIdfields

  • contentful__create_environment4 arguments · 3 required

    Create a new environment

    RequiredspaceIdenvironmentIdname

  • contentful__create_locale9 arguments · 5 required

    Create a new locale in your Contentful environment. A locale defines a language-region pair (e.g., "en-US" for English United States). You can specify fallback behavior, API availability settings, and whether the locale is optional for content editors. Note: setting 'default' is currently not supported.

    RequiredspaceIdenvironmentIdnamecodefallbackCode

  • contentful__create_tag5 arguments · 5 required

    Creates a new tag and returns it. Both name and ID must be unique to each environment. Tag names can be modified after creation, but the tag ID cannot. The tag visibility can be set to public or private, defaulting to private if not specified.

    RequiredspaceIdenvironmentIdnameidvisibility

  • contentful__create_upload_sessionno arguments

    Creates a short-lived upload session for staging a binary file to Contentful. Returns uploadHandle, uploadUrl, and expiresAt. After receiving uploadUrl, PUT the raw file bytes to https://mcp.contentful.com{uploadUrl} with a Content-Length header (no auth required). Then call upload_asset with file.uploadHandle to create the Contentful asset. Note: ChatGPT users can skip this step — attach a file directly to upload_asset instead.

  • contentful__delete_ai_action5 arguments · 3 required

    Delete a specific AI action from your Contentful space. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the AI action and a confirmToken. To complete the deletion, call this tool again with the same aiActionId, confirm: true, and the confirmToken from the preview response.

    RequiredspaceIdenvironmentIdaiActionId

  • contentful__delete_asset5 arguments · 3 required

    Delete an asset from your Contentful space. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the asset and a confirmToken. To complete the deletion, call this tool again with the same assetId, confirm: true, and the confirmToken from the preview response.

    RequiredspaceIdenvironmentIdassetId

  • contentful__delete_concept4 arguments · 2 required

    Delete a taxonomy concept from Contentful. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the concept and a confirmToken. To complete the deletion, call this tool again with the same conceptId, confirm: true, and the confirmToken from the preview response. The concept version is fetched server-side and used for optimistic concurrency control.

    RequiredorganizationIdconceptId

  • contentful__delete_concept_scheme4 arguments · 2 required

    Delete a taxonomy concept scheme from Contentful. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the concept scheme and a confirmToken. To complete the deletion, call this tool again with the same conceptSchemeId, confirm: true, and the confirmToken from the preview response. The concept scheme version is fetched server-side and used for optimistic concurrency control.

    RequiredorganizationIdconceptSchemeId

  • contentful__delete_content_type5 arguments · 3 required

    Delete a content type from your Contentful space. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the content type and a confirmToken. To complete the deletion, call this tool again with the same contentTypeId, confirm: true, and the confirmToken from the preview response.

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__delete_content_type_field4 arguments · 4 required

    Permanently mark a single field as deleted on a content type. Destructive and irreversible once published. Updates the content type draft only — call publish_content_type afterwards for the deletion to take effect. The field must not be required AND must already be omitted in the published version of the content type. Run omit_content_type_field, then publish_content_type, before calling this. Use disable_content_type_field to temporarily hide a field instead.

    RequiredspaceIdenvironmentIdcontentTypeIdfieldId

  • contentful__delete_entry5 arguments · 3 required

    Delete a specific content entry from your Contentful space. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the entry and a confirmToken. To complete the deletion, call this tool again with the same entryId, confirm: true, and the confirmToken from the preview response.

    RequiredspaceIdenvironmentIdentryId

  • contentful__delete_environment4 arguments · 2 required

    Delete an environment from your Contentful space. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview and a confirmToken. To complete the deletion, call this tool again with the same environmentId, confirm: true, and the confirmToken from the preview response.

    RequiredspaceIdenvironmentId

  • contentful__delete_locale5 arguments · 3 required

    Delete a specific locale from your Contentful environment. This is a two-phase operation: the first call (without confirm/confirmToken) returns a preview of the locale and a confirmToken. To complete the deletion, call this tool again with the same localeId, confirm: true, and the confirmToken from the preview response.

    RequiredspaceIdenvironmentIdlocaleId

  • contentful__disable_content_type_field6 arguments · 4 required

    Toggle the disabled and/or omitted flags on a single field. Setting disabled=true hides the field from the editor UI; setting omitted=true removes it from API responses. Both flags are reversible. Updates the content type draft only — call publish_content_type afterwards for the change to take effect. Use omit_content_type_field when only changing the omitted flag.

    RequiredspaceIdenvironmentIdcontentTypeIdfieldId

  • contentful__get_ai_action3 arguments · 3 required

    Retrieve details about a specific AI action including its configuration, instructions, and defined variables

    RequiredspaceIdenvironmentIdaiActionId

  • contentful__get_ai_action_invocation4 arguments · 4 required

    Retrieve information about a specific AI action invocation by its ID.

    RequiredspaceIdenvironmentIdaiActionIdinvocationId

  • contentful__get_asset3 arguments · 3 required

    Retrieve an asset

    RequiredspaceIdenvironmentIdassetId

  • contentful__get_concept2 arguments · 2 required

    Retrieve a specific taxonomy concept from Contentful. Returns the complete concept with all its properties including prefLabel, definition, relationships, and other metadata.

    RequiredorganizationIdconceptId

  • contentful__get_concept_scheme2 arguments · 2 required

    Retrieve a specific taxonomy concept scheme from Contentful. Returns the complete concept scheme with all its properties including prefLabel, definition, topConcepts, and other metadata.

    RequiredorganizationIdconceptSchemeId

  • contentful__get_content_type3 arguments · 3 required

    Get details about a specific Contentful content type

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__get_editor_interface3 arguments · 3 required

    Get the editor interface for a specific content type. Returns detailed configuration including field controls (widgets), sidebar widgets, editor layout, and group controls that define how the content type is displayed and edited in the Contentful web app.

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__get_entry3 arguments · 3 required

    Retrieve an existing entry

    RequiredspaceIdenvironmentIdentryId

  • contentful__get_entry_snapshot4 arguments · 3 required

    Retrieve version history (snapshots) of an entry for safe rollback. Call with only an entryId to list all available snapshots (each has a snapshot ID and metadata). Call with both entryId and snapshotId to retrieve the full field content of that specific snapshot, which can then be used to restore a previous version.

    RequiredspaceIdenvironmentIdentryId

  • contentful__get_initial_contextno arguments

    IMPORTANT: This tool must be called before using any other tools. It will get initial context and usage instructions for this MCP server.

  • contentful__get_locale3 arguments · 3 required

    Retrieve a specific locale from your Contentful environment

    RequiredspaceIdenvironmentIdlocaleId

  • contentful__get_org1 argument · 1 required

    Get details of a specific organization

    RequiredorganizationId

  • contentful__get_space1 argument · 1 required

    Get details of a space

    RequiredspaceId

  • contentful__invoke_ai_action4 arguments · 4 required

    Invoke an AI action with variables. MANDATORY BULK OPERATIONS: You MUST ALWAYS use bulk operations when processing multiple content pieces by adding multiple items to the fields array - never make separate calls. VARIABLES: Can be (1) String values for simple text input, or (2) Entity references to read from specific entry fields using {"entityId": "entryId", "entityPath": "fields.fieldName.locale", "entityType": "Entry"}. POLLING: Automatically polls every 3 seconds for up to 60 seconds. CRITICAL FOLLOW-UP: After invoking AI actions, you MUST immediately take the next step to complete the workflow. The tool response will provide specific guidance on required next steps - you must follow this guidance.

    RequiredspaceIdenvironmentIdaiActionIdfields

  • contentful__list_ai_actions7 arguments · 2 required

    List AI actions in a space. Returns a maximum of 3 items per request. Use skip parameter to paginate through results.

    RequiredspaceIdenvironmentId

  • contentful__list_assets9 arguments · 2 required

    List assets in a space. Returns a maximum of 3 items per request. Use skip parameter to paginate through results.

    RequiredspaceIdenvironmentId

  • contentful__list_concept_schemes2 arguments · 1 required

    List taxonomy concept schemes in a Contentful organization. Supports pagination and filtering options. Returns a summarized view of concept schemes with essential information.

    RequiredorganizationId

  • contentful__list_concepts9 arguments · 1 required

    List taxonomy concepts in a Contentful organization. Supports multiple modes: (1) Default - list all concepts with pagination and filtering, (2) getTotalOnly - return only the total count of concepts, (3) getDescendants - get descendants of a specific concept (requires conceptId), (4) getAncestors - get ancestors of a specific concept (requires conceptId). Returns summarized view of concepts with essential information.

    RequiredorganizationId

  • contentful__list_content_types7 arguments · 2 required

    List content types in a space. Returns a maximum of 10 items per request. Use skip parameter to paginate through results.

    RequiredspaceIdenvironmentId

  • contentful__list_editor_interfaces2 arguments · 2 required

    Get all editor interfaces of a space. Returns configuration for how content types are displayed and edited in the Contentful web app, including field controls, sidebars, and layout settings.

    RequiredspaceIdenvironmentId

  • contentful__list_environments6 arguments · 1 required

    List all environments in a space

    RequiredspaceId

  • contentful__list_locales7 arguments · 2 required

    List all locales in your Contentful environment. Returns locale information including language codes, fallback settings, and API availability.

    RequiredspaceIdenvironmentId

  • contentful__list_orgs4 arguments

    List all organizations that the user has access to

  • contentful__list_spaces4 arguments

    List all available spaces

  • contentful__list_tags6 arguments · 2 required

    List all tags in a space. Returns all tags that exist in a given environment.

    RequiredspaceIdenvironmentId

  • contentful__omit_content_type_field5 arguments · 4 required

    Mark a single field as omitted (or un-omitted) on a content type. Updates the content type draft only — call publish_content_type afterwards for the change to take effect. Reversible via the same tool with omitted=false. This is a prerequisite for delete_content_type_field: the field must be omitted in the published version before it can be deleted.

    RequiredspaceIdenvironmentIdcontentTypeIdfieldId

  • contentful__publish_ai_action3 arguments · 3 required

    Publish an AI action to make it available for use in the Contentful web app

    RequiredspaceIdenvironmentIdaiActionId

  • contentful__publish_asset4 arguments · 3 required

    Publish an asset or multiple assets. Accepts either a single assetId (string) or an array of assetIds (up to 100 assets). For a single asset, it uses the standard publish operation. For multiple assets, it automatically uses bulk publishing.

    RequiredspaceIdenvironmentIdassetId

  • contentful__publish_content_type3 arguments · 3 required

    Publish a content type

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__publish_entry4 arguments · 3 required

    Publish an entry or multiple entries. Accepts either a single entryId (string) or an array of entryIds (up to 100 entries). For a single entry, it uses the standard publish operation. For multiple entries, it automatically uses bulk publishing.

    RequiredspaceIdenvironmentIdentryId

  • contentful__resolve_entry_references4 arguments · 3 required

    Recursively resolve an entry's references and return the entry plus its descendant entries and linked assets. Useful for verifying the structure of a page or any entry that links to other entries before or after edits, without issuing one fetch per descendant. Set `include` (1-10, default 2) to control how many levels deep to walk; the CMA caps this at 10.

    RequiredspaceIdenvironmentIdentryId

  • contentful__search_entries3 arguments · 3 required

    Search for specific entries in your Contentful space

    RequiredspaceIdenvironmentIdquery

  • contentful__semantic_search4 arguments · 3 required

    Find entries by meaning using semantic (vector) search. Provide a descriptive natural-language query of what you're looking for — phrases resembling entry content work best (not questions or JSON). Optionally restrict to specific content types. Returns up to 10 matching entry references (unranked); use get_entry to fetch full content. Requires semantic search to be enabled for the environment.

    RequiredspaceIdenvironmentIdquery

  • contentful__unarchive_asset4 arguments · 3 required

    Unarchive an asset or multiple assets. Restores archived assets, making them available for editing and publishing again. Accepts either a single assetId (string) or an array of assetIds (up to 100 assets). For multiple assets, processes each one sequentially as a pseudo-bulk operation.

    RequiredspaceIdenvironmentIdassetId

  • contentful__unarchive_entry4 arguments · 3 required

    Unarchive an entry or multiple entries. Restores archived entries, making them available for editing and publishing again. Accepts either a single entryId (string) or an array of entryIds (up to 100 entries). For multiple entries, processes each one sequentially as a pseudo-bulk operation.

    RequiredspaceIdenvironmentIdentryId

  • contentful__unpublish_ai_action3 arguments · 3 required

    Unpublish an AI action to remove it from use in the Contentful web app

    RequiredspaceIdenvironmentIdaiActionId

  • contentful__unpublish_asset4 arguments · 3 required

    Unpublish an asset or multiple assets. Accepts either a single assetId (string) or an array of assetIds (up to 100 assets). For a single asset, it uses the standard unpublish operation. For multiple assets, it automatically uses bulk unpublishing.

    RequiredspaceIdenvironmentIdassetId

  • contentful__unpublish_content_type3 arguments · 3 required

    Unpublish a content type

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__unpublish_entry4 arguments · 3 required

    Unpublish an entry or multiple entries. Accepts either a single entryId (string) or an array of entryIds (up to 100 entries). For a single entry, it uses the standard unpublish operation. For multiple entries, it automatically uses bulk unpublishing.

    RequiredspaceIdenvironmentIdentryId

  • contentful__update_ai_action8 arguments · 3 required

    Update an existing AI action. Your updates will be merged with the existing AI action data, so you only need to provide the fields you want to change.

    RequiredspaceIdenvironmentIdaiActionId

  • contentful__update_asset5 arguments · 4 required

    Update an asset

    RequiredspaceIdenvironmentIdassetIdfields

  • contentful__update_concept16 arguments · 3 required

    Update a taxonomy concept in Contentful. Requires the concept ID and version number for optimistic concurrency control. You can update any combination of fields - only the fields you provide will be changed, while others remain unchanged. Use this to modify labels, definitions, relationships, and other concept properties.

    RequiredorganizationIdconceptIdversion

  • contentful__update_concept_scheme13 arguments · 3 required

    Update a taxonomy concept scheme in Contentful. Requires the concept scheme ID and version number for optimistic concurrency control. You can update any combination of fields - only the fields you provide will be changed, while others remain unchanged. Use this to modify labels, definitions, relationships, and other concept scheme properties.

    RequiredorganizationIdconceptSchemeIdversion

  • contentful__update_content_type8 arguments · 3 required

    Update an existing content type. The handler will merge your field updates with existing content type data, so you only need to provide the fields and properties you want to change.

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__update_editor_interface7 arguments · 3 required

    Update the editor interface for a content type. Allows customization of field controls (widgets), sidebar widgets, editor layout, and group controls. Only provide the properties you want to change - existing values will be preserved for unprovided fields.

    RequiredspaceIdenvironmentIdcontentTypeId

  • contentful__update_entry6 arguments · 5 required

    Update an existing entry. You MUST call get_entry first to read the current state, then pass the sys.version you received as the version parameter. The handler merges your field updates with the existing entry fields, so you only need to provide the fields you want to change. However, for multiple-locale fields, all existing locales must be included in the update. If the version is stale (the entry changed since you read it), the update is rejected and you must re-fetch with get_entry. NOTE: for appending items to large array fields (e.g. reference arrays with many items), prefer append_entry_field — it performs the read-modify-append server-side and deduplicates, so you never need to hold the full array.

    RequiredspaceIdenvironmentIdentryIdversionfields

  • contentful__update_locale4 arguments · 4 required

    Update an existing locale in your Contentful environment. You can modify the locale name, code, fallback behavior, API availability settings, and whether the locale is optional for content editors. Only provide the fields you want to change. IMPORTANT: internal_code cannot be updated.

    RequiredspaceIdenvironmentIdlocaleIdfields

  • contentful__upload_asset7 arguments · 4 required

    Upload a new asset to Contentful. For ChatGPT users: attach a file directly — ChatGPT will provide a temporary download_url and this tool fetches the bytes server-side (no agent network access required). For other clients: stage the file first by calling the create_upload_session MCP tool to get an uploadHandle and uploadUrl, PUT the raw bytes to uploadUrl (include Content-Length header), then call this tool with file.uploadHandle. For publicly accessible files, use file.upload with an http:// or https:// URL instead.

    RequiredspaceIdenvironmentIdtitlefile

Connecting

Three steps, and the last one is not yours.

01

Point a client at Omniio

One URL, authorized once by your client. If you already use Omniio, this step is done.

02

Switch Contentful on

Authorize it from your library; the grant is yours and stays yours.

03

Ask for what you need

The agent searches, reads the one schema it picked, and runs it. You do not name the tool.

claude code
claude mcp add --transport http omniio https://mcp.omniio.dev
Design & content

Others in the same category.

They share the endpoint, so having more than one on costs you nothing in context — the search decides which is relevant.

Browse the whole library