> ## Documentation Index
> Fetch the complete documentation index at: https://help.semji.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Strapi integration: connect your instance to publish from Semji

> Connect Strapi to publish from Semji without copy-pasting. You decide what agents can read, create, or modify.

## At a glance

* **What you can do**: give Semji's agents read and update access to your Strapi content.
* **Who it's for**: workspace owners and Strapi administrators.
* **Compatibility**: Strapi 5.47.0 and newer.

Strapi is self-hosted on your side. Semji connects to the MCP endpoint your instance exposes and sends an admin token to authenticate every request. Semji uses Strapi's built-in MCP server.

To enable it on your instance, see the Strapi MCP server documentation: [https://docs.strapi.io/cms/features/strapi-mcp-server](https://docs.strapi.io/cms/features/strapi-mcp-server)

## Prerequisites

* A Strapi 5.47.0 or newer instance that exposes its MCP endpoint.
* The endpoint served over HTTPS, reachable from the public internet, at a URL ending in /mcp (for example [https://your-cms.example.com/mcp](https://your-cms.example.com/mcp)).
* An admin token for that endpoint, created as described in the Strapi MCP server documentation. Semji sends it as Authorization: Bearer `<token>` on every request.
* You are a workspace owner in Semji. The connection is shared with the whole workspace.

<Note>
  Availability of the Strapi integration depends on your Semji plan. If the Connect button opens an upgrade dialog instead, contact your account manager.
</Note>

## How to connect your Strapi instance

<Steps>
  <Step title="Open the CMS integrations">
    In Semji, open Settings → Integrations, go to the CMS tab, and click Connect on the Strapi row.

    <video autoPlay muted loop playsInline src="https://mintcdn.com/semji/ZF6m599EYafA5y4i/images/help-center/connect-your-tools/cms-publisher/01-cms-integration.mp4?fit=max&auto=format&n=ZF6m599EYafA5y4i&q=85&s=901ef6b3c1b91a4cb6762427eaaade8c" title="CMS Integration" data-path="images/help-center/connect-your-tools/cms-publisher/01-cms-integration.mp4" />
  </Step>

  <Step title="Enter your MCP endpoint and token">
    Fill in the two fields:

    * **MCP server URL**: your Strapi MCP endpoint, for example [https://your-cms.example.com/mcp](https://your-cms.example.com/mcp). It must use HTTPS and end with /mcp.
    * **Admin token**: the token from your Strapi instance.

          <img src="https://mintcdn.com/semji/ql0fCIIUu6X2284g/images/help-center/connect-your-tools/integration-strapi/01-connect-strapi.jpg?fit=max&auto=format&n=ql0fCIIUu6X2284g&q=85&s=235839bf2cd5385950ed0a4f49f35f6c" alt="connect strapi" width="670" height="390" data-path="images/help-center/connect-your-tools/integration-strapi/01-connect-strapi.jpg" />
  </Step>

  <Step title="Connect">
    Click Connect. The Strapi row now shows as connected for the whole workspace.

    \[Suggested screenshot: the Strapi connection form in Semji, with the MCP server URL and Admin token fields filled in and the Connect button]

    <Warning>
      Semji does not test the token or the endpoint when you connect. A mistyped token or an unreachable URL still shows as "Connected". Verify it works by asking an agent to list content from Strapi. If it reports that no Strapi tools are available, or an authentication error, reconnect with a corrected token, or set up the connection again with the right URL.
    </Warning>
  </Step>
</Steps>

## What Semji can do once connected

The available actions come from your Strapi MCP endpoint, typically reading and updating content. Agents discover these actions as they use them.

<Info>
  Semji's publishing agents never delete content, even if your instance offers a delete action.
</Info>

## Manage or disconnect

From Settings → Integrations → CMS, the Strapi row offers Disconnect, which clears the stored token for the whole workspace. Reconnecting asks for the token again.

The MCP server URL cannot be edited in place. To change it, disconnect, then set up the connection again with the new URL.

## Network and IP allowlisting

Your Strapi MCP endpoint must be reachable from the public internet.

Semji reaches the internet through a fixed set of outbound IP addresses. If a firewall or protection like Cloudflare sits in front of your site, it can block Semji's requests, usually with a "403 Forbidden", before they ever reach your CMS, even when your credentials are correct.

Semji's servers reach the internet through a fixed set of outbound IP addresses. If a firewall, WAF, or anti-bot protection (Cloudflare, Akamai, Sucuri, …) sits in front of your site, it can block Semji's requests — typically with a `403 Forbidden` — before they ever reach your CMS, even when your credentials are correct.

Allow the following Semji IP addresses:

```text theme={null}
63.34.75.122
63.35.78.179
54.228.104.165
18.200.156.37
34.248.117.83
52.213.28.177
```

<Warning>
  Do not restrict access to your MCP endpoint to this IP list alone. AI agent tool calls run from Semji's AI provider infrastructure, whose addresses are not fixed. Rely on the admin token for authentication, and use the IP list to exempt Semji from a firewall's anti-bot checks, not as an exclusive allowlist.
</Warning>

## Troubleshooting

<AccordionGroup>
  <Accordion title="The MCP server URL must end with /mcp.">
    Enter the full MCP endpoint URL, not your Strapi root URL, for example [https://your-cms.example.com/mcp](https://your-cms.example.com/mcp).
  </Accordion>

  <Accordion title="Failed to create the CMS connector.">
    The connector could not be created. Check that the URL starts with https\://, that the same URL is not already connected in this workspace, and that you are a workspace owner.
  </Accordion>

  <Accordion title="Failed to connect to the CMS connector.">
    The token could not be stored. Make sure it isn't empty, then try again.
  </Accordion>

  <Accordion title="Agents say they have no Strapi tools, or hit authentication errors">
    The stored token is wrong or revoked, or the endpoint is unreachable or blocked by a firewall. Check that the endpoint answers at its URL, review your firewall (see the network section), then disconnect and reconnect with a valid token.
  </Accordion>
</AccordionGroup>

## Related

* [CMS Publisher: publish your content to your CMS without leaving Semji](/en/connect-your-tools/cms-publisher)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.