Contentful for AI agents

Contentful is a headless CMS for managing structured content, letting teams create and publish content once and deliver it to any channel through an API. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.

Developer toolsOAuth 2.0MCP + RESTcontentful.com
AUDIT LOG · CONTENTFULPOLICY: acme-support
09:41:07 · claude · u_8f2read
contentful.list_spaces
List spaces✓ allowed · 212ms
09:41:08 · claude · u_8f2read
contentful.get_asset
Get Asset✓ allowed · 164ms
09:41:09 · claude · u_8f2write
contentful.create_space
Create Space✓ approved · approved by user
09:41:12 · claude · u_8f2destructive
contentful.delete_tag
Delete Tag✕ blocked · policy: deny
EVERY CONTENTFUL CALL, ON THE RECORD
01 · USE CASES

What agents do in Contentful.

01

Create a new content entry

Create a new entry in a content type, ready to fill in and publish.

02

Check a space's environments

List a space's environments before deciding where a content change should be made.

03

Confirm before deleting an entry

Confirm before deleting an entry, since any page referencing it would break on publish.

02 · ACTIONS

124 Contentful actions, graded by risk.

Every Contentful action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.

read

60

Look things up. Allowed by default.

  • contentful.get_asset
    Get Asset
  • contentful.get_entry
    Get Entry
  • contentful.get_space
    Get space
  • contentful.get_release
    Get Release
  • contentful.get_webhook
    Get Webhook
  • contentful.list_spaces
    List spaces
  • contentful.get_users_me
    Get Authenticated User
  • contentful.list_entries
    List Entries
  • contentful.list_webhooks
    List Space Webhooks
  • contentful.get_app_bundle
    Get App Bundle
  • contentful.get_environment
    Get Environment
  • contentful.get_organization
    Get Organization
  • contentful.get_content_types
    Get Content Types
  • contentful.get_entry_comment
    Get Entry Comment
  • contentful.get_organizations
    Get Organizations
  • contentful.get_webhook_calls
    Get Webhook Calls
+ 44 MORE

write

42

Create and change things. Allow, or ask the user first.

  • contentful.create_space
    Create Space
  • contentful.update_entry
    Update Entry
  • contentful.update_space
    Update space
  • contentful.create_locale
    Create Locale
  • contentful.update_locale
    Update Locale
  • contentful.create_release
    Create Release
  • contentful.create_webhook
    Create Webhook
  • contentful.update_webhook
    Update Webhook
  • contentful.create_entry_task
    Create Entry Task
  • contentful.create_environment
    Create Environment
  • contentful.create_content_type
    Create Content Type
  • contentful.update_content_type
    Update Content Type
  • contentful.update_app_definition
    Update App Definition
  • contentful.create_spaces_api_keys
    Create Delivery API Key
  • contentful.update_editor_interface
    Update Editor Interface
  • contentful.create_app_definitions_keys
    Create App Signing Key
+ 26 MORE

destructive

22

Delete, cancel or archive. Ask first, or deny outright.

  • contentful.delete_tag
    Delete Tag
  • contentful.delete_asset
    Delete Asset
  • contentful.delete_entry
    Delete Entry
  • contentful.archive_asset
    Archive Asset
  • contentful.archive_entry
    Archive Entry
  • contentful.delete_locale
    Delete Locale
  • contentful.delete_release
    Delete Release
  • contentful.delete_webhook
    Delete Webhook
  • contentful.archive_release
    Archive Release
  • contentful.delete_extension
    Delete Extension
  • contentful.delete_environment
    Delete Environment
  • contentful.delete_content_type
    Delete Content Type
  • contentful.delete_spaces_upload
    Delete Spaces Upload
  • contentful.delete_spaces_api_keys
    Delete Delivery API Key
  • contentful.delete_scheduled_action
    Delete Scheduled Action
  • contentful.delete_space_membership
    Delete Space Membership
+ 6 MORE
03 · HOW IT WORKS

Contentful in three steps.

  1. 01Your users connect ContentfulThey sign in to Contentful on Arc0 Connect, under your brand, and approve the access you ask for.
  2. 02You set the rulesReads run, writes like “create Space” can wait for the user, and “delete Tag” can be denied outright.
  3. 03Any agent can actYour agent calls Contentful through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
POLICY.TS
await arc0.policies.set('contentful', {
  read: 'allow',
  write: 'ask',        // create_space
  destructive: 'deny',  // delete_tag
})

# Claude Code: the same connection, one URL
$ claude mcp add --transport http arc0 \
    https://mcp.arc0.ai/u/u_8f2
04 · AUTH AND DATA

How Contentful connects.

Users sign in to Contentful on Arc0 Connect and approve the scopes you request. Build with Arc0’s Contentful OAuth app, or bring your own so the Contentful consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

The same Contentful connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →

AUTH
API key · OAuth 2.0
CREDENTIALS
Per-tenant encrypted vault
MODEL SEES
Results only, never credentials
AUDIT LOG
Every call, on every plan
05 · WORKS WITH

Use Contentful from any agent.

Claude
ChatGPT
Cursor
Codex
VS Code
OpenAI Agents SDK
Claude Agent SDK
Vercel AI SDK
Mastra
LangGraph
07 · FAQ

Contentful and Arc0, answered.

Q01

Can I use Contentful with Claude, ChatGPT or Cursor?

Yes. Connect Contentful to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Contentful actions you allow.

Q02

How do users connect Contentful?

Users sign in to Contentful on Arc0 Connect and approve the scopes you request. Build with Arc0’s Contentful OAuth app, or bring your own so the Contentful consent screen names you. Tokens refresh automatically, and you can export them whenever you want.

Q03

Which Contentful actions can my agent take?

124 in total: 60 read, 42 write and 22 destructive, such as “create Space”. Your policies decide which of them each agent may call.

Q04

Can I stop my agent from deleting things in Contentful?

Yes. Actions like “delete Tag” are graded destructive. Set destructive actions to deny, or to ask so the user approves each one, and blocked calls still show up on the audit log.

Q05

Can my own backend call Contentful too?

Yes. The same Contentful connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.

Get started

Plug Contentful into your agent.

Your users connect Contentful once, under your brand. Your agent gets 124 actions behind your policies, with every call on the record.

Free to build · MCP + REST · Audit log on every plan