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

# Connecting AI tools (MCP)

> Expose your Modus scopes, workflows, and org context to Claude, Cursor, VS Code, ChatGPT, and Codex over the Model Context Protocol.

Modus is built to power the AI tools you already use. Over **MCP** (Model
Context Protocol), any compatible host — **Claude Desktop, Claude Code, Cursor,
VS Code, ChatGPT, Codex** — can discover your published [scopes](/guides/scopes)
and [workflows](/guides/workflows) and answer questions grounded in your
organization's context, instead of guessing.

Modus runs a **remote MCP server** — nothing to install or self-host. You connect
a host once, sign in with your Modus account, and it works everywhere you use
that tool.

## Connect a single scope (recommended)

The most focused way to use Modus in a tool is to connect **one published
[scope](/guides/scopes)** — your revenue analyst, your support expert. The host
gets exactly that scope's `chat`, its curated context, and any integration tools
you've published on it, and nothing else. It's the cleanest mental model: one
tool, one expert.

Open the scope, go to its **MCP** tab, and copy the snippet (or one-click
install) for your host:

<Frame>
  <img src="https://mintcdn.com/modus-c77f86cb/0t9CfZKMweBgcLaa/images/mcp/scope-mcp.png?fit=max&auto=format&n=0t9CfZKMweBgcLaa&q=85&s=c6c118a07315bda5b442bce5f442c028" alt="A published scope's MCP tab: per-host install tabs, Core Tools (Chat, Get Context), and MCP tool exposure" width="418" height="732" data-path="images/mcp/scope-mcp.png" />
</Frame>

Beyond the per-host install, the tab gives you fine-grained control over what
that scope exposes:

* **Core Tools** — toggle `chat` and `get_context` on or off for MCP clients.
* **MCP tool exposure** — choose which of the scope's integration tools (for
  example `jira_create_issue`) appear in the host's tool list.

<Note>
  A scope's MCP endpoint only goes live once the scope is **published**. If the
  MCP tab shows a **Deploy scope** prompt, publish the scope first.
</Note>

## Connect all of Modus

Prefer one connection that reaches **every** scope and workflow you can access?
Connect the org-level endpoint instead — the host discovers and chats with any
published scope, or runs any workflow, and Modus routes each question to the
right one.

Open it from your avatar → **Manage account → MCP**:

<Frame>
  <img src="https://mintcdn.com/modus-c77f86cb/vuBMOfvSQe-3QWBr/images/mcp/settings-mcp.png?fit=max&auto=format&n=vuBMOfvSQe-3QWBr&q=85&s=8ec6f736c5be4d869895f0ae97c486da" alt="Account → MCP page: Modus/Scopes/Workflows selector, capability toggles, and per-host install tabs" width="880" height="704" data-path="images/mcp/settings-mcp.png" />
</Frame>

The **Context** toggle enables discovery and chat; **Manage Modus** adds admin
tools (create, update, deploy). The host tabs below give a ready-to-paste snippet
for each tool.

## Choose your endpoint

| Endpoint                                                              | What it exposes                                                                                | Best for                                                     |
| --------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
| **Per-scope**                                                         | A single published scope: its `chat`, `get_context`, and any integration tools published on it | Giving one tool exactly one expert — the recommended default |
| **Modus (Chat)** — `https://mcp.getmodus.com/modus?toolsets=context`  | Discover and chat with every published scope and workflow you can access                       | One connection for your whole workspace                      |
| **Per-workflow**                                                      | A single published workflow                                                                    | Triggering one automation from a host                        |
| **Modus (Manage)** — `https://mcp.getmodus.com/modus?toolsets=manage` | \~40 admin operations: create, update, deploy, and delete scopes, workflows, and context items | Admins managing Modus from their AI tool                     |

You never construct these URLs by hand — Modus generates them with ready-to-paste
install snippets: a scope's **MCP** tab (or a workflow's MCP tab) for that one
resource, and **Account → MCP** for the org-level endpoints.

## Set up your host

Each host has a short guide with exact steps and config:

<CardGroup cols={2}>
  <Card title="Claude (Desktop & Code)" href="/guides/mcp-claude">
    Install the Modus plugins — the fastest path.
  </Card>

  <Card title="Cursor" href="/guides/mcp-cursor">
    One-click install link or a small mcp.json entry.
  </Card>

  <Card title="VS Code (Copilot)" href="/guides/mcp-vscode">
    Agent mode with a .vscode/mcp.json entry.
  </Card>

  <Card title="ChatGPT" href="/guides/mcp-chatgpt">
    Add Modus as a custom connector in developer mode.
  </Card>

  <Card title="Codex" href="/guides/mcp-codex">
    One CLI command, or a TOML entry for the desktop app.
  </Card>
</CardGroup>

## Authentication

**OAuth is the default.** When a host first connects, your browser opens a Modus
sign-in and consent screen showing exactly what the host will be able to do
(read and invoke your scopes and workflows, read org context). If you belong to
several organizations you pick one at consent. Tokens are short-lived and
refresh automatically.

**Personal Access Tokens** work as an alternative for CLI and headless
environments — create one under **Settings → API Tokens** and send it as a
`Bearer` token. See [Authentication](/authentication).

To see or revoke what you've connected, go to
**[Settings → Connected apps](https://app.getmodus.com/settings/connected-apps)**
and click **Revoke** next to a host. Org admins can also disable an OAuth client
for the whole organization.

## What the tools do

A **per-scope endpoint** exposes `chat`, `get_context`, and `get_context_item`
for that scope, plus any **integration tools** published on it (for example
`jira_create_issue`). If a scope publishes more than 10 tools, they're served
through `list_tools` / `invoke_tool` to keep the tool list small. You control all
of this from the scope's **MCP** tab — including turning core tools off entirely.

The org-level **Modus (Chat)** endpoint instead exposes a small, fixed toolset
for discovering and routing across everything you can access:

| Tool                              | What it does                                                                                                          |
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------- |
| `list_scopes` / `get_scope`       | Discover the published scopes you can access                                                                          |
| `chat_with_scope`                 | Ask a scope a question and get an answer grounded in its configured org context (returns a `threadId` for follow-ups) |
| `get_scope_context`               | Compose the org context a scope would use — without generating an answer                                              |
| `get_context_item`                | Read one file from a previous `get_scope_context` result                                                              |
| `list_workflows` / `get_workflow` | Discover the published workflows you can access                                                                       |
| `chat_with_workflow`              | Run a workflow and get its output                                                                                     |

**Modus (Manage)** exposes the management API as tools (`scopes_create`,
`workflows_deploy`, `context_items_update`, …). Destructive operations require
explicit confirmation, and some operations are deliberately unavailable over
MCP — context can't be bulk-mutated, tokens can't be minted, and organizations
can't be deleted.

## Scope slash commands

On hosts that support MCP prompts (**Claude Code** and **Cursor**), every
published scope also appears as a slash command — for example
`/scope-revenue-analytics`. Selecting it points the conversation at that scope.
On Claude Desktop use the **+** attachment menu; on ChatGPT and Codex just ask
in natural language.

## Access follows your permissions

MCP never widens access. A host acting on your behalf sees only the scopes and
workflows **you** can use, each scope answers only from its configured
connections and context, and the scope's instructions and guardrails apply to
MCP conversations exactly as they do in the Modus app. See
[Security](/guides/security) for the full model.

Need help? Contact us at [support@getmodus.com](mailto:support@getmodus.com).
