Skip to content
Scalekit Docs
Talk to an Engineer Dashboard

Connect AI agents to the Contentful MCP server

Vendor MCP
Open markdown

The Contentful MCP connector routes your AI agent's tool calls to Contentful's own MCP server through Scalekit. Each user signs in to Contentful once, and Scalekit stores and refreshes their tokens, so your agent never handles credentials. It comes with 70 tools.

Tools
70
What they doRead · write · destructive
27 · 24 · 1927 read24 write19 destructive
Users sign in with
OAuth app
Scalekit's or your own

Setup

  1. Install the SDK

    Terminal window
    npm install @scalekit-sdk/node dotenv
  2. Set your credentials

    Add your Scalekit credentials to your .env file. Find values in app.scalekit.com > Developers > API Credentials.

    .env
    SCALEKIT_ENVIRONMENT_URL=<your-environment-url>
    SCALEKIT_CLIENT_ID=<your-client-id>
    SCALEKIT_CLIENT_SECRET=<your-client-secret>
  3. Create the Contentful MCP connection

    In AgentKit > Connections, create a Contentful MCP connection. The name you give it is the connection_name your code passes. See Configure connections.

    Scalekit credentials are available for Contentful MCP server, so you don't need to register an OAuth app.

  4. Authorize a user and make your first call

    quickstart.mts
    import { ScalekitClient } from '@scalekit-sdk/node'
    import 'dotenv/config'
    import { createInterface } from 'node:readline/promises'
    const scalekit = new ScalekitClient(
    process.env.SCALEKIT_ENVIRONMENT_URL,
    process.env.SCALEKIT_CLIENT_ID,
    process.env.SCALEKIT_CLIENT_SECRET,
    )
    const actions = scalekit.actions
    const connector = 'contentfulmcp'
    const identifier = 'user_123'
    // Generate an authorization link for the user
    const { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })
    console.log('Authorize Contentful MCP:', link)
    const rl = createInterface({ input: process.stdin, output: process.stdout })
    await rl.question('Press Enter after authorizing...')
    rl.close()
    // Make your first call
    const result = await actions.executeTool({
    connector,
    identifier,
    toolName: 'contentfulmcp_get_initial_context',
    toolInput: {},
    })
    console.log(result)
    Terminal window
    npx tsx quickstart.mts

    Each user signs in once. See Authorize a user for the full flow and statuses.

Tools

Pass the exact name to execute_tool
Try in PlaygroundRequest a tool
  • contentfulmcp_get_ai_actionRetrieve details of a specific AI action including its instruction template and configuration.Read-only

    Get Ai Action

    Retrieve details of a specific AI action including its instruction template and configuration.

    Inputs

    aiActionIdstringrequired
    The unique identifier of the AI action.
    environmentIdstringrequired
    The Contentful environment ID (e.g. 'master', 'staging'). Find it in Settings > Environments.
    spaceIdstringrequired
    The unique identifier of the Contentful space. Find it in your Contentful dashboard under Settings > General.
  • contentfulmcp_get_ai_action_invocationRetrieve the result and status of a specific AI action invocation.Read-only

    Get Ai Action Invocation

    Retrieve the result and status of a specific AI action invocation.

    Inputs

    aiActionIdstringrequired
    The unique identifier of the AI action.
    environmentIdstringrequired
    The Contentful environment ID (e.g. 'master', 'staging'). Find it in Settings > Environments.
    invocationIdstringrequired
    The unique identifier of the AI action invocation.
    spaceIdstringrequired
    The unique identifier of the Contentful space. Find it in your Contentful dashboard under Settings > General.
  • contentfulmcp_get_assetRetrieve details of a specific asset including its file metadata and upload status.Read-only

    Get Asset

    Retrieve details of a specific asset including its file metadata and upload status.

    Inputs

    assetIdstringrequired
    The unique identifier of the asset.
    environmentIdstringrequired
    The Contentful environment ID (e.g. 'master', 'staging'). Find it in Settings > Environments.
    spaceIdstringrequired
    The unique identifier of the Contentful space. Find it in your Contentful dashboard under Settings > General.
  • contentfulmcp_get_conceptRetrieve details of a specific taxonomy concept including labels and relationships.Read-only

    Get Concept

    Retrieve details of a specific taxonomy concept including labels and relationships.

    Inputs

    conceptIdstringrequired
    The unique identifier of the taxonomy concept.
    organizationIdstringrequired
    The unique identifier of the Contentful organization.
  • contentfulmcp_get_concept_schemeRetrieve details of a specific taxonomy concept scheme including its top-level concepts.Read-only

    Get Concept Scheme

    Retrieve details of a specific taxonomy concept scheme including its top-level concepts.

    Inputs

    conceptSchemeIdstringrequired
    The unique identifier of the taxonomy concept scheme.
    organizationIdstringrequired
    The unique identifier of the Contentful organization.
  • contentfulmcp_get_content_typeRetrieve the field definitions and metadata of a specific content type.Read-only

    Get Content Type

    Retrieve the field definitions and metadata of a specific content type.

    Inputs

    contentTypeIdstringrequired
    The ID of the content type. Use list_content_types to look up available IDs.
    environmentIdstringrequired
    The Contentful environment ID (e.g. 'master', 'staging'). Find it in Settings > Environments.
    spaceIdstringrequired
    The unique identifier of the Contentful space. Find it in your Contentful dashboard under Settings > General.
  • contentfulmcp_get_editor_interfaceRetrieve the editor interface configuration for a specific content type.Read-only

    Get Editor Interface

    Retrieve the editor interface configuration for a specific content type.

    Inputs

    contentTypeIdstringrequired
    The ID of the content type. Use list_content_types to look up available IDs.
    environmentIdstringrequired
    The Contentful environment ID (e.g. 'master', 'staging'). Find it in Settings > Environments.
    spaceIdstringrequired
    The unique identifier of the Contentful space. Find it in your Contentful dashboard under Settings > General.
  • contentfulmcp_get_entryRetrieve a single entry by its ID from a Contentful space and environment.Read-only

    Get Entry

    Retrieve a single entry by its ID from a Contentful space and environment.

    Inputs

    entryIdstringrequired
    The unique identifier of the entry.
    environmentIdstringrequired
    The Contentful environment ID (e.g. 'master', 'staging'). Find it in Settings > Environments.
    spaceIdstringrequired
    The unique identifier of the Contentful space. Find it in your Contentful dashboard under Settings > General.