---
title: Туннели MCP
url: https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/overview
description: Безопасно подключайте Claude к серверам MCP, работающим в вашей частной сети, не открывая входящие порты и не выставляя сервисы в публичный интернет.
---

Туннели MCP позволяют подключать Claude к серверам Model Context Protocol, или MCP, которые работают внутри вашей частной сети. Трафик проходит по соединению, устанавливаемому только в исходящем направлении, поэтому вам не нужно открывать входящие порты на межсетевом экране, выставлять сервисы в публичный интернет или добавлять диапазоны IP-адресов Anthropic в список разрешённых на вашем источнике.

<Note>
  Туннели MCP находятся в статусе «research preview» (исследовательской предварительной версии). [Запросите доступ](https://claude.com/form/mcp-tunnels), чтобы опробовать их. Они предоставляются «как есть», без каких-либо обязательств по времени безотказной работы, поддержке или непрерывности, и зависят от стороннего сетевого провайдера (Cloudflare), который не берёт на себя обязательств по доступности базового транспорта. Anthropic может изменить или прекратить работу туннелей MCP в любое время.
</Note>

Информацию о соответствии требованиям Zero Data Retention и HIPAA BAA см. в разделе [API и хранение данных](https://platform.claude.com/docs/ru/manage-claude/api-and-data-retention#feature-eligibility).

## Как это работает

[Стек туннеля](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#components) (tunnel stack) — это два компонента, которые работают внутри вашей сети:

* **[cloudflared](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#components):** коннектор туннеля с открытым исходным кодом от Cloudflare. Он инициирует соединения только в исходящем направлении к [границе туннеля](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#components) (tunnel edge) и передаёт зашифрованный трафик от Anthropic к вашему прокси.
* **[Прокси](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#components) (Proxy):** компонент маршрутизации от Anthropic. Он терминирует [внутренний TLS](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#components) (inner TLS), проверяет, что IP-адреса вышестоящих серверов попадают в разрешённый диапазон, и направляет каждый запрос на правильный [вышестоящий сервер MCP](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#components) (upstream MCP server) на основе имени хоста.

Каждый сервер MCP, который вы открываете, получает имя хоста в домене вашего туннеля (например, `docs.<your-tunnel-domain>`). Вы привязываете эти имена хостов к сессии Managed Agent в Claude Console или передаёте их в Messages API через [коннектор MCP](https://platform.claude.com/docs/ru/agents-and-tools/mcp-connector).

## Предварительные требования

Перед развёртыванием убедитесь, что у вас есть:

* Целевая среда развёртывания: кластер Kubernetes или виртуальная машина с Docker и Docker Compose.

* Туннель. Создайте его в Claude Console (см. [Создание туннеля](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/console#create-a-tunnel)) или через API; хук настройки Helm-чарта также может создать его для вас во время установки.

* Способ аутентификации вашего стека в Tunnels API. Выберите один из вариантов:

  * **[Программный доступ](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#credential-provisioning) (рекомендуется).** Настройте [Workload Identity Federation](https://platform.claude.com/docs/ru/manage-claude/workload-identity-federation) (федерацию удостоверений рабочих нагрузок) при создании туннеля. Ваш стек выпускает краткосрочные токены API от вашего поставщика удостоверений, получает токен туннеля, а также автоматически генерирует и регистрирует сертификат CA. Требуется разрешение на управление правилами федерации, зарегистрированный издатель OIDC и правило федерации с областью действия `workspace:manage_tunnels`.
  * **[Вручную](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/concepts#credential-provisioning).** Предоставьте статические учётные данные самостоятельно: токен туннеля из Console и серверный сертификат, подписанный CA, который вы там регистрируете. См. [Получение сведений о подключении](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/console#get-the-connection-details) и [Добавление сертификата CA](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/console#add-a-ca-certificate).

* Один или несколько серверов MCP, работающих в вашей частной сети. Примеры см. в разделе [Удалённые серверы MCP](https://platform.claude.com/docs/ru/agents-and-tools/remote-mcp-servers).

* Исходящее сетевое подключение, как указано в разделе [Сетевые требования](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/overview#network-requirements).

### Сетевые требования

| Компонент           | Назначение                                               | Порт / протокол       | Используется во время        |
| ------------------- | -------------------------------------------------------- | --------------------- | ---------------------------- |
| Компонент настройки | `api.anthropic.com`                                      | 443 TCP               | Подготовка и ротация токенов |
| cloudflared         | Граница туннеля (`198.41.192.0/19`, `2606:4700:a0::/44`) | 7844 TCP и UDP        | Работа                       |
| Прокси              | Ваши вышестоящие серверы MCP                             | Согласно конфигурации | Работа                       |

## Модель безопасности

### Уровни безопасности

Каждый запрос защищают три независимых уровня:

| Уровень                                                                | Защищает от                                                                              |
| ---------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- |
| Внешний mTLS между Anthropic и транспортным провайдером с проверкой IP | Доступа неавторизованных клиентов к туннелю                                              |
| Внутренний TLS от бэкенда Anthropic до вашего прокси                   | Просмотра полезной нагрузки транспортным провайдером или любым сетевым посредником       |
| OAuth на каждом сервере MCP                                            | Несанкционированного использования инструментов MCP аутентифицированным трафиком туннеля |

Транспорт туннеля работает в сети Cloudflare. Поскольку прокси терминирует внутренний TLS с использованием сертификата, которым владеете только вы, Cloudflare не может читать полезную нагрузку запросов и ответов. Anthropic не подключается к туннелю, пока не зарегистрирован сертификат CA, поэтому полезная нагрузка всегда зашифрована при прохождении через сеть Cloudflare. Cloudflare получает метаданные соединений; см. [Что может наблюдать транспортный провайдер](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/overview#what-the-transport-provider-can-observe).

### Модель разделения ответственности

| Anthropic отвечает за                                                                          | Ваша организация отвечает за                                                                                                                             |
| ---------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Контроль доступа к туннелю                                                                     | Весь контент и трафик, проходящий через ваш туннель, а также соблюдение применимых политик допустимого использования третьих сторон (включая Cloudflare) |
| Проверку вашего сертификата CA перед подключением к вашему прокси                              | Следование рекомендациям по развёртыванию на этих страницах                                                                                              |
| Гарантию того, что Claude отправляет запросы только в туннели, принадлежащие вашей организации | Защиту токенов туннеля и закрытых ключей TLS                                                                                                             |
|                                                                                                | Управление серверным сертификатом и его обновление до истечения срока действия                                                                           |
|                                                                                                | Настройку OAuth на каждом сервере MCP                                                                                                                    |
|                                                                                                | Ограничение сетевого доступа для прокси и серверов MCP                                                                                                   |
|                                                                                                | Уведомление Anthropic при подозрении на взлом                                                                                                            |

<Warning>
  Если злоумышленник получит ваш токен туннеля **и** один из ваших закрытых ключей TLS, он сможет выдать себя за ваш прокси и читать полезную нагрузку запросов MCP. Относитесь к обоим как к особо ценным секретам. Рекомендации по усилению защиты см. в разделе [Безопасность туннелей MCP](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/security).
</Warning>

### Что может наблюдать транспортный провайдер

Cloudflare предоставляет исходящий транспорт. Он не может читать полезную нагрузку запросов и ответов MCP, но получает следующие метаданные соединений:

* исходящий IP-адрес хоста, на котором работает cloudflared
* отпечаток хоста cloudflared
* время соединений и объём переданных байтов
* поддомен `*.tunnel.anthropic.com`, назначенный вашему туннелю

Соглашение Anthropic с Cloudflare ограничивает использование этой телеметрии компанией Cloudflare. Cloudflare выступает в качестве субобработчика в рамках этого исследовательского предварительного просмотра.

## Развёртывание туннеля

Если вы впервые работаете с туннелями MCP, начните с быстрого старта, чтобы получить работающий туннель локально, прежде чем настраивать производственное развёртывание.

<CardGroup cols={2}>
  <Card title="Быстрый старт" icon="rocket" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/quickstart">
    Кратчайший путь к работающему туннелю: Docker Compose с примером сервера MCP.
  </Card>

  <Card title="Развёртывание с помощью Helm" icon="stack" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/deploy-helm">
    Установка в кластер Kubernetes с использованием Helm-чарта Anthropic.
  </Card>

  <Card title="Развёртывание с помощью Docker Compose" icon="cube" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/deploy-compose">
    Установка на виртуальную машину с использованием Docker Compose.
  </Card>
</CardGroup>

Как выбрать между ними:

* **Целевая среда развёртывания**

  * **Helm** при развёртывании в Kubernetes.
  * **Docker Compose** для одного хоста или локального тестирования.

* **Аутентификация для настройки**

  * **Программный доступ** (через Workload Identity Federation), если у вас есть поставщик удостоверений OIDC, например кластер Kubernetes, облачный IAM или SPIFFE.
  * **Учётные данные вручную**, если его нет или если вы тестируете.

## Использование туннелированных серверов MCP

Как только ваш туннель активен (у него есть активный сертификат CA и ваш стек туннеля подключён), вышестоящие серверы MCP становятся доступны из Claude Managed Agents и Messages API.

<Note>
  Туннели MCP, созданные через Console, недоступны в качестве коннекторов в claude.ai.
</Note>

В обоих случаях туннель передаёт зашифрованный трафик на ваш сервер MCP, но не выполняет аутентификацию на нём. Если вышестоящий сервер MCP требует собственной аутентификации (OAuth, bearer-токен), предоставьте её так же, как для любого другого сервера MCP; она не зависит от туннеля.

### Managed Agents (Console)

1. На странице [Sessions](https://platform.claude.com/sessions) (`platform.claude.com/sessions`) в Claude Console создайте сессию и выберите **Create new agent**, чтобы можно было редактировать список серверов MCP.
2. Нажмите **+ MCP Server** и откройте раскрывающийся список. Туннели в рабочем пространстве сессии, у которых есть хотя бы один активный сертификат, отображаются в верхней части списка, над публичным каталогом коннекторов.
3. Выберите туннель и укажите **Subdomain**, который ваш прокси направляет на конкретный сервер MCP, и **Path**, ожидаемый вышестоящим сервером MCP. Строка **Resolves to** показывает точный URL.

### Messages API

Передайте URL вышестоящего сервера MCP в массиве `mcp_servers` так же, как для любого другого удалённого сервера MCP. Тело запроса и заголовок `anthropic-beta` соответствуют стандартному формату [коннектора MCP](https://platform.claude.com/docs/ru/agents-and-tools/mcp-connector); специфичен для туннеля только `url`. В следующем примере используется бета-заголовок `mcp-client` коннектора MCP. Он отличается от бета-версии `mcp-tunnels`, которую использует [Tunnels API](https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/reference).

Выполняйте запрос в том рабочем пространстве, в котором был создан туннель. Для этого используйте ключ API этого рабочего пространства. Если ваш ключ имеет доступ к нескольким рабочим пространствам, укажите нужное рабочее пространство в [заголовке `anthropic-workspace-id`](https://platform.claude.com/docs/ru/manage-claude/authentication#select-a-workspace).

Хост в URL имеет вид `<subdomain>.<your-tunnel-domain>`. Путь зависит от вашего вышестоящего сервера MCP, а не от туннеля. Например, транспорт `streamable-http` в FastMCP обслуживает запросы по пути `/mcp`, а другие серверы могут использовать `/` или собственный путь (см. документацию сервера). Прокси передаёт путь без изменений.

<CodeGroup>
  ```bash cURL
  curl https://api.anthropic.com/v1/messages \
    -H "Content-Type: application/json" \
    -H "X-API-Key: $ANTHROPIC_API_KEY" \
    -H "anthropic-version: 2023-06-01" \
    -H "anthropic-beta: mcp-client-2025-11-20" \
    -d '{
      "model": "claude-opus-5-5",
      "max_tokens": 1000,
      "messages": [{"role": "user", "content": "Use the hello tool to greet tunnel."}],
      "mcp_servers": [
        {
          "type": "url",
          "url": "https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp",
          "name": "echo"
        }
      ],
      "tools": [{"type": "mcp_toolset", "mcp_server_name": "echo"}]
    }'
  ```

  ```bash CLI
  ant beta:messages create --beta mcp-client-2025-11-20 <<'YAML'
  model: claude-opus-5-5
  max_tokens: 1000
  messages:
    - role: user
      content: Use the hello tool to greet tunnel.
  mcp_servers:
    - type: url
      url: https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp
      name: echo
  tools:
    - type: mcp_toolset
      mcp_server_name: echo
  YAML
  ```

  ```python Python
  client = anthropic.Anthropic()

  response = client.beta.messages.create(
      model="claude-opus-5-5",
      max_tokens=1000,
      messages=[{"role": "user", "content": "Use the hello tool to greet tunnel."}],
      mcp_servers=[
          {
              "type": "url",
              "url": "https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp",
              "name": "echo",
          }
      ],
      tools=[{"type": "mcp_toolset", "mcp_server_name": "echo"}],
      betas=["mcp-client-2025-11-20"],
  )

  print(response)
  ```

  ```typescript TypeScript
  const anthropic = new Anthropic();

  const response = await anthropic.beta.messages.create({
    model: "claude-opus-5-5",
    max_tokens: 1000,
    messages: [
      {
        role: "user",
        content: "Use the hello tool to greet tunnel."
      }
    ],
    mcp_servers: [
      {
        type: "url",
        url: "https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp",
        name: "echo"
      }
    ],
    tools: [
      {
        type: "mcp_toolset",
        mcp_server_name: "echo"
      }
    ],
    betas: ["mcp-client-2025-11-20"]
  });

  console.log(response);
  ```

  ```csharp C#
  AnthropicClient client = new();

  var parameters = new MessageCreateParams
  {
      Model = Messages::Model.ClaudeOpus5_5,
      MaxTokens = 1000,
      Messages = new List<BetaMessageParam>
      {
          new() { Role = Role.User, Content = "Use the hello tool to greet tunnel." }
      },
      McpServers = new List<BetaRequestMcpServerUrlDefinition>
      {
          new()
          {
              Url = "https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp",
              Name = "echo"
          }
      },
      Tools = new List<BetaToolUnion>
      {
          new BetaMcpToolset("echo")
      },
      Betas = ["mcp-client-2025-11-20"]
  };

  var message = await client.Beta.Messages.Create(parameters);
  Console.WriteLine(message);
  ```

  ```go Go
  client := anthropic.NewClient()

  response, err := client.Beta.Messages.New(context.TODO(), anthropic.BetaMessageNewParams{
  	Model:     anthropic.ModelClaudeOpus5_5,
  	MaxTokens: 1000,
  	Messages: []anthropic.BetaMessageParam{
  		anthropic.NewBetaUserMessage(anthropic.NewBetaTextBlock("Use the hello tool to greet tunnel.")),
  	},
  	MCPServers: []anthropic.BetaRequestMCPServerURLDefinitionParam{
  		{
  			URL:  "https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp",
  			Name: "echo",
  		},
  	},
  	Tools: []anthropic.BetaToolUnionParam{
  		{OfMCPToolset: &anthropic.BetaMCPToolsetParam{
  			MCPServerName: "echo",
  		}},
  	},
  	Betas: []anthropic.AnthropicBeta{
  		anthropic.AnthropicBetaMCPClient2025_11_20,
  	},
  })
  if err != nil {
  	log.Fatal(err)
  }
  fmt.Println(response)
  ```

  ```java Java
  import com.anthropic.models.beta.messages.BetaMcpToolset;
  // ...
  import com.anthropic.models.beta.messages.BetaRequestMcpServerUrlDefinition;
  // ...

  void main() {
      AnthropicClient client = AnthropicOkHttpClient.fromEnv();

      MessageCreateParams params = MessageCreateParams.builder()
          .model(Model.CLAUDE_OPUS_5_5)
          .maxTokens(1000L)
          .addUserMessage("Use the hello tool to greet tunnel.")
          .addMcpServer(BetaRequestMcpServerUrlDefinition.builder()
              .url("https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp")
              .name("echo")
              .build())
          .addTool(BetaMcpToolset.builder()
              .mcpServerName("echo")
              .build())
          .addBeta("mcp-client-2025-11-20")
          .build();

      BetaMessage response = client.beta().messages().create(params);
      IO.println(response);
  }
  ```

  ```php PHP
  $client = new Client();

  $message = $client->beta->messages->create(
      maxTokens: 1000,
      messages: [
          ['role' => 'user', 'content' => 'Use the hello tool to greet tunnel.']
      ],
      model: 'claude-opus-5-5',
      mcpServers: [
          [
              'type' => 'url',
              'url' => 'https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp',
              'name' => 'echo',
          ],
      ],
      tools: [
          [
              'type' => 'mcp_toolset',
              'mcpServerName' => 'echo',
          ],
      ],
      betas: ['mcp-client-2025-11-20'],
  );

  echo $message;
  ```

  ```ruby Ruby
  client = Anthropic::Client.new

  response = client.beta.messages.create(
    model: "claude-opus-5-5",
    max_tokens: 1000,
    messages: [
      { role: "user", content: "Use the hello tool to greet tunnel." }
    ],
    mcp_servers: [
      {
        type: "url",
        url: "https://echo.YOUR_TUNNEL_DOMAIN_HERE/mcp",
        name: "echo"
      }
    ],
    tools: [
      {
        type: "mcp_toolset",
        mcp_server_name: "echo"
      }
    ],
    betas: ["mcp-client-2025-11-20"]
  )

  puts response
  ```
</CodeGroup>

Сведения об аутентификации на вышестоящем сервере MCP (`authorization_token`) и о других параметрах `mcp_servers` см. в разделе [Коннектор MCP](https://platform.claude.com/docs/ru/agents-and-tools/mcp-connector).

## Следующие шаги

<CardGroup cols={2}>
  <Card title="Безопасность" icon="lock" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/security">
    Рекомендации по усилению защиты, ротация учётных данных и реагирование на взлом.
  </Card>

  <Card title="Устранение неполадок" icon="wrench" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/troubleshooting">
    Диагностика проблем с подключением, TLS и маршрутизацией.
  </Card>

  <Card title="Справочник" icon="book" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-tunnels/reference">
    Поля конфигурации прокси, Tunnels API, требования к сертификатам и компонент настройки.
  </Card>

  <Card title="Коннектор MCP" icon="link" href="https://platform.claude.com/docs/ru/agents-and-tools/mcp-connector">
    Использование туннелированных серверов из Messages API.
  </Card>
</CardGroup>
