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

# Remote MCP Server

> Connect AI clients to a running CData Arc instance through the built-in Model Context Protocol (MCP) server for read-only diagnostics.

export const siteNameShort = "Arc";

export const siteName = "CData Arc";

{siteName} includes a built-in **MCP server** that lets you connect AI clients (such as Claude Desktop, GitHub Copilot, OpenAI Codex, or any MCP-compatible client) directly to a running {siteNameShort} instance. You can then interact with {siteNameShort} in natural language to ask about errors, logs, configurations, connectors, files, certificates, and overall system health.

The MCP server is enabled by default. It exposes a *read-only* diagnostic surface of 14 tools. You do not need to configure anything in the {siteNameShort} UI; the feature is the MCP server endpoint itself, which external AI clients connect to.

<Warning>The MCP server exposes {siteNameShort} data to an AI client, and AI-generated responses can be incomplete or inaccurate. Treat the diagnoses, summaries, and suggestions you receive as a starting point rather than a definitive answer, and verify anything important against {siteNameShort} directly before acting on it. If you are still experiencing issues after using the MCP server, open a ticket with {companyName} Support at <a href="mailto:arcsupport@cdata.com">[arcsupport@cdata.com](mailto:arcsupport@cdata.com)</a>.</Warning>

To configure {siteNameShort}'s own AI provider (for in-product AI features), see [AI Settings](../getting-started/administration/settings/ai-settings) instead.

## Connecting an AI Client

The MCP server endpoint is available at:

```
https://<baseurl>:<port>/mcp.rsc
```

Authentication uses the `x-cdata-authtoken` header with a valid {siteNameShort} user authtoken. To generate an authtoken, check **Enable Authtoken Access** on the **API Access** tab for your user on the [User Roles](../getting-started/administration/settings/user-roles) page and copy the system-generated authtoken. Then, after saving one of the following configurations, restart the respective AI client session.

### Claude Desktop

Claude Desktop communicates with MCP servers over `stdio` (it launches a local subprocess and talks over `stdin/stdout`), so it cannot connect directly to {siteNameShort}'s remote HTTP endpoint. The `mcp-remote` npm package bridges this gap: it runs as a local stdio process that Claude Desktop talks to, and forwards requests to {siteNameShort}'s HTTP endpoint.

The `--transport http-only` flag tells `mcp-remote` to use plain streamable HTTP when communicating with {siteNameShort}, which skips any attempt to negotiate SSE (Server-Sent Events). The `mcp.rsc` endpoint does not support SSE, so this flag avoids unnecessary fallback delays or connection errors.

Add the following to the Claude Desktop config file (**Settings > Developer > Edit Config**):

```json theme={null}
{
  "mcpServers": {
    "arc-mcp": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "mcp-remote",
        "https://<baseurl>:<port>/mcp.rsc",
        "--transport", "http-only",
        "--header", "x-cdata-authtoken:<your-authtoken>"]
    }
  }
}
```

If you use macOS or Linux, use `"command": "npx"` and drop the `"cmd", "/c"` prefix. After saving, quit and reopen Claude Desktop, then enable the `arc-mcp` server in the **Tools/Search** menu of a new chat.

### GitHub Copilot CLI

Unlike Claude Desktop, the GitHub Copilot CLI connects to remote MCP servers directly over HTTP, so it does not need a `mcp-remote` bridge; instead, you point it straight at the {siteNameShort} endpoint. Its MCP config file location depends on your OS:

| OS            | Config file location                           |
| ------------- | ---------------------------------------------- |
| Windows       | `C:\Users\<username>\.copilot\mcp-config.json` |
| macOS / Linux | `~/.copilot/mcp-config.json`                   |

Edit the file and add the following:

```json theme={null}
{
  "mcpServers": {
    "arc-mcp": {
      "url": "https://<baseurl>:<port>/mcp.rsc",
      "type": "http",
      "headers": {
        "x-cdata-authtoken": "<your-authtoken>"
      }
    }
  }
}
```

After saving, start a new Copilot CLI session so it picks up the `arc-mcp` server.

### OpenAI Codex

Like the Copilot CLI, OpenAI Codex supports remote HTTP MCP servers directly, so you do not need a bridge; it connects straight to the {siteNameShort} endpoint. Its config file location depends on your OS:

| OS            | Config file location                     |
| ------------- | ---------------------------------------- |
| Windows       | `C:\Users\<username>\.codex\config.toml` |
| macOS / Linux | `~/.codex/config.toml`                   |

This configuration is shared across the Codex CLI, the Codex IDE extension, and Codex Desktop. Edit the file and add the following:

```toml theme={null}
[mcp_servers.arc-mcp]
url = "https://<baseurl>:<port>/mcp.rsc"
http_headers = { "x-cdata-authtoken" = "<your-authtoken>" }
```

After saving, restart Codex (or start a new session) so it loads the `arc-mcp` server.

## Available Tools

The MCP server exposes 14 read-only tools organized around the diagnostic tasks you might ask an AI agent to perform:

| Tool                 | Action                                                                                                                                                                                      |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `find_workspaces`    | List and inspect {siteNameShort} workspaces, including connector summaries and recent transaction and error counts.                                                                         |
| `find_connectors`    | Browse connectors by workspace or type; drill into a connector's configuration, flow connections, referenced certificates, and error rate.                                                  |
| `find_messages`      | Search transaction messages by connector, status, direction, time range, or message ID. Retrieve message detail including headers and transaction log content.                              |
| `find_files`         | Search connector message files in Send, Receive, or Sent folders. Retrieve file content by name.                                                                                            |
| `find_logs`          | Query application logs by severity level, time range, or message text.                                                                                                                      |
| `find_requests`      | Inspect API request logs for auditing and troubleshooting (filter by method, URL, user, IP, or time range).                                                                                 |
| `find_certificates`  | Find certificates, check expiration dates, and filter by connector usage or category (Public or Private).                                                                                   |
| `find_vault_entries` | Search vault entries by name, type, or tags. Encrypted values are never exposed.                                                                                                            |
| `find_reports`       | Browse report definitions and inspect schedule, column, filter, and email recipient configuration.                                                                                          |
| `find_flow_apis`     | Explore Flow API definitions or get an API's request and response configuration.                                                                                                            |
| `diagnose_message`   | Diagnose a specific transaction message by its message ID or transaction ID, returning the full message detail (headers and transaction log content) for troubleshooting.                   |
| `trace_message_flow` | Trace a message end-to-end as it moves across connectors in a flow, when given a message ID or a filename plus connector.                                                                   |
| `check_health`       | Get a health snapshot of the {siteNameShort} instance: error counts, expiring certificates, license status, memory and disk warnings, and per-connector failure rates and message backlogs. |
| `describe_profile`   | View {siteNameShort} profile settings (Application, AS2, SFTP, and so on) grouped by section. Secret values are masked.                                                                     |

## Example Prompts

You interact with {siteNameShort} through your AI client in natural language (read-only). Example prompts include:

* "Analyze the failure for message EDIFACT1-20260513-123047000-wxcU and provide suggestions on how to fix it."
* "Show me all error logs from the last 24 hours that mention AS2."
* "What certificates are expiring within the next 30 days?"
* "Trace message AS2\_Inbound-20260623-001 across its flow."
* "Check the health of the production workspace."
* "List all SFTP connectors."

## Security Notes

* The MCP server respects {siteNameShort}'s existing authentication and authorization. Users only see data they have permission to access.
* Always connect over HTTPS. The `x-cdata-authtoken` is sent in a request header on every call; over plain HTTP it is exposed in transit. Only use `http://` when testing against `localhost`.
* Sensitive values (passwords, tokens, and private keys) are masked in tool responses.
* Encrypted vault entry values are never returned.
* The server is read-only in this release: you cannot perform any operational actions (such as creating connectors, modifying settings, or reprocessing messages).

## Known Limitations in this Release

* Diagnosis is limited to failures that produce a transaction record. Pre-transaction failures (such as authentication errors, malformed envelopes, and protocol-level rejections) cannot be diagnosed using the MCP tools.
* No application log or request log correlation by correlation ID and trace ID is available.
* No service-level log content (for example, SFTP server logs) is available.
* Large message payloads returned in detail mode can be sizable, which might affect token usage in AI clients.
