CLI commands

MCP

openclaw mcp має два завдання:

  • запускати OpenClaw як MCP-сервер за допомогою openclaw mcp serve
  • керувати визначеннями вихідних MCP-серверів, керованих OpenClaw, за допомогою list, show, status, doctor, probe, add, set, configure, tools, login, logout, reload і unset

Іншими словами:

  • serve — це OpenClaw, що діє як MCP-сервер
  • інші підкоманди — це OpenClaw, що діє як клієнтський реєстр MCP для MCP-серверів, які його середовища виконання можуть споживати пізніше

Використовуйте openclaw acp, коли OpenClaw має самостійно розміщувати сеанс кодового harness і маршрутизувати це середовище виконання через ACP.

Виберіть правильний шлях MCP

OpenClaw має кілька поверхонь MCP. Виберіть ту, що відповідає тому, хто володіє середовищем виконання агента і хто володіє інструментами.

Мета Використовуйте Чому
Дозволити зовнішньому MCP-клієнту читати/надсилати розмови каналів OpenClaw openclaw mcp serve OpenClaw є MCP-сервером і надає розмови на основі Gateway через stdio.
Зберегти сторонні MCP-сервери для керованих OpenClaw запусків агентів openclaw mcp add, set, configure, tools, login OpenClaw є клієнтським реєстром MCP і пізніше проєктує ці сервери у відповідні середовища виконання.
Перевірити збережений сервер без запуску ходу агента openclaw mcp status, doctor, probe status і doctor перевіряють конфігурацію; probe відкриває живе MCP-з'єднання і перелічує можливості.
Редагувати конфігурацію MCP з браузера Control UI /mcp Сторінка показує інвентар, увімкнення, зведення OAuth/фільтрів, підказки команд і обмежений редактор mcp.
Надати app-server Codex обмежений нативний MCP-сервер mcp.servers.<name>.codex Блок codex впливає лише на проєкцію потоків app-server Codex і видаляється перед передаванням нативної конфігурації.
Запускати сеанси harness, розміщені через ACP openclaw acp і агенти ACP Режим моста ACP не приймає ін'єкцію MCP-сервера для окремого сеансу; натомість налаштуйте мости gateway/plugin.

OpenClaw як MCP-сервер

Це шлях openclaw mcp serve.

Коли використовувати serve

Використовуйте openclaw mcp serve, коли:

  • Codex, Claude Code або інший MCP-клієнт має напряму взаємодіяти з розмовами каналів на основі OpenClaw
  • у вас уже є локальний або віддалений OpenClaw Gateway з маршрутизованими сеансами
  • вам потрібен один MCP-сервер, що працює з бекендами каналів OpenClaw, замість запуску окремих мостів для кожного каналу

Натомість використовуйте openclaw acp, коли OpenClaw має самостійно розміщувати кодове середовище виконання і тримати сеанс агента всередині OpenClaw.

Як це працює

openclaw mcp serve запускає stdio MCP-сервер. MCP-клієнт володіє цим процесом. Поки клієнт тримає stdio-сеанс відкритим, міст підключається до локального або віддаленого OpenClaw Gateway через WebSocket і надає маршрутизовані розмови каналів через MCP.

  • Клієнт запускає міст

    MCP-клієнт запускає openclaw mcp serve.

  • Міст підключається до Gateway

    Міст підключається до OpenClaw Gateway через WebSocket.

  • Сеанси стають MCP-розмовами

    Маршрутизовані сеанси стають MCP-розмовами та інструментами стенограми/історії.

  • Живі події стають у чергу

    Живі події ставляться в чергу в пам'яті, поки міст підключений.

  • Необов'язковий push для Claude

    Якщо режим каналу Claude увімкнено, той самий сеанс також може отримувати специфічні для Claude push-сповіщення.

  • Важлива поведінка
    • стан живої черги починається, коли міст підключається
    • старіша історія стенограми читається за допомогою messages_read
    • push-сповіщення Claude існують лише поки MCP-сеанс активний
    • коли клієнт відключається, міст завершує роботу, а жива черга зникає
    • одноразові точки входу агента, як-от openclaw agent і openclaw infer model run, завершують будь-які bundled MCP runtime, які вони відкривають, коли відповідь завершена, тому повторні скриптові запуски не накопичують дочірні процеси stdio MCP
    • stdio MCP-сервери, запущені OpenClaw (bundled або налаштовані користувачем), під час завершення роботи зупиняються як дерево процесів, тож дочірні subprocesses, запущені сервером, не виживають після виходу батьківського stdio-клієнта
    • видалення або скидання сеансу звільняє MCP-клієнти цього сеансу через спільний шлях очищення runtime, тому не лишається завислих stdio-з'єднань, прив'язаних до видаленого сеансу

    Виберіть режим клієнта

    Використовуйте той самий міст двома різними способами:

    Загальні MCP-клієнти

    Лише стандартні MCP-інструменти. Використовуйте conversations_list, messages_read, events_poll, events_wait, messages_send та інструменти схвалення.

    Claude Code

    Стандартні MCP-інструменти плюс специфічний для Claude адаптер каналу. Увімкніть --claude-channel-mode on або залиште типовий режим auto.

    Що надає serve

    Міст використовує наявні метадані маршруту сеансу Gateway, щоб надавати розмови на основі каналів. Розмова з'являється, коли OpenClaw уже має стан сеансу з відомим маршрутом, наприклад:

    • channel
    • метадані отримувача або призначення
    • необов'язковий accountId
    • необов'язковий threadId

    Це дає MCP-клієнтам одне місце, щоб:

    • перелічувати нещодавні маршрутизовані розмови
    • читати нещодавню історію стенограми
    • чекати нових вхідних подій
    • надсилати відповідь назад через той самий маршрут
    • бачити запити на схвалення, що надходять, поки міст підключений

    Використання

    Локальний Gateway

    bash
    openclaw mcp serve

    Віддалений Gateway (токен)

    bash
    openclaw mcp serve --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.token

    Віддалений Gateway (пароль)

    bash
    openclaw mcp serve --url wss://gateway-host:18789 --password-file ~/.openclaw/gateway.password

    Докладно / Claude вимкнено

    bash
    openclaw mcp serve --verboseopenclaw mcp serve --claude-channel-mode off

    Інструменти моста

    Поточний міст надає ці MCP-інструменти:

    conversations_list

    Перелічує нещодавні розмови на основі сеансів, які вже мають метадані маршруту в стані сеансу Gateway.

    Корисні фільтри:

    • limit
    • search
    • channel
    • includeDerivedTitles
    • includeLastMessage
    conversation_get

    Повертає одну розмову за session_key за допомогою прямого пошуку сеансу Gateway.

    messages_read

    Читає нещодавні повідомлення стенограми для однієї розмови на основі сеансу.

    attachments_fetch

    Витягує нетекстові блоки вмісту повідомлення з одного повідомлення стенограми. Це подання метаданих над вмістом стенограми, а не окреме довговічне сховище blob-вкладень.

    events_poll

    Читає поставлені в чергу живі події від числового курсора.

    events_wait

    Виконує long-polling, доки не надійде наступна відповідна подія в черзі або не спливе час очікування.

    Використовуйте це, коли загальному MCP-клієнту потрібна майже реального часу доставка без специфічного для Claude push-протоколу.

    messages_send

    Надсилає текст назад через той самий маршрут, уже записаний у сеансі.

    Поточна поведінка:

    • вимагає наявного маршруту розмови
    • використовує канал сеансу, отримувача, ідентифікатор облікового запису та ідентифікатор потоку
    • надсилає лише текст
    permissions_list_open

    Перелічує очікувані запити на схвалення exec/plugin, які міст спостеріг з моменту підключення до Gateway.

    permissions_respond

    Розв'язує один очікуваний запит на схвалення exec/plugin за допомогою:

    • allow-once
    • allow-always
    • deny

    Модель подій

    Міст тримає чергу подій у пам'яті, поки він підключений.

    Поточні типи подій:

    • message
    • exec_approval_requested
    • exec_approval_resolved
    • plugin_approval_requested
    • plugin_approval_resolved
    • claude_permission_request

    Сповіщення каналу Claude

    Міст також може надавати специфічні для Claude сповіщення каналу. Це еквівалент адаптера каналу Claude Code в OpenClaw: стандартні MCP-інструменти залишаються доступними, але живі вхідні повідомлення також можуть надходити як специфічні для Claude MCP-сповіщення.

    off

    --claude-channel-mode off: лише стандартні MCP-інструменти.

    on

    --claude-channel-mode on: увімкнути сповіщення каналу Claude.

    auto (типово)

    --claude-channel-mode auto: поточне типове значення; та сама поведінка моста, що й on.

    Коли режим каналу Claude увімкнено, сервер оголошує експериментальні можливості Claude і може надсилати:

    • notifications/claude/channel
    • notifications/claude/channel/permission

    Поточна поведінка моста:

    • вхідні повідомлення стенограми user пересилаються як notifications/claude/channel
    • запити дозволів Claude, отримані через MCP, відстежуються в пам'яті
    • якщо власник команди у пов'язаній розмові пізніше надсилає yes abcde або no abcde, міст перетворює це на notifications/claude/channel/permission
    • ці сповіщення доступні лише для живого сеансу; якщо MCP-клієнт відключається, push-цілі немає

    Це навмисно специфічно для клієнта. Загальні MCP-клієнти мають покладатися на стандартні інструменти опитування.

    Конфігурація MCP-клієнта

    Приклад конфігурації stdio-клієнта:

    json
    {  "mcpServers": {    "openclaw": {      "command": "openclaw",      "args": [        "mcp",        "serve",        "--url",        "wss://gateway-host:18789",        "--token-file",        "/path/to/gateway.token"      ]    }  }}

    Для більшості загальних MCP-клієнтів почніть зі стандартної поверхні інструментів і ігноруйте режим Claude. Увімкніть режим Claude лише для клієнтів, які справді розуміють специфічні для Claude методи сповіщень.

    Параметри

    openclaw mcp serve підтримує:

    --urlstring

    WebSocket URL Gateway.

    --tokenstring

    Токен Gateway.

    --token-filestring

    Читати токен із файлу.

    --passwordstring

    Пароль Gateway.

    --password-filestring

    Читати пароль із файлу.

    --claude-channel-mode"auto" | "on" | "off"

    Режим сповіщень Claude.

    -v, --verboseboolean

    Докладні журнали в stderr.

    Безпека та межа довіри

    Міст не вигадує маршрутизацію. Він лише відкриває розмови, які Gateway уже вміє маршрутизувати.

    Це означає:

    • списки дозволених відправників, сполучення та довіра на рівні каналу й надалі належать базовій конфігурації каналу OpenClaw
    • messages_send може відповідати лише через наявний збережений маршрут
    • стан затвердження є активним/у пам’яті лише для поточного сеансу моста
    • автентифікація моста має використовувати ті самі засоби керування токеном або паролем Gateway, яким ви довірили б будь-який інший віддалений клієнт Gateway

    Якщо розмова відсутня в conversations_list, звичайна причина не в конфігурації MCP. Причина — відсутні або неповні метадані маршруту в базовому сеансі Gateway.

    Тестування

    OpenClaw постачає детермінований Docker smoke для цього моста:

    bash
    pnpm test:docker:mcp-channels

    Цей smoke:

    • запускає контейнер Gateway із початковими даними
    • запускає другий контейнер, який створює openclaw mcp serve
    • перевіряє виявлення розмов, читання транскриптів, читання метаданих вкладень, поведінку черги live-подій і маршрутизацію вихідного надсилання
    • перевіряє сповіщення каналів і дозволів у стилі Claude через реальний stdio MCP-міст

    Це найшвидший спосіб довести, що міст працює, без підключення реального облікового запису Telegram, Discord або iMessage до тестового запуску.

    Ширший контекст тестування див. у Тестування.

    Усунення неполадок

    Розмови не повертаються

    Зазвичай це означає, що сеанс Gateway ще не маршрутизується. Переконайтеся, що базовий сеанс має збережені метадані маршруту каналу/постачальника, отримувача та необов’язково облікового запису/теми.

    events_poll або events_wait пропускає старіші повідомлення

    Очікувано. Live-черга запускається, коли міст підключається. Читайте старішу історію транскрипту за допомогою messages_read.

    Сповіщення Claude не з’являються

    Перевірте все це:

    • клієнт тримав stdio MCP-сеанс відкритим
    • --claude-channel-mode має значення on або auto
    • клієнт справді розуміє методи сповіщень, специфічні для Claude
    • вхідне повідомлення відбулося після підключення моста
    Затвердження відсутні

    permissions_list_open показує лише запити на затвердження, зафіксовані, поки міст був підключений. Це не довговічний API історії затверджень.

    OpenClaw як реєстр клієнтів MCP

    Це шлях openclaw mcp list, show, status, doctor, probe, add, set, configure, tools, login, logout, reload і unset.

    Ці команди не відкривають OpenClaw через MCP. Вони керують визначеннями MCP-серверів, якими керує OpenClaw, у mcp.servers у конфігурації OpenClaw. Вони не читають mcporter-сервери з config/mcporter.json.

    Ці збережені визначення призначені для середовищ виконання, які OpenClaw запускає або налаштовує пізніше, як-от вбудований OpenClaw та інші адаптери середовища виконання. OpenClaw зберігає визначення централізовано, щоб цим середовищам виконання не потрібно було тримати власні дублікати списків MCP-серверів.

    Важлива поведінка
    • ці команди лише читають або записують конфігурацію OpenClaw
    • status, list, show, doctor без --probe, set, configure, tools, logout, reload і unset не підключаються до цільового MCP-сервера
    • login виконує мережевий потік MCP OAuth для налаштованого HTTP-сервера та зберігає отримані локальні облікові дані
    • status --verbose друкує підказки щодо розв’язаного транспорту, автентифікації, часу очікування, фільтра та паралельного виклику інструментів без підключення
    • doctor перевіряє збережені визначення на проблеми локального налаштування, як-от відсутні stdio-команди, недійсні робочі каталоги, відсутні TLS-файли, вимкнені сервери, буквальні чутливі значення заголовків/env і неповна авторизація OAuth
    • doctor --probe додає таке саме live-підтвердження підключення, як probe, після успішного проходження статичних перевірок
    • probe підключається до вибраного сервера або всіх налаштованих серверів, перелічує інструменти та звітує про можливості/діагностику
    • add будує визначення з прапорців і виконує probe перед збереженням, якщо не встановлено --no-probe або спершу не потрібна авторизація OAuth
    • адаптери середовища виконання вирішують, які форми транспорту вони фактично підтримують під час виконання
    • enabled: false зберігає сервер, але виключає його з виявлення вбудованим середовищем виконання
    • timeout і connectTimeout задають часи очікування запиту та підключення для кожного сервера в секундах
    • supportsParallelToolCalls: true позначає сервери, які адаптери можуть викликати конкурентно
    • HTTP-сервери можуть використовувати статичні заголовки, OAuth login, керування перевіркою TLS і шляхи до сертифіката/ключа mTLS
    • вбудований OpenClaw відкриває налаштовані MCP-інструменти у звичайних профілях інструментів coding і messaging; minimal і далі приховує їх, а tools.deny: ["bundle-mcp"] вимикає їх явно
    • фільтри toolFilter.include і toolFilter.exclude для кожного сервера фільтрують виявлені MCP-інструменти, перш ніж вони стануть інструментами OpenClaw
    • сервери, які оголошують ресурси або prompts, також відкривають службові інструменти для перелічення/читання ресурсів і перелічення/отримання prompts; ці згенеровані службові назви (resources_list, resources_read, prompts_list, prompts_get) використовують той самий фільтр включення/виключення
    • динамічні зміни списку MCP-інструментів інвалідують кешований каталог для цього сеансу; наступне виявлення/використання оновлює його із сервера
    • повторні збої запитів MCP-інструментів/протоколу ненадовго призупиняють цей сервер, щоб один несправний сервер не спожив увесь хід
    • bundled MCP-середовища виконання в межах сеансу прибираються після mcp.sessionIdleTtlMs мілісекунд простою (за замовчуванням 10 хвилин; задайте 0, щоб вимкнути), а одноразові вбудовані запуски прибирають їх наприкінці запуску

    Адаптери середовища виконання можуть нормалізувати цей спільний реєстр у форму, яку очікує їхній нижчий клієнт. Наприклад, вбудований OpenClaw споживає значення OpenClaw transport напряму, тоді як Claude Code і Gemini отримують CLI-native значення type, як-от http, sse або stdio.

    Codex app-server також враховує необов’язковий блок codex на кожному сервері. Це проєкційні метадані OpenClaw лише для потоків Codex app-server; вони не змінюють ACP-сеанси, загальну конфігурацію Codex harness або інші адаптери середовища виконання. Використовуйте непорожній codex.agents, щоб проєктувати сервер лише в конкретні ідентифікатори агентів OpenClaw. Порожні, blank або недійсні списки агентів відхиляються валідацією конфігурації та пропускаються шляхом проєкції середовища виконання замість того, щоб ставати глобальними. Використовуйте codex.defaultToolsApprovalMode (auto, prompt або approve), щоб видавати нативний для Codex default_tools_approval_mode для довіреного сервера. OpenClaw видаляє метадані codex, перш ніж передати нативну конфігурацію mcp_servers до Codex.

    Збережені визначення MCP-серверів

    OpenClaw також зберігає легкий реєстр MCP-серверів у конфігурації для поверхонь, яким потрібні MCP-визначення, керовані OpenClaw.

    Команди:

    • openclaw mcp list
    • openclaw mcp show [name]
    • openclaw mcp status [--verbose]
    • openclaw mcp doctor [name] [--probe]
    • openclaw mcp probe [name]
    • openclaw mcp add <name> [flags]
    • openclaw mcp set <name> <json>
    • openclaw mcp configure <name> [flags]
    • openclaw mcp tools <name> [--include csv] [--exclude csv] [--clear]
    • openclaw mcp login <name> [--code code]
    • openclaw mcp logout <name>
    • openclaw mcp reload
    • openclaw mcp unset <name>

    Примітки:

    • list сортує назви серверів.
    • show без назви друкує повний налаштований об’єкт MCP-сервера.
    • status класифікує налаштовані транспорти без підключення. --verbose включає розв’язані відомості запуску, часу очікування, OAuth, фільтра та паралельних викликів.
    • doctor виконує статичні перевірки без підключення. Додайте --probe, коли команда також має перевірити, що увімкнені сервери підключаються.
    • probe підключається та звітує про кількість інструментів, підтримку ресурсів/prompts, підтримку змін списку та діагностику.
    • add приймає stdio-прапорці, як-от --command, --arg, --env і --cwd, або HTTP-прапорці, як-от --url, --transport, --header, --auth oauth, TLS, час очікування та прапорці вибору інструментів.
    • set очікує одне значення JSON-об’єкта в командному рядку.
    • configure оновлює ввімкнення, фільтри інструментів, часи очікування, OAuth, TLS і підказки паралельних викликів інструментів без заміни всього визначення сервера.
    • tools оновлює фільтри інструментів для кожного сервера. Записи включення/виключення — це назви MCP-інструментів і прості * globs.
    • login запускає потік OAuth для HTTP-серверів, налаштованих із auth: "oauth". Перший запуск друкує URL авторизації; повторно запустіть із --code після затвердження.
    • logout очищає збережені облікові дані OAuth для названого сервера, не видаляючи збережене визначення сервера.
    • reload утилізує кешовані MCP-середовища виконання в поточному процесі. Gateway або агентські процеси в іншому процесі все ще потребують власного шляху перезавантаження або перезапуску.
    • Використовуйте transport: "streamable-http" для Streamable HTTP MCP-серверів. openclaw mcp set також нормалізує CLI-native type: "http" до тієї самої канонічної форми конфігурації для сумісності.
    • unset завершується з помилкою, якщо названого сервера не існує.

    Приклади:

    bash
    openclaw mcp listopenclaw mcp show context7 --jsonopenclaw mcp status --verboseopenclaw mcp doctor --probeopenclaw mcp probe context7 --jsonopenclaw mcp add memory --command npx --arg -y --arg @modelcontextprotocol/server-memoryopenclaw mcp set context7 '{"command":"uvx","args":["context7-mcp"]}'openclaw mcp tools context7 --include 'resolve-library-id,get-library-docs'openclaw mcp set docs '{"url":"https://mcp.example.com","transport":"streamable-http"}'openclaw mcp configure docs --timeout 20 --connect-timeout 5 --include 'search,read_*'openclaw mcp configure docs --auth oauth --oauth-scope 'docs.read'openclaw mcp login docsopenclaw mcp logout docsopenclaw mcp unset context7

    Поширені рецепти серверів

    Ці приклади лише зберігають визначення серверів. Після цього запустіть openclaw mcp doctor --probe, щоб довести, що сервер запускається та відкриває інструменти.

    Файлова система

    bash
    openclaw mcp add files \  --command npx \  --arg -y \  --arg @modelcontextprotocol/server-filesystem \  --arg "$HOME/Documents" \  --include 'read_file,list_directory,search_files'openclaw mcp doctor files --probe

    Обмежуйте файлові сервери найменшим деревом каталогів, яке агент має читати або редагувати.

    Пам’ять

    bash
    openclaw mcp add memory \  --command npx \  --arg -y \  --arg @modelcontextprotocol/server-memoryopenclaw mcp probe memory --json

    Використовуйте фільтр інструментів, якщо сервер відкриває інструменти запису, які не мають бути доступними звичайним агентам.

    Локальний скрипт

    bash
    openclaw mcp add local-tools \  --command node \  --arg ./dist/mcp-server.js \  --cwd /srv/openclaw-tools \  --env API_BASE=https://internal.exampleopenclaw mcp status --verbose

    doctor перевіряє, що cwd існує і що команда розв’язується з налаштованого середовища.

    Віддалений HTTP

    bash
    openclaw mcp add docs \  --url https://mcp.example.com/mcp \  --transport streamable-http \  --auth oauth \  --oauth-scope docs.read \  --timeout 20 \  --connect-timeout 5 \  --include 'search,read_*'openclaw mcp doctor docs --probe

    Використовуйте OAuth, коли віддалений сервер його підтримує. Якщо сервер потребує статичних заголовків, уникайте комітування буквальних bearer-токенів.

    Робочий стіл/CUA

    bash
    openclaw mcp set cua-driver '{"command":"cua-driver","args":["mcp"]}'openclaw mcp tools cua-driver --include 'list_apps,observe,click,type'openclaw mcp doctor cua-driver --probe

    Сервери прямого керування робочим столом успадковують дозволи процесу, який вони запускають. Використовуйте вузькі фільтри інструментів і запити дозволів на рівні ОС.

    Форми JSON-виводу

    Використовуйте --json для скриптів і панелей моніторингу. Набори полів можуть з часом розширюватися, тому споживачі мають ігнорувати невідомі ключі.

    status --json
    json
    {  "path": "/home/user/.openclaw/openclaw.json",  "servers": [    {      "name": "docs",      "configured": true,      "enabled": true,      "ok": true,      "transport": "streamable-http",      "launch": "streamable-http https://mcp.example.com/mcp",      "auth": "oauth",      "authStatus": {        "hasTokens": true,        "hasClientInformation": true,        "hasCodeVerifier": false,        "hasDiscoveryState": true,        "hasLastAuthorizationUrl": false      },      "requestTimeoutMs": 20000,      "connectionTimeoutMs": 5000,      "toolFilter": {        "include": ["search", "read_*"],        "exclude": []      },      "supportsParallelToolCalls": true    }  ]}
    doctor --json
    json
    {  "ok": false,  "path": "/home/user/.openclaw/openclaw.json",  "servers": [    {      "name": "docs",      "ok": false,      "issues": [        {          "level": "error",          "message": "OAuth credentials are not authorized; run openclaw mcp login docs"        }      ]    }  ]}

    doctor --json завершується з ненульовим кодом, коли будь-який увімкнений перевірений сервер має помилку. Попередження повідомляються, але самі по собі не спричиняють збій команди.

    probe --json
    json
    {  "path": "/home/user/.openclaw/openclaw.json",  "generatedAt": "2026-05-31T09:00:00.000Z",  "servers": {    "docs": {      "launch": "streamable-http https://mcp.example.com/mcp",      "tools": 2,      "resources": true,      "prompts": false,      "listChanged": {        "tools": true,        "resources": false,        "prompts": false      }    }  },  "tools": ["docs__read_page", "docs__search"],  "diagnostics": []}

    probe відкриває живу клієнтську сесію MCP. Використовуйте її для підтвердження доступності та можливостей, а не для статичних аудитів конфігурації.

    Приклад форми конфігурації:

    json
    {  "mcp": {    "servers": {      "context7": {        "command": "uvx",        "args": ["context7-mcp"]      },      "docs": {        "url": "https://mcp.example.com",        "transport": "streamable-http",        "timeout": 20,        "connectTimeout": 5,        "supportsParallelToolCalls": true,        "auth": "oauth",        "oauth": {          "scope": "docs.read"        },        "sslVerify": true,        "clientCert": "/path/to/client.crt",        "clientKey": "/path/to/client.key",        "toolFilter": {          "include": ["search_*"],          "exclude": ["admin_*"]        }      }    }  }}

    Транспорт Stdio

    Запускає локальний дочірній процес і обмінюється даними через stdin/stdout.

    Поле Опис
    command Виконуваний файл для запуску (обов’язково)
    args Масив аргументів командного рядка
    env Додаткові змінні середовища
    cwd / workingDirectory Робочий каталог для процесу

    Транспорт SSE / HTTP

    Підключається до віддаленого MCP-сервера через HTTP Server-Sent Events.

    Поле Опис
    url HTTP- або HTTPS-URL віддаленого сервера (обов’язково)
    headers Необов’язкова мапа ключ-значення HTTP-заголовків (наприклад, auth-токени)
    connectionTimeoutMs Тайм-аут підключення для сервера в мс (необов’язково)
    connectTimeout Тайм-аут підключення для сервера в секундах (необов’язково)
    timeout / requestTimeoutMs Тайм-аут MCP-запиту для сервера в секундах або мс
    auth: "oauth" Використовувати сховище MCP OAuth-токенів і openclaw mcp login
    sslVerify Установлюйте false лише для явно довірених приватних HTTPS-ендпоїнтів
    clientCert / clientKey Шляхи до клієнтського сертифіката та ключа mTLS
    supportsParallelToolCalls Підказка, що паралельні виклики безпечні для цього сервера

    Приклад:

    json
    {  "mcp": {    "servers": {      "remote-tools": {        "url": "https://mcp.example.com",        "auth": "oauth",        "timeout": 20,        "headers": {          "Authorization": "Bearer <token>"        }      }    }  }}

    Конфіденційні значення в url (userinfo) і headers редагуються в журналах і виводі стану. openclaw mcp doctor попереджає, коли схожі на конфіденційні записи headers або env містять буквальні значення, щоб оператори могли винести ці значення з коміченої конфігурації.

    Робочий процес OAuth

    OAuth призначений для HTTP MCP-серверів, які оголошують потік MCP OAuth. Статичні заголовки Authorization ігноруються для сервера, поки ввімкнено auth: "oauth".

  • Збережіть сервер

    Додайте або оновіть сервер із auth: "oauth" і будь-якими необов’язковими метаданими OAuth.

    bash
    openclaw mcp set docs '{"url":"https://mcp.example.com/mcp","transport":"streamable-http","auth":"oauth","oauth":{"scope":"docs.read"}}'
  • Почніть вхід

    Запустіть login, щоб створити запит авторизації.

    bash
    openclaw mcp login docs

    OpenClaw виводить URL авторизації та зберігає тимчасовий стан верифікатора OAuth у каталозі стану OpenClaw.

  • Завершіть кодом

    Після схвалення в браузері передайте повернений код назад до OpenClaw.

    bash
    openclaw mcp login docs --code abc123
  • Перевірте авторизацію

    Використовуйте status або doctor, щоб підтвердити наявність токенів.

    bash
    openclaw mcp status --verboseopenclaw mcp doctor docs --probe
  • Очистьте облікові дані

    Logout видаляє збережені облікові дані OAuth, але зберігає визначення сервера.

    bash
    openclaw mcp logout docs
  • Якщо провайдер ротує токени або стан авторизації застрягає, запустіть openclaw mcp logout <name>, а потім повторіть login. logout може очистити облікові дані для збереженого HTTP-сервера навіть після видалення auth: "oauth" із конфігурації, доки назва сервера та URL усе ще ідентифікують запис у сховищі облікових даних.

    Транспорт Streamable HTTP

    streamable-http — це додатковий варіант транспорту поряд із sse і stdio. Він використовує HTTP-стримінг для двоспрямованої комунікації з віддаленими MCP-серверами.

    Поле Опис
    url HTTP- або HTTPS-URL віддаленого сервера (обов’язково)
    transport Установіть "streamable-http", щоб вибрати цей транспорт; якщо пропущено, OpenClaw використовує sse
    headers Необов’язкова мапа ключ-значення HTTP-заголовків (наприклад, auth-токени)
    connectionTimeoutMs Тайм-аут підключення для сервера в мс (необов’язково)
    connectTimeout Тайм-аут підключення для сервера в секундах (необов’язково)
    timeout / requestTimeoutMs Тайм-аут MCP-запиту для сервера в секундах або мс
    auth: "oauth" Використовувати сховище MCP OAuth-токенів і openclaw mcp login
    sslVerify Установлюйте false лише для явно довірених приватних HTTPS-ендпоїнтів
    clientCert / clientKey Шляхи до клієнтського сертифіката та ключа mTLS
    supportsParallelToolCalls Підказка, що паралельні виклики безпечні для цього сервера

    Конфігурація OpenClaw використовує transport: "streamable-http" як канонічне написання. CLI-нативні значення MCP type: "http" приймаються під час збереження через openclaw mcp set і виправляються openclaw doctor --fix в наявній конфігурації, але transport — це те, що вбудований OpenClaw споживає напряму.

    Приклад:

    json
    {  "mcp": {    "servers": {      "streaming-tools": {        "url": "https://mcp.example.com/stream",        "transport": "streamable-http",        "connectTimeout": 10,        "timeout": 30,        "headers": {          "Authorization": "Bearer <token>"        }      }    }  }}

    Control UI

    Браузерний Control UI містить окрему сторінку налаштувань MCP за адресою /mcp. Вона показує кількість налаштованих серверів, зведення про ввімкнення/OAuth/фільтри, рядки транспорту для кожного сервера, елементи керування ввімкненням/вимкненням, поширені CLI-команди та редактор з областю дії для розділу конфігурації mcp.

    Використовуйте сторінку для операторських редагувань і швидкої інвентаризації. Використовуйте openclaw mcp doctor --probe або openclaw mcp probe, коли потрібне живе підтвердження сервера.

    Робочий процес оператора:

    1. Відкрийте Control UI і виберіть MCP.
    2. Перегляньте підсумкові картки для загальної кількості, увімкнених, OAuth і відфільтрованих серверів.
    3. Використовуйте кожен рядок сервера для підказок щодо транспорту, автентифікації, фільтра, часу очікування та команди.
    4. Перемикайте ввімкнення, коли потрібно зберегти визначення, але виключити його з виявлення під час виконання.
    5. Редагуйте секцію конфігурації mcp у межах області для структурних змін, як-от нові сервери, заголовки, TLS, метадані OAuth або фільтри інструментів.
    6. Виберіть Зберегти, щоб лише зберегти конфігурацію, або Зберегти й опублікувати, щоб застосувати її через шлях конфігурації Gateway.
    7. Запустіть openclaw mcp doctor --probe, коли потрібен живий доказ, що відредагований сервер запускається та перелічує інструменти.

    Примітки:

    • фрагменти команд беруть назви серверів у лапки, щоб незвичні назви залишалися придатними для копіювання в shell
    • відображені URL-подібні значення редагуються перед рендерингом, якщо містять вбудовані облікові дані
    • сторінка сама не запускає транспорти MCP
    • активним середовищам виконання може знадобитися openclaw mcp reload, публікація конфігурації Gateway або перезапуск процесу залежно від того, який процес володіє клієнтами MCP

    Поточні обмеження

    Ця сторінка документує міст у тому вигляді, у якому він постачається сьогодні.

    Поточні обмеження:

    • виявлення розмов залежить від наявних метаданих маршруту сеансу Gateway
    • немає універсального push-протоколу поза адаптером, специфічним для Claude
    • інструментів для редагування повідомлень або реакцій поки немає
    • транспорт HTTP/SSE/streamable-http підключається до одного віддаленого сервера; мультиплексованого upstream поки немає
    • permissions_list_open містить лише схвалення, зафіксовані, поки міст підключений

    Пов’язане

    Was this useful?
    On this page

    On this page