Contentstack MCP Troubleshooting Guides
MCP Server Setup and Authentication
Applies to: Contentstack MCP Server
Tool calls in an OAuth group, for example CMA, Analytics, or Launch, fail with an Unauthorized error.
Root causes
- You have not run the OAuth flow on this machine.
- The OAuth tokens that the server saved on this machine have expired.
Resolution
Run the command below, then complete the sign-in in the browser window it opens:
npx @contentstack/mcp --auth
Additional Resource: For more information on which groups use OAuth, refer to the Authentication section of the Contentstack MCP Server documentation.
Applies to: Contentstack MCP Server
Root causes
- CONTENTSTACK_DELIVERY_TOKEN is missing or incorrect.
- The delivery token belongs to a different environment than the one you query.
Resolution
- Check the value of CONTENTSTACK_DELIVERY_TOKEN in the server configuration.
- Confirm that the delivery token belongs to the environment you query. If it does not, create a delivery token for that environment and set it as CONTENTSTACK_DELIVERY_TOKEN.
Additional Resource: For more information on where each credential comes from, refer to the Where to find your credentials section of the Contentstack MCP Server documentation.
Applies to: Contentstack MCP Server
Root cause
The GROUPS value contains a typo or a space, so the server does not recognize the groups it names.
Resolution
Set GROUPS to a comma-separated list of group values with no spaces, as in the example below:
GROUPS=cma,cda
Additional Resource: For more information on the accepted group values, refer to the GROUPS variable section of the Contentstack MCP Server documentation.
Applies to: Contentstack MCP Server
Root cause
The server configuration does not set CONTENTSTACK_ORGANIZATION_UID. The Launch group needs the organization UID in addition to OAuth.
Resolution
- Copy the organization UID from your project's URL in the Launch dashboard, or from your organization settings.
- Add it to the server configuration as CONTENTSTACK_ORGANIZATION_UID, or pass it with --organization-uid.
Applies to: Contentstack MCP Server
Root cause
The Lytics access token has expired, or it holds an incorrect value. The Lytics group does not use OAuth, so the server sends only the token that LYTICS_ACCESS_TOKEN holds.
Resolution
- Generate a new access token under API Tokens in your Lytics account settings.
- Set LYTICS_ACCESS_TOKEN to the new token.
Applies to: Contentstack MCP Server
Root cause
The Analytics job is still processing. Every Analytics tool runs asynchronously: it returns a jobId, and get_job_data returns the results only after the job completes.
Resolution
Wait a few seconds, then call get_job_data again with the same jobId.
Applies to: Contentstack MCP Server
Root cause
The args array in the client configuration does not include the -y flag, so npx waits for you to confirm the package installation.
Resolution
Add "-y" as the first argument after npx, as in the configuration below:
"command": "npx", "args": ["-y", "@contentstack/mcp"]
Applies to: Contentstack MCP Server
Root cause
The configuration sets no region, and no OAuth session exists to supply one, so the server sends requests to the default region, NA. A configuration that uses only a delivery token or only a management token always lacks an OAuth session.
Resolution
Set CONTENTSTACK_REGION, or pass --region, with the code of your stack's data center.
Additional Resource: For more information on the region codes, refer to the Supported regions section of the Contentstack MCP Server documentation.
Applies to: Contentstack MCP Server
Root cause
The value of --region or CONTENTSTACK_REGION contains a misspelling. The server returns this error when it does not recognize the region value.
Resolution
Use a supported region code or alias, for example EU or aws-eu. Aliases ignore case and separators, so eu and AWS_EU also resolve to the EU region.
Additional Resource: For more information on every code and alias, refer to the Supported regions section of the Contentstack MCP Server documentation.
Applies to: Contentstack MCP Server
Root cause
The server has no OAuth session, and the configuration provides no management token.
Resolution
Use one of the two options below:
- Run npx @contentstack/mcp --auth and complete the sign-in, so the server has an OAuth session.
- Set CONTENTSTACK_MANAGEMENT_TOKEN and CONTENTSTACK_REGION. A management token authenticates only the CMA and CMA Extended groups, and the region tells the server which data center to call.
Additional Resource: For more information on the management token option, refer to the Authenticating without OAuth section of the Contentstack MCP Server documentation.
Profile Hub Client Setup
Applies to: MCP Profile Hub, Claude Desktop tab
Root cause
Your Claude plan restricts custom connectors to organization admins.
Resolution
Use the Claude Desktop Manual installation tab instead, or ask a Claude organization admin to add the connector.
Additional Resource: For more information on each installation tab, refer to the Connect a client to MCP Profile Hub documentation.
Applies to: MCP Profile Hub, Claude Desktop Manual tab
Root cause
Claude Desktop occasionally opens two browser tabs at once when you sign in to a server that you added through the manual configuration.
Resolution
- Complete the sign-in in the first tab and close the other.
- If the profile's tools still do not appear, restart Claude Desktop and sign in again.
Applies to: MCP Profile Hub, Claude Code tab
Root cause
The connector URL has no quotes around it, so the shell reads ? and & as shell syntax instead of as part of the URL.
Resolution
Keep the connector URL in quotes when you run claude mcp add.
Applies to: MCP Profile Hub, Claude Desktop Manual tab
Root cause
Claude Desktop reads claude_desktop_config.json only when it launches.
Resolution
Restart Claude Desktop.
Applies to: MCP Profile Hub, clients that run the mcp-remote bridge
Root cause
The machine has no Node.js installation, so npx cannot run mcp-remote.
Resolution
Install Node.js, then confirm that npx -y mcp-remote runs.
Applies to: MCP Profile Hub, clients that run the mcp-remote bridge
Root cause
A registry allowlist, an execution policy, or a proxy blocks npx from reaching the npm registry.
Resolution
Use one of the two options below:
- Install mcp-remote globally from an approved registry, and configure the client to run the installed binary instead of npx.
- Ask your IT team to allowlist the mcp-remote package.
Profile Hub Connection and Sign-In
Applies to: MCP Profile Hub
Root causes
- You did not finish the Open Authorization (OAuth) sign-in.
- Contentstack disabled the profile. A disabled profile returns an empty tool list.
Resolution
- Start the sign-in again from your client, for example with /mcp in Claude Code, and complete the browser flow.
- If the sign-in completes and the client still lists no tools, Contentstack disabled the profile. The app provides no control for this setting, so contact Contentstack support.
Applies to: MCP Profile Hub
Root cause
The connector URL contains a malformed project UID. A malformed project UID fails the whole tool listing, not only the tools of the affected product.
Resolution
Correct the project UID in the connector URL. The MCP URL parameters documentation gives the accepted format for each parameter.
Applies to: MCP Profile Hub
Root cause
The connector URL in your client contains a typo.
Resolution
Compare the URL in your client with the one on the profile's Installation step, including profile_id and org_uid, and correct any difference.
Applies to: MCP Profile Hub
Root cause
The client cannot reach the discovery endpoint.
Resolution
- Confirm that the machine reaches the endpoint over HTTPS, for example by opening the connector URL in a browser.
- Check for a corporate proxy, VPN, firewall, or TLS-inspecting middlebox that blocks the request.
Applies to: MCP Profile Hub, clients that run the mcp-remote bridge
Root cause
Contentstack raised the pinned mcp-remote version, and the new version stores credentials in a new, empty directory.
Resolution
Sign in again. A version change triggers this prompt and does not indicate a fault.
Applies to: MCP Profile Hub
Root cause
The client holds a stale cached token.
Resolution
Clear the client's cached MCP credentials and reconnect, with the step below for your client:
- For mcp-remote: delete the version-specific subdirectory under ~/.mcp-auth, then retry.
- In Claude Code: run /mcp and sign in again.
Warning: ~/.mcp-auth holds cached OAuth credentials for every MCP server you connect through mcp-remote, not only Contentstack. If you delete the whole directory, you sign out of all of them, and each one prompts for authorization again on next use.
Profile Hub Authentication and Permissions
Applies to: MCP Profile Hub
The client receives JSON-RPC error code -32010 with the message authorization_required, and the reason field holds no_token or local_token_unavailable.
Root cause
You have not completed the OAuth sign-in for this profile, or the stored token expired.
Resolution
Reconnect and sign in again. The error also includes an authorization_url that you can open directly.
Applies to: MCP Profile Hub
The client receives JSON-RPC error code -32010 with the message authorization_required, and the reason field holds insufficient_scope. The message below names the method and path that failed:
Permission denied for <METHOD> <PATH>. The authorized token may lack a required OAuth scope, or your Contentstack role may not permit this operation. If scopes were recently changed, re-authorize from the Authorization page (add the needed scope to the curated list) and try again.
Root causes
Contentstack returned 403 for one of the two reasons below:
- The token lacks a required OAuth scope.
- Your Contentstack role does not permit the operation. A profile never grants more access than your roles allow.
Resolution
- Reconnect and approve the requested scopes, after you add the needed scope to the curated list on the Authorization page.
- If you already granted the scope, sign in to Contentstack as the same user and try the same action in the UI. If the action also fails in the UI, your role does not permit it. Use an account with the required role, or ask the profile owner to remove the tool from the profile.
Additional Resource: For more information on what each role permits, refer to the About Product Roles and About Stack Roles documentation.
Applies to: MCP Profile Hub
The client receives JSON-RPC error code -32010 with the message authorization_required, and the reason field holds contentstack_unauthorized.
Root cause
Contentstack rejected the token, and the token refresh also failed.
Resolution
Reconnect and sign in again.
Applies to: MCP Profile Hub
Root cause
The client requested a profile other than the one the connector URL specifies.
Resolution
Use the connector URL of the profile you want. The profile_id in the URL determines which profile the client can use.
Profile Hub Configuration
Applies to: MCP Profile Hub
Root cause
Neither the profile, the connector URL, nor the tool arguments specify a stack.
Resolution
Select a stack in the profile's Configuration step, or pass stack_api_key in the connector URL.
Applies to: MCP Profile Hub
Root cause
The profile includes Personalize tools but no Personalize project.
Resolution
Select a Personalize project in the profile's Configuration step, or add personalize_project_uid to the connector URL.
Applies to: MCP Profile Hub
Root cause
The project UID in the connector URL is not 1 to 64 characters of letters, digits, hyphens, or underscores.
Resolution
Correct the parameter in the connector URL so that it matches that format.
Applies to: MCP Profile Hub
Root causes
- The configured stack API key is wrong.
- The stack belongs to a different Contentstack region than the one your sign-in resolved.
Resolution
- Confirm that the configured stack API key is correct for your account.
- Confirm that you signed in to the organization that owns the stack. Contentstack derives the regional endpoints from the organization you sign in with, so it cannot reach a stack in another region during that session. The region codes name each region, and the cma_host sign-in parameter sets the region that the connector URL uses.
Applies to: MCP Profile Hub
The app shows the message below, where <CATALOGS> names the excluded catalogs:
This organization's plan does not include <CATALOGS>.
Root cause
The profile contains tools from a catalog that your organization's plan excludes.
Resolution
Remove the tools that belong to the excluded catalog, then save the profile again.
Profile Hub Import
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
That file is too large to be a profile export.
Root cause
The file exceeds 1 MiB.
Resolution
Confirm that you picked a profile export, not another JSON file.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
That file isn't valid JSON.
Root cause
The file does not parse as JSON.
Resolution
Export the profile again instead of editing the file by hand.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
That JSON isn't an exported profile. Pick a file exported from MCP Profile Hub.
Root cause
The file holds valid JSON, but MCP Profile Hub did not export it.
Resolution
Export the profile from the source organization, then import that file.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
That file was exported by a newer version of MCP Profile Hub (format v2). Update, then import it.
Root cause
The file uses a newer export format than your organization's version of MCP Profile Hub reads.
Resolution
Contentstack hosts and updates MCP Profile Hub centrally, so you cannot apply the update that the message requests. Export the profile again from a source organization on your version, or import the file after Contentstack updates MCP Profile Hub for your organization.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
That profile has more than 200 tools, which is the maximum a profile can hold.
Root cause
The export exceeds the limit of 200 tools per profile.
Resolution
Split the profile in the source organization, then export each part.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
That profile is missing or malformed at "profile.name".
Root cause
A required field is absent, or it holds the wrong type of value. The message names the field.
Resolution
Export the profile again instead of editing the file by hand.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
"CMS" is a system profile. Choose a different name.
Root cause
Contentstack derives the profile_id from the profile name, and that ID matches a system profile. Contentstack renames only system-profile exports, and this file is not one.
Resolution
Rename the profile in the file, or export it again from the source organization.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
A profile with this profile_id already exists
Root cause
You already have a profile with that name.
Resolution
Rename the profile before you import it.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
Profile limit of 50 reached; delete an existing profile first
Root cause
You already hold the maximum of 50 profiles.
Resolution
Delete a profile you no longer use, then import the file again.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
Organization profile limit of 500 reached; ask an administrator to remove unused profiles
Root cause
Your organization already holds the maximum of 500 profiles.
Resolution
Ask an organization admin to remove unused profiles, then import the file again.
Applies to: MCP Profile Hub
The app shows the heading Couldn't import profile, then the message below:
This organization's plan does not include launch. Remove the tools from that catalog and save again.
Root cause
The file contains tools from a catalog that your organization's plan excludes.
Resolution
Remove those tools from the file, or import it into an organization whose plan includes the catalog. The Profiles and catalogs documentation lists the plan-gated catalogs.
Profile Hub Automations and Agents
Applies to: MCP Profile Hub
The error message starts with the text below:
Automation "<AUTOMATION_ID>" uses a secure HTTP trigger, which is not supported yet. Disable Secure HTTP Trigger on the automation, or pick a different automation.
Root cause
Secure HTTP Trigger is on for that automation. Contentstack cannot detect Secure HTTP Trigger on automations as it does on agents, so a secured automation stays visible in the tool browser, and you can add it to a profile. The call then fails when the agent runs the automation.
Resolution
Turn off Secure HTTP Trigger on the automation in Contentstack Automate, or pick a different automation.
Applies to: MCP Profile Hub
The error message contains is not activated in Contentstack Automate, so it did not run.
Root cause
The automation is still a draft, or someone paused it.
Resolution
Open the automation in Automate and activate it. The What qualifies section lists every condition an automation must meet to work as a tool.
Applies to: MCP Profile Hub
The error message contains did not respond within <MS>ms.
Root cause
The automation ran longer than the profile's timeout.
Resolution
Raise timeout on the connector URL. Contentstack caps it at 120000 ms.
Applies to: MCP Profile Hub
The error message reads as below, where <STATUS> is the state of the run:
The agent was still <STATUS> when the tool timed out.
Root cause
The agent run exceeded the profile's timeout, which Contentstack caps at 120000 ms.
Resolution
Raise timeout on the connector URL, up to 120000 ms. If the run needs more than 120000 ms, look up the reported execution ID in Agent OS to see the result.
Applies to: MCP Profile Hub
Root causes
- The automation's first step is not an HTTP trigger.
- The automation is not active.
- You fixed the automation less than five minutes ago.
Resolution
Fix the automation in Automate, then wait up to five minutes before you reopen the tool browser. Contentstack caches the discovered list on the server for five minutes, so if you reopen the tool browser sooner, it shows the same list.
Applies to: MCP Profile Hub
Root causes
- The agent is unpublished or inactive.
- The agent has no HTTP trigger.
- The agent uses a secure trigger, which Profile Hub does not support yet.
- You fixed the agent less than five minutes ago.
Resolution
- In Agent OS, publish and activate the agent, add an HTTP trigger, and turn off Secure HTTP Trigger.
- Wait up to five minutes before you reopen the tool browser.
Profile Hub Tool Availability and Selection
Applies to: MCP Profile Hub
A tool call fails, or runs a different operation than the one you asked for, even though the profile and the tool work.
Root cause
The model selects a tool that does not match the request, or builds arguments that do not match the tool's input schema, for example by omitting a required field on publish. Some MCP clients retry the call with corrected arguments. The MCP client and the model control this retry behavior, not the profile or the tool.
Resolution
Retry with a different model, or state the operation and its required values in your prompt.
Applies to: MCP Profile Hub
Root causes
- Someone removed the tool from the profile's Tool selection step.
- The client still holds a tool list that it fetched before the profile changed. Contentstack does not notify a connected client that the list changed.
Resolution
- List the tools again in the client, by reconnecting or by running the client's server-refresh command.
- If the tool is still absent, confirm that the profile's Tool selection step still lists it.
Applies to: MCP Profile Hub
Root cause
Your organization's plan does not include that product, so the tool browser does not display its tab or its tools.
Resolution
- Ask your organization's Contentstack admin to confirm the plan.
- Contact Contentstack support to add the product. Until then, build the profile from the catalogs your plan includes.
Applies to: MCP Profile Hub
The profile shows the message below, where <N> is the number of affected tools:
<N> saved tools could not be loaded
Root causes
- The tool manifests failed to load while the page opened.
- A catalog key changed after the profile saved those tools.
Resolution
Reload the page to request the manifests again. Contentstack keeps the tools on the profile, and the tools stay callable.