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

# Use Dubot with MCP

> Connect an AI client for documentation, workspace authoring, or approved actions

Dubot has three MCP use cases. They are intentionally separate.

<Info>
  MCP is optional. You do not need it to install the browser SDK or launch a Resource Center,
  Wizard, or Guidance experience. Use this page only when an AI client is part of the workflow.
</Info>

| Service | Audience | Access | Server URL | Status |
| - | - | - | - | - |
| Documentation MCP | Anyone reading these docs | Public, read-only | `https://docs.dubot.ai/mcp` | <Badge color="green" size="sm">Available</Badge> |
| Authoring MCP | A Dubot workspace member | OAuth plus workspace grant | `https://app.dubot.ai/mcp` | Requires a workspace grant; confirm client access with Dubot |
| Action channel | A customer-product end user | OAuth plus signed product identity and a live tab | `https://mcp.dubot.ai/{workspace-slug}` | <Badge color="yellow" size="sm">Controlled rollout</Badge> |

Tokens, grants, tools, and consent are not interchangeable across these services.

## Documentation MCP

Use the documentation server to search and read public Dubot documentation from an MCP-capable
client. It cannot inspect a workspace, change configuration, publish, or run a customer action.

## Authoring MCP

The authenticated authoring server lets an AI client work as the connecting Dubot user within
explicitly granted workspaces.

<Steps>
  <Step title="Add the server">
    Add `https://app.dubot.ai/mcp` to an MCP-capable client.
  </Step>

  <Step title="Complete OAuth">
    Sign in to Dubot through the authorization flow. Compatible clients register dynamically, so
    there is no client secret to paste.
  </Step>

  <Step title="Grant workspaces">
    In your Dubot profile, open MCP connections and select the workspaces that client may access.
  </Step>

  <Step title="Author in Test">
    Inspect configuration or create and update drafts. Write tools target Test.
  </Step>

  <Step title="Publish separately">
    Review changes and dependencies before using an explicit Production publish tool. Publishing
    requires the appropriate admin role.
  </Step>
</Steps>

The authoring tool set covers workspace context plus wizards, actions, capabilities, brand, Test
changes, and publishing. Tool calls still enforce the connecting user's live organization role
and current workspace grant.

<Warning>
  A successful OAuth login without a workspace grant is intentionally insufficient. Calls fail
  closed until at least one eligible workspace is selected.
</Warning>

## End-user action channel

The action channel exposes selected, published Session API actions to an end user's AI client.
Execution still occurs in that user's signed-in product tab through the same customer-owned
first-party executor used by wizard actions.

It requires:

* the workspace's action channel to be enabled;
* a configured resume URL;
* selected published Session API actions with MCP enabled;
* a product page running the Dubot SDK;
* `userId` and a valid `identityToken`;
* the end user to approve the connecting client;
* a live eligible product tab when a tool is called.

### Set up the action channel

<Steps>
  <Step title="Open the MCP integration">
    Go to **Settings → Integrations → MCP** and turn on **MCP action channel**. The connection URL
    shown (for example `https://mcp.dubot.ai/<workspace>`) is what end users add to their AI client.
  </Step>

  <Step title="Name it">
    Set **Display name** to your product name. It appears in consent copy and in the Resource Center.
  </Step>

  <Step title="Choose the resume URL and consent challenge">
    The resume URL is where **Open product** sends the user so they can approve the connection. Use a
    signed-in page that every user can reach and that loads the Dubot SDK.

    Dubot adds the approval request to that URL. **Hash** (`#consent_challenge=…`) is the default. If
    your app redirects the landing page (for example from `/` to a workspace dashboard) and the
    redirect drops the hash, choose **Query** instead: most routers keep query parameters through a
    redirect. Test it before sharing the URL (see the last step).
  </Step>

  <Step title="Write the agent description">
    Up to 512 characters, sent to AI clients as instructions when they connect. Say how to find IDs,
    which URL to link users to, and that changes need explicit intent. If your app redirects deep
    links, tell agents which URL to use for Resource Center handoffs.
  </Step>

  <Step title="Choose the actions">
    Only published Session API actions appear. Turn on the ones end users should reach from an AI
    client. Leave off actions that return very large results (for example raw HTML) and anything
    destructive you don't want exposed. Use a response mask on list actions to keep results small.
  </Step>

  <Step title="Publish and test">
    Save the draft and publish. Then connect a real AI client: select **Open product**, confirm the
    Allow or Deny prompt appears in your product, allow it, and run one read and one approved change.
  </Step>
</Steps>

Confirm-gated calls render an in-product Accept or Decline prompt. Completed calls appear in an
action toast and remain subject to the published action version, input schema, response mask, and
customer-side permissions.

<Info>
  The action channel is a controlled-rollout feature. Confirm workspace enablement, identity
  enforcement, resume behavior, and supported client before giving the URL to end users.
</Info>

## Do not cross the boundaries

* An authoring token is rejected by the action-channel host.
* An action-channel token is rejected by the authoring host.
* Documentation tools cannot use either authenticated surface.
* Authoring tools change Dubot configuration; action-channel tools run published customer
  operations.
* Revoking an end-user grant and revoking an authoring connection are different actions in
  different user interfaces.


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