Contentful remote MCP connector

  • Updated

The Contentful remote Model Context Protocol (MCP) connector in Optimizely Opal helps you manage, query, and automate your content ecosystem. From creating complex content entries to executing AI-driven workflows, these tools provide a direct link to your Contentful spaces. This lets you handle assets, localized tags, environment configurations, and so on, with professional precision and scaled automation.

The Contentful remote MCP is managed by Contentful. See Model Context Protocol (MCP) server in their documentation for information.

First, an Opal administrator must Connect the Contentful remote MCP to Opal. After adding the MCP server, individual Opal users and agent builders log in to Contentful to access their information from Opal. Administrators need to add the Contentful remote MCP only once.

Connect the Contentful remote MCP to Opal

To connect the Contentful remote MCP to Opal, complete the following steps as an Opal administrator:

  1. Go to Tools > Connectors in Opal.
  2. Click Add Remote MCP

    Screenshot of the Opal Connectors page where the Add Remote MCP button is visible
  3. Click Contentful.
  4. Click Next.
  5. Click Connect to Contentful.
  6. Complete required access configuration in the pop-up window.
  7. Click Accept.

The Contentful tile is now available on the Connectors tab for users to authenticate with their personal accounts.

Authenticate with Contentful

After an administrator connects the Contentful remote MCP to Opal, you can log in to Contentful. User-level authentication ensures Opal users and agent builders can access only their authorized Contentful data.

To authenticate, complete the following steps in Opal:

  1. Go to Tools > Connectors.
  2. Click Connect for Contentful.
  3. Log in to Contentful.

After you connect to Contentful, the Contentful connector tools become available in Opal Chat, agents, and workflows.

Contentful connector tools

After an administrator connects the Contentful remote MCP to Opal and you log in to Contentful, the following tools are available in Opal. Click a tool name to expand it and view usage guidance, parameters, and example prompts. If you do not provide a required parameter, Opal prompts you for it.

Use the get_initial_context tool before calling any other tools.

get_initial_context – Initializes the MCP server context. Run this tool before using any other Contentful tools.
  • When to use
    • Before using any other Contentful tools to initialize the server environment.
    • Retrieve the initial context and usage instructions for the MCP server.
  • Parameters
    • None.
  • Example prompts
    • Initialize the Contentful MCP server to start managing my content.
    • Load the initial context for my Contentful space connections.
    • Prepare the Contentful tools for use in my next content management session.

AI actions

create_ai_action – Create a new AI action with instructions and variables.
  • When to use
    • Define a new AI-powered workflow within Contentful.
    • Establish clear instructions for how an AI should process or generate content.
    • Define reusable variables for AI prompts, for example, source content or target locales.
  • Parameters
    • configuration – The configuration for the AI action.
    • description – The description of the AI action.
    • environmentId – The ID of the Contentful environment.
    • instruction – The instruction for the AI action.
    • name – The name of the AI action.
    • spaceId – The ID of the Contentful space.
    • (Optional) testCases – Test cases for the AI action.
  • Example prompts
    • Create an AI action named Product Description Generator in my production environment that uses the master space.
    • Define a new AI action that translates blog posts into Spanish using specific brand voice instructions.
    • Set up an AI-driven SEO meta-tag creator with variables for target keywords and page titles.
delete_ai_action – Delete a specific AI action from your Contentful space.
  • When to use
    • Permanently remove an AI action that is no longer required.
    • Clean up your workspace by deleting deprecated or redundant AI configurations.
  • Parameters
    • aiActionId – The ID of the AI action to delete.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Delete the AI action with ID action_12345 from the staging environment.
    • Remove the old translation AI action from my Contentful space to reduce clutter.
    • Clean up my space by deleting the unused content type identified by ID temp_model.
get_ai_action – Retrieve details about a specific AI action.
  • When to use
    • Inspect the configuration and instructions of an existing AI action.
    • Verify the defined variables and settings before invoking an action.
  • Parameters
    • aiActionId – The ID of the AI action to retrieve.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Retrieve the details for the SEO Optimizer AI action in my developer environment.
    • Show me the instructions and configuration for the AI action with ID summary_tool_01.
    • Fetch the configuration for the English-to-French translation action to check its variables.
get_ai_action_invocation – Retrieve information about a specific AI action invocation.
  • When to use
    • Check the status or result of a previously triggered AI action.
    • Manage long-running AI processes by tracking their invocation ID.
  • Parameters
    • aiActionId – The ID of the AI action associated with the invocation.
    • environmentId – The ID of the Contentful environment.
    • invocationId – The ID of the AI action invocation to check.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Check the status of the AI invocation job with ID job_bcdef123 for action_987.
    • Get the results from the background AI processing task I started ten minutes ago using its invocation ID.
    • Look up the invocation details for the bulk content generation request in the master space.
invoke_ai_action – Run an AI action using strings or entity references.
  • When to use
    • Start processing content using a predefined AI action.
    • Perform bulk operations, for example, generating summaries for multiple blog posts at once.
    • Pass specific field data from existing entries to an AI prompt.
  • Parameters
    • aiActionId – The ID of the AI action to invoke.
    • environmentId – The ID of the Contentful environment.
    • fields – An array of strings or entity references to process.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Invoke the Summarizer AI action using the text from my homepage entry.
    • Process a bulk translation for these five entry IDs using the Spanish Translator action.
    • Run the SEO tag generator on my latest blog post by passing the title and body fields.
list_ai_actions – List AI actions in a space.
  • When to use
    • Browse all AI actions configured in a specific environment.
    • Find specific AI actions when you do not have their IDs.
    • Manage your AI action library and see which tools are available for use.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) include – Include this many levels of linked entries.
    • (Optional) limit – Maximum number of AI actions to return. The maximum value is 3.
    • (Optional) order – Order AI actions by this field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many AI actions for pagination.
  • Example prompts
    • List the first three AI actions available in my production environment.
    • Show me all AI actions in the staging space, skipping the first five results.
    • Search for AI actions in my Contentful space ordered by their creation date.
publish_ai_action – Publish an AI action to make it available for use in the Contentful web app.
  • When to use
    • Activate an AI action so that content editors can use it in the web interface.
    • Deploy the action to your production workflow after finalizing its instructions.
  • Parameters
    • aiActionId – The ID of the AI action to publish.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Publish the new Product Description Generator action in the master environment.
    • Deploy the translation tool to the Contentful web app so editors can begin using it.
    • Activate the AI action with ID bulk_seo_01 so it appears for my marketing team.
unpublish_ai_action – Unpublish an AI action to remove it from use in the Contentful web app.
  • When to use
    • Hide an AI action from content editors without deleting it.
    • Temporarily disable an AI workflow that requires maintenance or updates.
  • Parameters
    • aiActionId – The ID of the AI action to unpublish.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Unpublish the Spanish Translator action from the production space.
    • Remove the experimental AI action from the web app interface to prevent editor access.
    • Take the content summary tool offline temporarily by unpublishing it.
update_ai_action – Update an existing AI action configuration.
  • When to use
    • Modify the instructions or configuration of an already created AI action.
    • Refine settings, names, or descriptions based on performance feedback.
    • Merge new property updates with the existing data of an AI action.
  • Parameters
    • aiActionId – The ID of the AI action to update.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) configuration – Updated configuration settings.
    • (Optional) description – The updated description of the AI action.
    • (Optional) instruction – The updated instructions for the AI to follow.
    • (Optional) name – The updated name of the AI action.
    • (Optional) testCases – Updated test cases for validation.
  • Example prompts
    • Update the instructions for my Product Description AI action to include more technical details.
    • Modify the description of the SEO tool in the staging environment.
    • Change the name of the translation action and add a new test case for French localization.

Assets and media

archive_asset – Archive unpublished assets for preservation.
  • When to use
    • Archive assets that are no longer needed but should be preserved.
    • Clean up the assets view by moving unpublished items to the archive.
    • Archive a single asset or multiple assets sequentially.
  • Parameters
    • assetId – The ID of the asset to archive (string) or an array of asset IDs (up to 100 assets).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Archive the hero banner asset with ID banner_001 in production.
    • Archive multiple assets including img_1 and img_2 from the staging space.
    • Perform a preservation task by archiving all unpublished logo assets in the master environment.
delete_asset – Delete an asset.
  • When to use
    • Permanently remove an asset from your Contentful space.
    • For data cleanup when an asset and its file are no longer required.
  • Parameters
    • assetId – The ID of the asset to delete.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Delete the corrupted asset file identified by ID xyz_789.
    • Delete the old background image from my Contentful space.
    • Clean up the system by deleting the asset with ID temp_file_456.
get_asset – Retrieve an asset.
  • When to use
    • Fetch the details, metadata, and file information for a specific asset.
    • Verify the current status or title of an asset before performing further operations.
  • Parameters
    • assetId – The ID of the asset to retrieve.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Fetch the details and metadata for asset ID asset_999 from the master space.
    • Retrieve the image asset with ID photo_2024 to verify its title.
    • Get the asset information for logo_primary in the production environment.
list_assets – List assets in a space.
  • When to use
    • Browse the assets available in a specific environment.
    • Find assets based on specific criteria or for pagination through large sets of media.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) include – Include this many levels of linked entries.
    • (Optional) limit – Maximum number of assets to return. The maximum value is 3.
    • (Optional) links_to_entry – Find assets that link to the specified entry ID.
    • (Optional) locale – The locale to display asset fields in, for example en-US or de-DE.
    • (Optional) order – Order assets by this specific field.
    • (Optional) select – Comma-separated list of fields to return in the response.
    • (Optional) skip – Number of assets to skip for pagination purposes.
  • Example prompts
    • List the first three assets in my production environment.
    • Show me all assets in the staging space, skipping the first ten results.
    • Retrieve a list of assets in the master space, ordered by their creation date.
publish_asset – Publish an asset or multiple assets.
  • When to use
    • Make a single asset or multiple assets live for public delivery.
    • Perform bulk publishing operations for up to 100 assets.
  • Parameters
    • assetId – The ID of the asset to publish (string) or an array of asset IDs (up to 100 assets).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Publish the newly uploaded company profile PDF in the production environment.
    • Make these three images including img_a, img_b, and img_c live by publishing them in bulk.
    • Publish the asset with ID file_v2 to ensure it is available for public delivery.
unarchive_asset – Unarchive an asset or multiple assets.
  • When to use
    • Restore archived assets so they can be edited or published again.
    • Bring back previously hidden media into the active asset list.
  • Parameters
    • assetId – The ID of the asset to unarchive (string) or an array of asset IDs (up to 100 assets).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Restore the archived logo asset for further editing in the staging space.
    • Unarchive multiple image files such as pic_1 and pic_2 to make them available for publishing.
    • Bring back the promotional video asset from the archive in my developer environment.
unpublish_asset – Unpublish an asset or multiple assets.
  • When to use
    • Remove an asset from public delivery.
    • Hide media from the public before archiving or deleting it.
  • Parameters
    • assetId – The ID of the asset to unpublish (string) or an array of asset IDs (up to 100 assets).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Remove the seasonal campaign banner from public view by unpublishing it.
    • Stop the public delivery of the old pricing sheet asset in production.
    • Unpublish the image with ID asset_old so it can be safely archived.
update_asset – Update an asset.
  • When to use
    • Modify the field values, metadata, or settings of an existing asset.
    • Refresh asset titles or alt text across different locales.
  • Parameters
    • assetId – The ID of the asset to update.
    • environmentId – The ID of the Contentful environment.
    • fields – The field values to update. Keys should be field IDs and values should be the field content.
    • spaceId – The ID of the Contentful space.
    • (Optional) metadata – Metadata for the asset or entry, such as tags.
  • Example prompts
    • Update the title and alt text fields for the main logo asset in development.
    • Modify the field values for the asset with ID image_01 in the master space.
    • Refresh the fields for the company banner asset to include new descriptive content.
upload_asset – Upload a new asset.
  • When to use
    • Add new media files, documents, or images to your Contentful space.
    • Establish the initial title and description for a new asset record.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • file – The file information for the asset.
    • spaceId – The ID of the Contentful space.
    • title – The title of the asset.
    • (Optional) description – The description of the asset.
    • (Optional) locale – The locale for the asset fields, for example en-US or de-DE.
    • (Optional) metadata – Metadata for the asset or entry, such as tags.
  • Example prompts
    • Upload a new branded background image to my Contentful production space.
    • Add a new PDF document titled Q1 Financial Report to the master environment.
    • Upload the photography file sunrise.jpg with a professional description and metadata.

Content entries

archive_entry – Archive unpublished entries for preservation.
  • When to use

    Entries must be unpublished before they can be archived.
    • Archive entries that are no longer needed but should be preserved.
  • Archive a single entry or multiple entries sequentially.
  • Parameters
    • entryId – The ID of the entry to archive (string) or an array of entry IDs (up to 100 entries).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Archive the draft blog post with ID entry_123 in the staging environment.
    • Archive multiple entries including item_1 and item_2 from my Contentful space.
    • Preserve old promotional content by archiving the unpublished entries in production.
create_entry – Create a new entry in Contentful.

This tool requires knowledge of the contentTypeId and its associated field definitions.

  • When to use
    • Add a new content entry to your Contentful environment.
    • Apply tags to the entry during creation.
  • Parameters
    • contentTypeId – The ID of the content type to create an entry for.
    • environmentId – The ID of the Contentful environment.
    • fields – The field values for the new entry. Keys should be field IDs and values should be the field content.
    • spaceId – The ID of the Contentful space.
    • (Optional) metadata – Metadata for the entry, primarily used for adding tags.
  • Example prompts
    • Create a new blogPost entry in the master space with the title My First Post.
    • Add a product entry to staging with specific field values for SKU and price.
    • Establish a new press release entry and apply the corporate tag using its metadata.
delete_entry – Delete a specific content entry from your Contentful space.
  • When to use
    • Permanently remove an entry from your Contentful workspace.
    • When content is no longer relevant and does not need to be archived.
  • Parameters
    • entryId – The ID of the entry to delete.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Delete the outdated test entry with ID entry_999 from the developer environment.
    • Permanently remove the entry with ID temp_blog_port since it is no longer required.
    • Clean up my production space by deleting the entry identified by ID obsolete_01.
get_entry – Retrieve an existing content entry.
  • When to use
    • Fetch the full details and field values of a specific entry.
    • Inspect the current state of an entry before performing updates or publishing.
  • Parameters
    • entryId – The ID of the entry to retrieve.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Fetch the content and metadata for the entry with ID about_us_page.
    • Retrieve the blog post entry with ID post_456 to check its current status.
    • Get the details for the entry identified by ID product_x in the master space.
publish_entry – Publish a single entry or bulk publish multiple entries.
  • When to use
    • Make a single entry or multiple entries live for public availability.
    • Bulk publish up to 100 entries at once by passing an array of entry IDs.
  • Parameters
    • entryId – The ID of the entry to publish (string) or an array of entry IDs (up to 100 entries).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Publish the announcement entry with ID entry_789 in the production space.
    • Make multiple entries live by publishing IDs article_1, article_2, and article_3 in bulk.
    • Publish the draft entry for our latest product launch to ensure it is visible to users.
search_entries – Flexible search for entries using any Contentful API parameter.
  • When to use
    • Find specific entries in your space based on flexible query parameters.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • query – Flexible search parameters supporting any Contentful API query parameter.
      • query:content_type – Filter entries by a specific content type ID.
      • query:fields.* – Filter by the content of specific fields, for example fields.title[match]=First.
      • query:sys.* – Filter by system properties, for example sys.id=entry_1.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Search for all blog post entries that contain the word vacation in their title.
    • Find entries in the staging environment that belong to the product content type.
    • Perform a flexible search for entries created after January 1st in the master space.
unarchive_entry – Restore archived entries for editing/publishing.
  • When to use
    • Restore archived entries so they can be managed and published once more.
    • Archive a single asset or multiple assets sequentially.
  • Parameters
    • entryId – The ID of the entry to unarchive (string) or an array of entry IDs (up to 100 entries).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Restore the archived pricing entry for the upcoming promotion in production.
    • Unarchive multiple entries including old_post_1 and old_post_2 to prepare for updates.
    • Bring back our archived terms of service entry from the archive in the developer space.
unpublish_entry – Remove entries from public delivery.
  • When to use
    • Take an entry offline so it is no longer publicly accessible.
    • Bulk publish up to 100 entries at once by passing an array of entry IDs.
  • Parameters
    • entryId – The ID of the entry to unpublish (string) or an array of entry IDs (up to 100 entries).
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Unpublish the seasonal offer entry with ID offer_2023 from public view.
    • Remove multiple entries including news_a and news_b from the delivery API in bulk.
    • Hide the outdated press release entry from the web app using the unpublish tool.
update_entry – Update existing entry fields.
  • When to use
    • Modify the field values of an existing entry. Merges specific field updates with current data.

      For fields with multiple locales, all existing locales must be included in the update to avoid data loss.
  • Parameters
    • entryId – The ID of the entry to update.
    • environmentId – The ID of the Contentful environment.
    • fields – The field values to update. Keys should be field IDs and values should be the field content.
    • spaceId – The ID of the Contentful space.
    • (Optional) metadata – Metadata for the asset or entry, such as tags.
  • Example prompts
    • Modify the title field for the blog entry with ID post_001 in my master space.
    • Update specific fields for the product entry in staging to reflect the new price.
    • Refine the content for our homepage entry by merging new field updates in production.

Model content and editor UI

create_content_type – Create a new content type definition.
  • When to use
    • Define a new content structure within your Contentful space.
    • When you need to specify the fields, data types, and display field for a new content type.
  • Parameters
    • displayField – The field ID to use as the display field.
    • environmentId – The ID of the Contentful environment.
    • fields – Array of field definitions for the content type.
    • name – The name of the content type.
    • spaceId – The ID of the Contentful space.
    • (Optional) contentTypeId – ID for the content type. If provided, uses the createWithId method.
    • (Optional) description – Description of the content type.
    • (Optional) metadata – Metadata for the asset or entry, such as tags.
  • Example prompts
    • Create a new content type for Blog Posts with a title field and a body field.
    • Define a content structure for a Product Catalog with fields for name, price, and description.
    • Set up a new content type in my Contentful space named Author with a profile picture field.
delete_content_type – Permanently delete a content type.
  • When to use 

    This operation is permanent and removes the content model from the space.
    • Remove a content type that is no longer needed.
  • Parameters
    • contentTypeId – The ID of the content type to delete.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Delete the content type with ID legacy_post from my Contentful space.
    • Remove the Author content type from the developer environment.
    • Clean up my space by deleting the unused content type identified by ID temp_model.
get_content_type – Get details about a specific content type and its fields.
  • When to use
    • Inspect the field definitions and properties of an existing content type.
    • Verify the structure of a model before creating new entries or making updates.
  • Parameters
    • contentTypeId – The ID of the content type to retrieve details for.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Retrieve the field definitions for the Blog Post content type in the master environment.
    • Show me the details for the content type with ID product_detail.
    • Inspect the structure of the Author model in my Contentful dev space.
get_editor_interface – Get widget and layout configuration for a content type.
  • When to use
    • See how fields are displayed and edited within the Contentful web app.
    • Check which widgets are assigned to specific fields in a content type.
  • Parameters
    • contentTypeId – The ID of the content type to retrieve the editor interface for.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Fetch the editor configuration for the Page content type in production.
    • Get the widget settings for the Blog Post model to see how the rich text editor is configured.
    • Show me the layout and sidebar configurations for the Author content type.
list_content_types – List content types in a space.
  • When to use
    • Browse all content types available in your space.
    • Find IDs for content modeling tasks.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) include – Include this many levels of linked entries.
    • (Optional) limit – Maximum number of content types to return. The maximum value is 10.
    • (Optional) order – Order content types by this field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many content types for pagination.
  • Example prompts
    • List all content types available in my production environment.
    • Retrieve the first 10 content models from the developer space.
    • Show me a list of content types in the master environment, skipping the first five results.
list_editor_interfaces – Get all editor interfaces for a space.
  • When to use
    • Get a comprehensive view of how all content types are configured for the web app UI.
    • Audit widget usage and editor layouts across the entire space.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • List every editor interface configuration in my staging environment.
    • Get the full set of widget and sidebar settings for all content types in the master space.
    • Retrieve the editor interface list for the production environment.
publish_content_type – Activate a content type for use.
  • When to use

    Only published content types can be used to create new entries.
    • Make a newly created or updated content type active.
  • Parameters
    • contentTypeId – The ID of the content type to publish.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Publish the new Product content type so my team can start adding items.
    • Activate the updated Blog Post content type in the production space.
    • Make the Author content model live in my developer environment.
unpublish_content_type – Deactivate a content type.
  • When to use
    • Prevent new entries from being created with a specific content type.
    • Deactivate a content type before deleting it or during major schema updates.
  • Parameters
    • contentTypeId – The ID of the content type to unpublish.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Deactivate the Page content type in the master environment.
    • Unpublish the test model from my developer space to prevent editor access.
    • Take the legacy content type offline by unpublishing it.
update_content_type – Update fields or properties of a content type.
  • When to use
    • Modify the schema of an existing content type.
    • Add new fields, rename existing ones, or update general properties like the name or description.
  • Parameters
    • contentTypeId – The ID of the content type to update.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) description – Description of the content type.
    • (Optional) displayField – The field ID to use as the display field.
    • (Optional) fields – Array of field definitions for the content type. Will be merged with existing fields.
    • (Optional) metadata – Metadata for the asset or entry, such as tags.
    • (Optional) name – The name of the content type.
  • Example prompts
    • Add a publication date field to the Blog Post content type in staging.
    • Update the name and description of the Author content model.
    • Change the display field for the Product content type to the SKU field.
update_editor_interface – Customize widgets, sidebars, and layouts for editors.
  • When to use
    • Improve the editor experience by changing widget types (for example, switching a text field to a markdown editor).
    • Reorder fields in the editor or customize the sidebar tools.
  • Parameters
    • contentTypeId – The ID of the content type to update the editor interface for.
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) controls – Array of control definitions for fields. Each control defines which widget to use for a field.
    • (Optional) editorLayout – Editor layout configuration for organizing fields.
    • (Optional) groupControls – Array of group control definitions for field groups.
    • (Optional) sidebar – Array of sidebar widget configurations.
  • Example prompts
    • Change the widget for the Body field in the Blog Post model to use a Rich Text editor.
    • Update the sidebar for the Page content type to include the translation status widget.
    • Reorder the fields in the Author editor layout to place the name field at the top.

Environments and locales

create_environment – Create a new environment within a space.
  • When to use
    • Add a new environment (for example, staging or a development branch) to an existing space.
    • Clone an environment from a source environment, such as main.
  • Parameters
    • environmentId – The ID of the environment to create.
    • name – The name of the environment to create.
    • spaceId – The ID of the Contentful space.
    • (Optional) sourceEnvironmentId – The ID of the source environment to clone from (defaults to master).
  • Example prompts
    • Create a new environment named Staging with ID staging-01 in my Contentful space.
    • Establish a development environment by cloning the master branch into a new ID dev-env.
    • Set up a feature-test environment in the production space to experiment with new content models.
create_locale – Create a new language-region pair (for example, en-US).
  • When to use
    • Define a new language for your Contentful environment content.
    • Specify fallback behavior and API availability for a new locale.
  • Parameters
    • code – The locale code (for example, en-US).
    • environmentId – The ID of the Contentful environment.
    • fallbackCode – The locale code to fallback to when there is no content for the current locale.
    • name – The name of the locale.
    • spaceId – The ID of the Contentful space.
    • (Optional) contentDeliveryApi – Whether the content under this locale is available on the Content Delivery API (CDA).
    • (Optional) contentManagementApi – Whether the content under this locale should be available on the Content Management API (CMA).
    • (Optional) default – Whether this is the default locale.
    • (Optional) optional – Whether filling in this locale on entries is required.
  • Example prompts
    • Create a new locale for French (France) using the code fr-FR with English as the fallback.
    • Add a Spanish locale to my staging environment and make it available for content delivery.
    • Establish a German locale in the master space and mark it as optional for content editors.
delete_environment – Permanently delete an environment.
This operation is permanent and cannot be undone.
  • When to use
    • Remove an environment that is no longer required.
  • Parameters
    • environmentId – The ID of the environment to delete.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Delete the outdated staging environment staging-test-01 from my space.
    • Remove the temporary development branch environment to free up space.
    • Clean up my space by deleting the environment identified by ID feature-x-env.
delete_locale – Permanently delete a specific locale.
  • When to use
    • Remove a language-region pair from your environment.
    • Remove a locale that is no longer supported or was created in error.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • localeId – The ID of the locale to delete.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Delete the localized German entry option in the dev environment.
    • Remove the locale with ID fr-CA from my Contentful staging space.
    • Permanently delete the Spanish locale since it is no longer being used.
get_locale – Retrieve details for a specific locale.
  • When to use
    • Inspect the configuration and settings of an existing locale.
    • Check fallback settings or API availability for a specific language.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • localeId – The ID of the locale to retrieve.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Retrieve the configuration details for the en-GB locale in my production space.
    • Show me the settings for the locale with ID es-ES in the developer environment.
    • Fetch information about the French locale to verify its fallback language.
list_environments – List all environments in a space.
  • When to use
    • Browse all environments configured within a specific Contentful space.
    • Discover environment IDs for further management or content modeling.
  • Parameters
    • spaceId – The ID of the Contentful space.
    • (Optional) environmentId – The ID of the Contentful environment (not required for listing).
    • (Optional) limit – Maximum number of content types to return. The maximum value is 10.
    • (Optional) order – Order environments by this field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many environments for pagination.
  • Example prompts
    • List all environments available in the production space.
    • Retrieve the first 10 environments from my developer space.
    • Show me a list of environments in the master space, skipping the first three results.
list_locales – List all locales including fallback and API settings.
  • When to use
    • Browse all language-region pairs configured in an environment.
    • Get a comprehensive view of localization settings, API availability, and fallback structures.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • (Optional) include – Include this many levels of linked entries.
    • (Optional) limit – Maximum number of locales to return.
    • (Optional) order – Order locales by this field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many locales for pagination.
  • Example prompts
    • List all configured locales in the staging environment.
    • Retrieve a list of locales in the master space, ordered by their creation date.
    • Show me the localization options available in my production environment including fallback settings.
update_locale – Update locale names, codes, or fallback behavior.
  • When to use
    • Modify the properties of an existing locale, such as its name or fallback behavior.
    • Toggle API availability settings for a specific language.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • fields – An object containing the fields to update (for example, name or fallbackCode).
    • localeId – The ID of the locale to update.
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Update the name of the locale with ID es to Spanish (Castilian) in staging.
    • Modify the fallback language for the French locale to use British English.
    • Toggle the API availability fields for the German locale in my master environment.

Organization and space administration

get_org – Get details of a specific organization.
  • When to use
    • Retrieve information about a particular Contentful organization.
    • Verify plan details, subscription limits, or member counts for an organization.
  • Parameters
    • organizationId – The ID of the organization to retrieve details for.
  • Example prompts
    • Get the organization details for ID org_123.
    • Show me the information for my primary Contentful organization.
    • Retrieve the full details for the organization specified by its ID.
get_space – Get details of a specific Contentful space.
  • When to use
    • Fetch the properties and configuration of a specific space.
    • Verify space metadata such as name, default locale, and creation timestamps.
  • Parameters
    • spaceId – The ID of the Contentful space.
  • Example prompts
    • Retrieve the space details for my production environment space ID.
    • Show me the properties and configuration for the space with ID master-space.
    • Get the details for the specific Contentful space I am currently working in.
list_orgs – List all organizations you can access.
  • When to use
    • Find organization IDs when managing content for a new project.
    • Browse all organizations your account has access to.
  • Parameters
    • (Optional) order – Order organizations by this field.
    • (Optional) limit – Maximum number of organizations to return. The maximum value is 10.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many organizations for pagination.
  • Example prompts
    • List all the organizations that I have access to in Contentful.
    • Show me a list of my Contentful organizations to find my subscription details.
    • Browse all organization connections linked to my Contentful account.
list_spaces – List all available spaces.
  • When to use
    • Browse all spaces configured across your Contentful account.
    • Find specific space IDs before performing environment or content modeling operations.
  • Parameters
    • (Optional) limit – Maximum number of content types to return. The maximum value is 10.
    • (Optional) order – Order spaces by this field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many spaces for pagination.
  • Example prompts
    • List the first ten available spaces in my Contentful account.
    • Show me all available spaces ordered by their name.
    • Browse my Contentful spaces skipping the first three entries.

Taxonomy and tags

create_concept – Create a new taxonomy concept in Contentful.
  • When to use
    • Create new taxonomy concepts to categorize and organize content.
    • Define hierarchical relationships between entries by establishing broad or specific concepts.
    • Provide localized labels and definitions for a taxonomy concept.
  • Parameters
    • organizationId – The ID of the Contentful organization.
    • prefLabel – The preferred label for the concept.
    • (Optional) altLabels – Alternative labels for the concept.
    • (Optional) broader – Links to broader concepts.
    • (Optional) conceptId – ID for the concept. If not provided, Contentful generates one automatically.
    • (Optional) definition – Definition of the concept.
    • (Optional) editorialNote – Editorial note for the concept.
    • (Optional) example – Example for the concept.
    • (Optional) hiddenLabels – Hidden labels for the concept.
    • (Optional) historyNote – History note for the concept.
    • (Optional) notations – Notations for the concept.
    • (Optional) note – General note for the concept.
    • (Optional) related – Links to related concepts.
    • (Optional) scopeNote – Scope note for the concept.
    • (Optional) uri – The URI for the concept.
  • Example prompts
    • Create a new taxonomy concept named Marketing Strategy in my organization.
    • Define a concept for Mobile Development with a localized definition in French and German.
    • Establish a broad concept for Cloud Computing and link it to related technical categories.
create_concept_scheme – Create a new taxonomy concept scheme in Contentful.
  • When to use
    • Organize related concepts into a hierarchical structure for better taxonomy management.
    • Establish top-level concepts that serve as the foundation for your content categorization.
    • Define the overall scope and localized labels for a new concept scheme.
  • Parameters
    • organizationId – The ID of the Contentful organization.
    • prefLabel – The preferred label for the concept scheme.
    • (Optional) conceptSchemeId – ID for the concept scheme. If not provided, Contentful generates one automatically.
    • (Optional) definition – Definition of the concept scheme.
    • (Optional) editorialNote – Editorial note for the concept scheme.
    • (Optional) example – Example for the concept scheme.
    • (Optional) historyNote – History note for the concept scheme.
    • (Optional) note – General note for the concept scheme.
    • (Optional) scopeNote – Scope note for the concept scheme.
    • (Optional) topConcepts – Links to top-level concepts in this scheme.
    • (Optional) uri – The URI for the concept scheme.
  • Example prompts
    • Create a new taxonomy concept scheme titled Corporate Hierarchy in my organization.
    • Establish a scheme for Product Categories with a localized definition in Spanish.
    • Define a new concept scheme for Industry Standards and assign the initial top-level concepts.
create_tag – Create a new public or private tag.
  • When to use
    • Create consistent identifiers that can be applied to assets and entries within a specific environment.
    • Establish unique tag names and IDs for content organization.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • name – The name of the tag.
    • spaceId – The ID of the Contentful space.
    • tagId – The unique ID for the tag. Must be unique to the environment.
    • visibility – The visibility of the tag, for example, public or private. Defaults to private.
  • Example prompts
    • Create a new public tag named Winter Campaign with ID winter-2024 in the production space.
    • Add a private tag for Internal Review only in our staging environment.
    • Establish a tag named Urgent for high-priority content items in the master space.
delete_concept – Delete a taxonomy concept from Contentful.
  • When to use
    • Permanently remove a taxonomy concept that is no longer needed.
    • Update your taxonomy structure to eliminate obsolete or duplicate concepts.
  • Parameters
    • conceptId – The ID of the concept to delete.
    • organizationId – The ID of the Contentful organization.
    • version – The current version of the concept for optimistic concurrency control.
  • Example prompts
    • Delete the outdated taxonomy concept identified by ID legacy-tag-01.
    • Remove the duplicate concept from my organization by providing its ID and version number.
    • Permanently delete the obsolete category concept from our corporate taxonomy.
delete_concept_scheme – Delete a taxonomy concept scheme from Contentful.
  • When to use
    • Permanently remove an entire concept scheme that has become redundant.
    • Clear out old structures during a major reorganization of your taxonomy systems.
  • Parameters
    • conceptSchemeId – The ID of the concept scheme to delete.
    • organizationId – The ID of the Contentful organization.
    • version – The current version of the concept scheme for optimistic concurrency control.
  • Example prompts
    • Delete the deprecated taxonomy scheme for 2022 Campaigns.
    • Remove the temporary organizational scheme by providing its ID and correct version.
    • Clean up my space by deleting the obsolete concept scheme from my organization.
get_concept – Retrieve a specific taxonomy concept from Contentful.
  • When to use
    • Fetch the full details, labels, and definitions for a particular taxonomy concept.
    • Inspect the relationships of a concept, for example, its broader or related links.
  • Parameters
    • conceptId – The ID of the concept to retrieve.
    • organizationId – The ID of the Contentful organization.
  • Example prompts
    • Retrieve the full details for the concept identified by ID marketing-001.
    • Show me the localized labels and definitions for our primary mobile concept.
    • Fetch the metadata and relationship data for the specified concept in my organization.
get_concept_scheme – Retrieve a specific taxonomy concept scheme from Contentful.
  • When to use
    • Inspect the properties, top-level concepts, and localized labels for a concept scheme.
    • Understand the organizational structure of a particular set of taxonomy items.
  • Parameters
    • conceptSchemeId – The ID of the concept scheme to retrieve.
    • organizationId – The ID of the Contentful organization.
  • Example prompts
    • Get the complete details for the Corporate Taxonomy scheme ID.
    • Show me the structure and top-level links for our Global Product scheme.
    • Retrieve all configuration data for the specified concept scheme in my organization.
list_concept_schemes – List and filter taxonomy concept schemes.
  • When to use
    • Browse all available taxonomy concept schemes within your organization.
    • Find specific schemes before performing management tasks or content categorization.
  • Parameters
    • organizationId – The ID of the Contentful organization.
    • (Optional) include – Include this many levels of linked entries.
    • (Optional) limit – Maximum number of concept schemes to return.
    • (Optional) order – Order concept schemes by this specific field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many concept schemes for pagination.
  • Example prompts
    • List all taxonomy concept schemes within my organization.
    • Show me the first five concept schemes, ordered by their creation date.
    • Browse through the available schemes in my account to find the ID for my project.
list_concepts – List taxonomy concepts in a Contentful organization.
  • When to use
    • Browse taxonomy concepts with support for descendants and ancestors.
    • Perform counts, pagination, and various filtering operations on your taxonomy library.
  • Parameters
    • organizationId – The ID of the Contentful organization.
    • (Optional) conceptId – The ID of the concept (required for descendants and ancestors).
    • (Optional) getAncestors – Get ancestors of the specified concept (requires conceptId).
    • (Optional) getDescendants – Get descendants of the specified concept (requires conceptId).
    • (Optional) getTotalOnly – Get only the total number of concepts without full data.
    • (Optional) include – Include this many levels of linked entries.
    • (Optional) limit – Maximum number of concepts to return.
    • (Optional) order – Order concepts by this specific field.
    • (Optional) select – Comma-separated list of fields to return.
    • (Optional) skip – Skip this many concepts for pagination.
  • Example prompts
    • List all taxonomy concepts currently defined in my organization.
    • Show me all descendant concepts for the parent category ID tech-main.
    • Count the total number of taxonomy concepts available in my library.
list_tags – List all tags within a specific environment.
  • When to use
    • Get a list of all identifiers created within a given environment.
    • Discover existing tag names and IDs to ensure consistency in content tracking.
  • Parameters
    • environmentId – The ID of the Contentful environment.
    • spaceId – The ID of the Contentful space.
    • limit – Maximum number of tags to return.
    • order – Order tags by this field.
    • select – Comma-separated list of fields to return.
    • skip – Skip this many tags for pagination.
  • Example prompts
    • List all tags that currently exist in my production environment.
    • Show me the available tags for the staging space master environment.
    • Retrieve the identification tags configured for use in our master space.
update_concept – Modify labels, definitions, or relationships for a concept.
  • When to use
    • Update the fields of a taxonomy concept, such as labels, definitions, and metadata.
    • Refine the hierarchical relationships between concepts.
    • Merge new field data with the existing concept entry.
  • Parameters
    • conceptId – The ID of the concept to update.
    • organizationId – The ID of the Contentful organization.
    • version – The current version of the concept for optimistic concurrency control.
    • (Optional) altLabels – Alternative labels for the concept.
    • (Optional) broader – Links to broader concepts.
    • (Optional) definition – Definition of the concept.
    • (Optional) editorialNote – Editorial note for the concept.
    • (Optional) example – Example for the concept.
    • (Optional) hiddenLabels – Hidden labels for the concept.
    • (Optional) historyNote – History note for the concept.
    • (Optional) notations – Notations for the concept.
    • (Optional) note – General note for the concept.
    • (Optional) prefLabel – The preferred label for the concept.
    • (Optional) related – Links to related concepts.
    • (Optional) scopeNote – Scope note for the concept.
    • (Optional) uri – The URI for the concept.
  • Example prompts
    • Update the preferred label for the concept with ID marketing to Digital Strategy.
    • Modify the localized definition for our Cloud Computing concept.
    • Add a hidden label and notation field to the specified concept in my organization.
update_concept_scheme – Modify labels or definitions for a scheme.
  • When to use
    • Update the settings or configuration of a taxonomy scheme.
    • Add new concepts to both the scheme contents and top-level concept list.
  • Parameters
    • conceptSchemeId – The ID of the concept scheme to update.
    • organizationId – The ID of the Contentful organization.
    • version – The current version of the concept scheme for optimistic concurrency control.
    • (Optional) addConcept – ID of a concept to add to this scheme (adds to both concepts and topConcepts).
    • (Optional) definition – Definition of the concept scheme.
    • (Optional) editorialNote – Editorial note for the concept scheme.
    • (Optional) example – Example for the concept scheme.
    • (Optional) historyNote – History note for the concept scheme.
    • (Optional) note – General note for the concept scheme.
    • (Optional) prefLabel – The preferred label for the concept scheme.
    • (Optional) scopeNote – Scope note for the concept scheme.
    • (Optional) topConcepts – Links to top-level concepts in this scheme.
    • (Optional) uri – The URI for the concept scheme.
  • Example prompts
    • Add the concept with ID winter-promo to our primary Marketing scheme.
    • Update the preferred label and definition for the Corporate Structure scheme.
    • Modify the top-level concept links for our Global Industry scheme in my organization.

If you use Opti ID, administrators can turn off generative AI in the Opti ID Admin Center. See Turn generative AI off across Optimizely applications.