CLI commands
MCP
openclaw mcp iki görevi vardır:
openclaw mcp serveile OpenClaw'ı bir MCP sunucusu olarak çalıştırmaklist,show,status,doctor,probe,add,set,configure,tools,login,logout,reloadveunsetile OpenClaw tarafından yönetilen giden MCP sunucusu tanımlarını yönetmek
serve, OpenClaw'ın bir MCP sunucusu olarak çalışmasıdır. Diğer alt komutlar ise OpenClaw'ın, kendi çalışma zamanlarının daha sonra kullanabileceği sunucular için MCP istemci tarafı kayıt defteri olarak çalışmasıdır.
OpenClaw'ın bir kodlama çalıştırma ortamı oturumunu kendisinin barındırması ve bu çalışma zamanını ACP üzerinden yönlendirmesi gerektiğinde openclaw acp kullanın.
Doğru MCP yolunu seçme
| Amaç | Kullanım | Neden |
|---|---|---|
| Harici bir MCP istemcisinin OpenClaw kanal konuşmalarını okumasını/göndermesini sağlamak | openclaw mcp serve |
OpenClaw, MCP sunucusudur ve Gateway destekli konuşmaları stdio üzerinden sunar. |
| OpenClaw tarafından yönetilen ajan çalıştırmaları için üçüncü taraf MCP sunucularını kaydetmek | openclaw mcp add, set, configure, tools, login |
OpenClaw, MCP istemci tarafı kayıt defteridir ve daha sonra bu sunucuları uygun çalışma zamanlarına aktarır. |
| Bir ajan turu çalıştırmadan kaydedilmiş bir sunucuyu denetlemek | openclaw mcp status, doctor, probe |
status ve doctor yapılandırmayı inceler; probe canlı bir MCP bağlantısı açar ve yetenekleri listeler. |
| MCP yapılandırmasını tarayıcıdan düzenlemek | Control UI /settings/mcp (/mcp diğer adı) |
Sayfa; envanteri, etkinleştirme durumunu, OAuth/filtre özetlerini, komut ipuçlarını ve kapsamlı bir mcp düzenleyicisini gösterir. |
| Codex app-server'a kapsamlı bir yerel MCP sunucusu vermek | mcp.servers.<name>.codex |
codex bloğu yalnızca Codex app-server iş parçacığı aktarımını etkiler ve yerel yapılandırma devrinden önce kaldırılır. |
| ACP tarafından barındırılan çalıştırma ortamı oturumlarını çalıştırmak | openclaw acp ve ACP Ajanları |
ACP köprü modu oturum başına MCP sunucusu eklenmesini kabul etmez; bunun yerine gateway/plugin köprülerini yapılandırın. |
MCP sunucusu olarak OpenClaw
Bu, openclaw mcp serve yoludur.
serve ne zaman kullanılmalı?
openclaw mcp serve şu durumlarda kullanılmalıdır:
- Codex, Claude Code veya başka bir MCP istemcisinin OpenClaw destekli kanal konuşmalarıyla doğrudan iletişim kurması gerektiğinde
- yönlendirilmiş oturumları olan yerel veya uzak bir OpenClaw Gateway'iniz zaten varsa
- kanal başına ayrı köprüler çalıştırmak yerine OpenClaw'ın kanal arka uçlarında çalışan tek bir MCP sunucusu istiyorsanız
OpenClaw'ın kodlama çalışma zamanını kendisinin barındırması ve ajan oturumunu OpenClaw içinde tutması gerektiğinde bunun yerine openclaw acp kullanın.
Nasıl çalışır?
openclaw mcp serve, bir stdio MCP sunucusu başlatır. Bu işlem MCP istemcisinin denetimindedir. İstemci stdio oturumunu açık tuttuğu sürece köprü, WebSocket üzerinden yerel veya uzak bir OpenClaw Gateway'e bağlanır ve yönlendirilmiş kanal konuşmalarını MCP üzerinden sunar.
İstemci köprüyü başlatır
MCP istemcisi openclaw mcp serve işlemini başlatır.
Köprü Gateway'e bağlanır
Köprü, WebSocket üzerinden OpenClaw Gateway'e bağlanır.
Oturumlar MCP konuşmalarına dönüşür
Yönlendirilmiş oturumlar, MCP konuşmalarına ve döküm/geçmiş araçlarına dönüşür.
Canlı olaylar kuyruğa alınır
Köprü bağlıyken canlı olaylar bellekte kuyruğa alınır.
İsteğe bağlı Claude gönderimi
Claude kanal modu etkinse aynı oturum Claude'a özgü anlık bildirimleri de alabilir.
Önemli davranış
- canlı kuyruk durumu, köprü bağlandığında başlar
- eski döküm geçmişi
messages_readile okunur - Claude anlık bildirimleri yalnızca MCP oturumu açıkken mevcuttur
- istemcinin bağlantısı kesildiğinde köprü kapanır ve canlı kuyruk kaybolur
openclaw agentveopenclaw infer model rungibi tek seferlik ajan giriş noktaları, yanıt tamamlandığında açtıkları tüm paketlenmiş MCP çalışma zamanlarını sonlandırır; böylece yinelenen betikli çalıştırmalarda stdio MCP alt süreçleri birikmez- OpenClaw tarafından başlatılan stdio MCP sunucuları (paketlenmiş veya kullanıcı tarafından yapılandırılmış) kapatma sırasında bir süreç ağacı olarak sonlandırılır; böylece sunucunun başlattığı alt süreçler, üst stdio istemcisi kapandıktan sonra çalışmaya devam etmez
- bir oturumun silinmesi veya sıfırlanması, paylaşılan çalışma zamanı temizleme yolu üzerinden o oturumun MCP istemcilerini sonlandırır; böylece kaldırılmış bir oturuma bağlı kalan stdio bağlantıları olmaz
İstemci modu seçme
Genel MCP istemcileri
Yalnızca standart MCP araçları. conversations_list, messages_read, events_poll, events_wait, messages_send ve onay araçlarını kullanın.
Claude Code
Standart MCP araçlarının yanı sıra Claude'a özgü kanal bağdaştırıcısı. --claude-channel-mode on seçeneğini etkinleştirin veya varsayılan auto değerini koruyun.
serve tarafından sunulanlar
Köprü, kanal destekli konuşmaları sunmak için mevcut Gateway oturum yönlendirme meta verilerini kullanır. OpenClaw'da aşağıdakiler gibi bilinen bir yönlendirmeye sahip oturum durumu zaten bulunduğunda bir konuşma görünür:
channel- alıcı veya hedef meta verileri
- isteğe bağlı
accountId - isteğe bağlı
threadId
Bu, MCP istemcilerine aşağıdakiler için tek bir yer sağlar:
- yakın tarihli yönlendirilmiş konuşmaları listelemek
- yakın tarihli döküm geçmişini okumak
- yeni gelen olayları beklemek
- aynı yönlendirme üzerinden yanıt göndermek
- köprü bağlıyken gelen onay isteklerini görmek
Kullanım
Yerel Gateway
openclaw mcp serveUzak Gateway (belirteç)
openclaw mcp serve --url wss://gateway-host:18789 --token-file ~/.openclaw/gateway.tokenUzak Gateway (parola)
openclaw mcp serve --url wss://gateway-host:18789 --password-file ~/.openclaw/gateway.passwordAyrıntılı / Claude kapalı
openclaw mcp serve --verboseopenclaw mcp serve --claude-channel-mode offKöprü araçları
conversations_list
Gateway oturum durumunda zaten yönlendirme meta verilerine sahip olan, oturum destekli yakın tarihli konuşmaları listeler.
Filtreler: limit (en fazla 500), search, channel, includeDerivedTitles, includeLastMessage.
conversation_get
Doğrudan Gateway oturum araması kullanarak session_key değerine göre bir konuşma döndürür.
messages_read
Oturum destekli bir konuşmanın yakın tarihli döküm iletilerini okur. limit varsayılan olarak 20, en fazla 200'dür.
attachments_fetch
Bir döküm iletisinden metin dışı ileti içerik bloklarını ayıklar. Bu, döküm içeriği üzerinde bir meta veri görünümüdür; bağımsız ve kalıcı bir ek veri deposu değildir.
events_poll
Sayısal bir imleçten itibaren kuyruğa alınmış canlı olayları okur. limit en fazla 200'dür.
events_wait
Bir sonraki eşleşen kuyruk olayı gelene veya zaman aşımı süresi dolana kadar uzun yoklama yapar (varsayılan 30 sn., en fazla 300 sn.).
Genel bir MCP istemcisi, Claude'a özgü bir gönderim protokolü olmadan gerçek zamana yakın teslimata ihtiyaç duyduğunda bunu kullanın.
messages_send
Metni, oturumda zaten kayıtlı olan aynı yönlendirme üzerinden geri gönderir.
Geçerli davranış:
- mevcut bir konuşma yönlendirmesi gerektirir
- oturumun kanalını, alıcısını, hesap kimliğini ve iş parçacığı kimliğini kullanır
- yalnızca metin gönderir
permissions_list_open
Köprünün Gateway'e bağlandığından beri gözlemlediği bekleyen yürütme/plugin onay isteklerini listeler.
permissions_respond
Bekleyen bir yürütme/plugin onay isteğini aşağıdakilerden biriyle sonuçlandırır:
allow-onceallow-alwaysdeny
Olay modeli
Köprü, bağlı olduğu sürece bellek içi bir olay kuyruğu tutar.
Geçerli olay türleri:
messageexec_approval_requestedexec_approval_resolvedplugin_approval_requestedplugin_approval_resolvedclaude_permission_request
Claude kanal bildirimleri
Köprü, Claude'a özgü kanal bildirimlerini de sunabilir. Bu, Claude Code kanal bağdaştırıcısının OpenClaw eşdeğeridir: standart MCP araçları kullanılabilir olmaya devam ederken canlı gelen iletiler Claude'a özgü MCP bildirimleri olarak da ulaşabilir.
off
--claude-channel-mode off: yalnızca standart MCP araçları.
on
--claude-channel-mode on: Claude kanal bildirimlerini etkinleştirir.
auto (varsayılan)
--claude-channel-mode auto: geçerli varsayılan; on ile aynı köprü davranışı.
Claude kanal modu etkinleştirildiğinde sunucu, Claude deneysel yeteneklerini duyurur ve şunları yayabilir:
notifications/claude/channelnotifications/claude/channel/permission
Geçerli köprü davranışı:
- gelen
userdöküm iletilerinotifications/claude/channelolarak iletilir - MCP üzerinden alınan Claude izin istekleri bellekte izlenir
- bağlantılı konuşmadaki komut sahibi daha sonra
yes <id>veyano <id>gönderirse (<id>,lhariç 5 harfli istek kimliğidir), köprü bununotifications/claude/channel/permissionbiçimine dönüştürür - bu bildirimler yalnızca canlı oturumda kullanılabilir; MCP istemcisinin bağlantısı kesilirse gönderim hedefi kalmaz
Bu, kasıtlı olarak istemciye özgüdür. Genel MCP istemcileri standart yoklama araçlarını kullanmalıdır.
MCP istemci yapılandırması
Örnek stdio istemci yapılandırması:
{ "mcpServers": { "openclaw": { "command": "openclaw", "args": [ "mcp", "serve", "--url", "wss://gateway-host:18789", "--token-file", "/path/to/gateway.token" ] } }}Çoğu genel MCP istemcisi için standart araç yüzeyiyle başlayın ve Claude modunu göz ardı edin. Claude modunu yalnızca Claude'a özgü bildirim yöntemlerini gerçekten anlayan istemcilerde açın.
Seçenekler
openclaw mcp serve şunları destekler:
--urlstringGateway WebSocket URL'si. Yapılandırıldığında varsayılan olarak gateway.remote.url kullanılır.
--tokenstringGateway token'ı.
--token-filestringToken'ı dosyadan oku.
--passwordstringGateway parolası.
--password-filestringParolayı dosyadan oku.
--claude-channel-mode"auto" | "on" | "off"Claude bildirim modu. Varsayılan: auto.
-v, --verbosebooleanstderr üzerinde ayrıntılı günlükler.
Güvenlik ve güven sınırı
Köprü yönlendirme oluşturmaz. Yalnızca Gateway'in zaten nasıl yönlendireceğini bildiği konuşmaları kullanıma sunar.
Bunun anlamı şudur:
- gönderen izin listeleri, eşleştirme ve kanal düzeyindeki güven hâlâ temel OpenClaw kanal yapılandırmasına aittir
messages_sendyalnızca mevcut bir kayıtlı rota üzerinden yanıt verebilir- onay durumu yalnızca geçerli köprü oturumu için canlı/bellek içidir
- köprü kimlik doğrulaması, diğer tüm uzak Gateway istemcileri için güveneceğiniz Gateway token'ı veya parola denetimlerini kullanmalıdır
conversations_list içinde bir konuşma eksikse olağan neden MCP yapılandırması değildir. Temel Gateway oturumundaki rota meta verileri eksik veya tamamlanmamıştır.
Test
OpenClaw, bu köprü için deterministik bir Docker duman testiyle birlikte gelir:
pnpm test:docker:mcp-channelsBu duman testi tek bir konteyner çalıştırır: konuşma durumunu hazırlar, Gateway'i başlatır, ardından openclaw mcp serve öğesini bir stdio alt süreci olarak oluşturur ve onu bir MCP istemcisi olarak kullanır. Gerçek stdio MCP köprüsü üzerinden konuşma keşfini, transkript okumalarını, ek meta verisi okumalarını, canlı olay kuyruğu davranışını ve Claude tarzı kanal ve izin bildirimlerini doğrular. Giden gönderim yönlendirmesi (kayıtlı konuşma rotasını yeniden kullanan messages_send) ayrıca src/mcp/channel-server.test.ts içindeki birim testleriyle kapsanır.
Bu, test çalıştırmasına gerçek bir Telegram, Discord veya iMessage hesabı bağlamadan köprünün çalıştığını kanıtlamanın en hızlı yoludur.
Daha geniş test bağlamı için Test bölümüne bakın.
Sorun giderme
Hiçbir konuşma döndürülmüyor
Genellikle Gateway oturumunun henüz yönlendirilebilir olmadığı anlamına gelir. Temel oturumda kayıtlı kanal/sağlayıcı, alıcı ve isteğe bağlı hesap/iş parçacığı rota meta verilerinin bulunduğunu doğrulayın.
events_poll veya events_wait eski mesajları kaçırıyor
Beklenen davranıştır. Canlı kuyruk, köprü bağlandığında başlar. Eski transkript geçmişini messages_read ile okuyun.
Claude bildirimleri görünmüyor
Şunların tümünü kontrol edin:
- istemci stdio MCP oturumunu açık tuttu
--claude-channel-mode,onveyaauto- istemci Claude'a özgü bildirim yöntemlerini gerçekten anlıyor
- gelen mesaj, köprü bağlandıktan sonra gerçekleşti
Onaylar eksik
permissions_list_open yalnızca köprü bağlıyken gözlemlenen onay isteklerini gösterir. Kalıcı bir onay geçmişi API'si değildir.
MCP istemci kayıt defteri olarak OpenClaw
Bu; openclaw mcp list, show, status, doctor, probe, add, set,
configure, tools, login, logout, reload ve unset yoludur.
Bu komutlar OpenClaw'u MCP üzerinden kullanıma sunmaz. OpenClaw yapılandırmasında mcp.servers altındaki, OpenClaw tarafından yönetilen MCP sunucusu tanımlarını yönetir. config/mcporter.json içindeki mcporter sunucularını okumazlar.
Kaydedilen bu tanımlar, gömülü OpenClaw ve diğer çalışma zamanı bağdaştırıcıları gibi OpenClaw'un daha sonra başlattığı veya yapılandırdığı çalışma zamanları içindir. OpenClaw, bu çalışma zamanlarının kendi yinelenen MCP sunucusu listelerini tutmasına gerek kalmaması için tanımları merkezi olarak depolar.
Önemli davranış
- bu komutlar yalnızca OpenClaw yapılandırmasını okur veya yazar
status,list,show,doctor;--probe,set,configure,tools,logout,reloadveunsetolmadan hedef MCP sunucusuna bağlanmazlogin, yapılandırılmış HTTP sunucusu için MCP OAuth ağ akışını gerçekleştirir ve ortaya çıkan yerel kimlik bilgilerini kaydederstatus --verbose, bağlanmadan çözümlenmiş aktarım, kimlik doğrulama, zaman aşımı, filtre ve paralel araç çağrısı ipuçlarını yazdırırdoctor, kayıtlı tanımları eksik stdio komutları, geçersiz çalışma dizinleri, eksik TLS dosyaları, devre dışı sunucular, değişmez hassas üstbilgi/ortam değerleri ve tamamlanmamış OAuth yetkilendirmesi gibi yerel kurulum sorunlarına karşı denetlerdoctor --probe, statik denetimler geçtikten sonraprobeile aynı canlı bağlantı kanıtını eklerprobe, seçilen sunucuya veya yapılandırılmış tüm sunuculara bağlanır, araçları listeler ve yetenekleri/tanıları bildiriradd, bayraklardan bir tanım oluşturur ve--no-probeayarlanmadığı veya önce OAuth yetkilendirmesi gerekmediği sürece kaydetmeden önce yoklar- çalışma zamanı bağdaştırıcıları, yürütme sırasında gerçekte hangi aktarım biçimlerini desteklediklerine karar verir
enabled: false, bir sunucuyu kayıtlı tutar ancak gömülü çalışma zamanı keşfinin dışında bırakırtimeoutveconnectTimeout, sunucu başına istek ve bağlantı zaman aşımlarını saniye cinsinden ayarlarsupportsParallelToolCalls: true, bağdaştırıcıların eşzamanlı olarak çağırabileceği sunucuları işaretler- HTTP sunucuları statik üstbilgiler, OAuth oturum açma, TLS doğrulama denetimi ve mTLS sertifika/anahtar yollarını kullanabilir
- gömülü OpenClaw, yapılandırılmış MCP araçlarını normal
codingvemessagingaraç profillerinde kullanıma sunar;minimalbunları yine gizler vetools.deny: ["bundle-mcp"]bunları açıkça devre dışı bırakır - sunucu başına
toolFilter.includevetoolFilter.exclude, keşfedilen MCP araçlarını OpenClaw araçlarına dönüşmeden önce filtreler - kaynakların veya istemlerin reklamını yapan sunucular, kaynakları listelemek/okumak ve istemleri listelemek/getirmek için yardımcı araçları da kullanıma sunar; oluşturulan bu yardımcı adları (
resources_list,resources_read,prompts_list,prompts_get) aynı dahil etme/hariç tutma filtresini kullanır - dinamik MCP araç listesi değişiklikleri, o oturumun önbelleğe alınmış kataloğunu geçersiz kılar; sonraki keşif/kullanım sunucudan yenilenir
- yinelenen MCP araç isteği/protokol hataları, tek bir bozuk sunucunun tüm turu tüketmemesi için o sunucuyu kısa süreliğine duraklatır
- oturum kapsamındaki paketlenmiş MCP çalışma zamanları,
mcp.sessionIdleTtlMsmilisaniye boşta kaldıktan sonra sonlandırılır (varsayılan 10 dakika; devre dışı bırakmak için0ayarlayın) ve tek seferlik gömülü çalıştırmalar bunları çalıştırma sonunda temizler
Çalışma zamanı bağdaştırıcıları, bu paylaşılan kayıt defterini alt istemcilerinin beklediği biçime normalleştirebilir. Örneğin gömülü OpenClaw, OpenClaw transport değerlerini doğrudan tüketirken Claude Code ve Gemini, http, sse veya stdio gibi CLI'ya özgü type değerlerini alır.
Codex app-server ayrıca her sunucudaki isteğe bağlı bir codex bloğunu dikkate alır. Bu,
yalnızca Codex app-server iş parçacıkları için OpenClaw yansıtma meta verisidir; ACP oturumlarını,
genel Codex donanım yapılandırmasını veya diğer çalışma zamanı bağdaştırıcılarını değiştirmez.
Bir sunucuyu yalnızca belirli OpenClaw agent kimliklerine yansıtmak için boş olmayan
codex.agents kullanın. Boş, yalnızca boşluk içeren veya geçersiz agent listeleri,
genel hâle gelmek yerine yapılandırma doğrulaması tarafından reddedilir ve çalışma zamanı
yansıtma yolundan çıkarılır. Güvenilir bir sunucu için Codex'in yerel default_tools_approval_mode
değerini yaymak üzere codex.defaultToolsApprovalMode (auto, prompt veya approve)
kullanın. OpenClaw, yerel mcp_servers yapılandırmasını Codex'e vermeden önce
codex meta verilerini kaldırır.
Kaydedilmiş MCP sunucusu tanımları
Komutlar:
openclaw mcp listopenclaw 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 reloadopenclaw mcp unset <name>
Notlar:
list, sunucu adlarını sıralar.- Ad olmadan
show, yapılandırılmış MCP sunucusu nesnesinin tamamını yazdırır. status, yapılandırılmış aktarımları bağlanmadan sınıflandırır.--verbose, çözümlenmiş başlatma, zaman aşımı, OAuth, filtre ve paralel çağrı ayrıntılarını içerir.doctor, bağlanmadan statik denetimler gerçekleştirir. Komutun etkin sunucuların bağlandığını da doğrulaması gerekiyorsa--probeekleyin.probe, bağlanır ve araç sayılarını, kaynak/istem desteğini, liste değişikliği desteğini ve tanıları bildirir.add;--command,--arg,--envve--cwdgibi stdio bayraklarını veya--url,--transport,--header,--auth oauth, TLS, zaman aşımı ve araç seçimi bayrakları gibi HTTP bayraklarını kabul eder.set, komut satırında tek bir JSON nesne değeri bekler.configure, sunucu tanımının tamamını değiştirmeden etkinleştirmeyi, araç filtrelerini, zaman aşımlarını, OAuth'u, TLS'yi ve paralel araç çağrısı ipuçlarını günceller. Güncellenmiş sunucuyu kaydetmeden önce doğrulamak için--probeekleyin.tools, sunucu başına araç filtrelerini günceller. Dahil etme/hariç tutma girdileri MCP araç adları ve basit*glob kalıplarıdır.login,auth: "oauth"ile yapılandırılmış HTTP sunucuları için OAuth akışını çalıştırır. İlk çalıştırma bir yetkilendirme URL'si yazdırır; onaydan sonra--codeile yeniden çalıştırın.logout, kayıtlı sunucu tanımını kaldırmadan adlandırılmış sunucunun depolanmış OAuth kimlik bilgilerini temizler.reload, yalnızca geçerli CLI süreci için önbelleğe alınmış süreç içi MCP çalışma zamanlarını sonlandırır. Başka bir süreçteki Gateway veya agent süreçlerinin yine kendi yeniden yükleme veya yeniden başlatma yoluna ihtiyacı vardır.- Streamable HTTP MCP sunucuları için
transport: "streamable-http"kullanın.openclaw mcp set, uyumluluk amacıyla CLI'ya özgütype: "http"değerini de aynı standart yapılandırma biçimine normalleştirir. unset, adlandırılmış sunucu mevcut değilse başarısız olur.
Örnekler:
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 context7Yaygın sunucu tarifleri
Bu örnekler yalnızca sunucu tanımlarını kaydeder. Sunucunun başlatıldığını ve araçları kullanıma sunduğunu doğrulamak için ardından openclaw mcp doctor --probe komutunu çalıştırın.
Dosya sistemi
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 --probeDosya sistemi sunucularının kapsamını, aracının okuması veya düzenlemesi gereken en küçük dizin ağacıyla sınırlayın.
Bellek
openclaw mcp add memory \ --command npx \ --arg -y \ --arg @modelcontextprotocol/server-memoryopenclaw mcp probe memory --jsonSunucu, normal aracılar tarafından kullanılamaması gereken yazma araçları sunuyorsa bir araç filtresi kullanın.
Yerel betik
openclaw mcp add local-tools \ --command node \ --arg ./dist/mcp-server.js \ --cwd /srv/openclaw-tools \ --env API_BASE=https://internal.exampleopenclaw mcp status --verbosedoctor, cwd öğesinin mevcut olduğunu ve komutun yapılandırılmış ortamdan çözümlendiğini denetler.
Uzak HTTP
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 --probeUzak sunucu destekliyorsa OAuth kullanın. Sunucu statik üstbilgiler gerektiriyorsa değişmez bearer token'larını commit etmekten kaçının.
Masaüstü/CUA
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 --probeDoğrudan masaüstü denetim sunucuları, başlattıkları işlemin izinlerini devralır. Dar kapsamlı araç filtreleri ve işletim sistemi düzeyinde izin istemleri kullanın.
JSON çıktı biçimleri
Betikler ve panolar için --json kullanın. Alan kümeleri zaman içinde genişleyebileceğinden tüketiciler bilinmeyen anahtarları yok saymalıdır.
status --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
{ "ok": true, "path": "/home/user/.openclaw/openclaw.json", "servers": [ { "name": "docs", "ok": true, "issues": [ { "level": "warning", "message": "OAuth kimlik bilgileri yetkilendirilmemiş; openclaw mcp login docs komutunu çalıştırın" } ] } ]}Etkinleştirilmiş ve denetlenmiş herhangi bir sunucuda error düzeyinde bir sorun bulunduğunda doctor --json sıfırdan farklı bir kodla çıkar. warning ve info sorunları bildirilir ancak tek başlarına komutun başarısız olmasına neden olmaz.
probe --json
{ "generatedAt": "2026-05-31T09:00:00.000Z", "servers": { "docs": { "launch": "streamable-http https://mcp.example.com/mcp", "tools": 2, "resources": true, "listChanged": { "tools": true, "resources": false, "prompts": false } } }, "tools": ["docs__read_page", "docs__search"], "diagnostics": []}probe --json canlı bir MCP istemci oturumu açar ve sonucunu doğrudan yazdırır; status/doctor öğelerinden farklı olarak çıktıda üst düzey bir path alanı bulunmaz. resources ve prompts anahtarları yalnızca sunucu gerçekten bu yeteneği bildirdiğinde bulunur (istemleri olmayan bir sunucu, false bildirmek yerine prompts anahtarını atlar). Statik yapılandırma denetimleri için değil, erişilebilirlik ve yetenek kanıtı için probe kullanın.
Örnek yapılandırma biçimi:
{ "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 aktarımı
Yerel bir alt işlem başlatır ve stdin/stdout üzerinden iletişim kurar.
| Alan | Açıklama |
|---|---|
command |
Başlatılacak yürütülebilir dosya (gerekli) |
args |
Komut satırı bağımsız değişkenleri dizisi |
env |
Ek ortam değişkenleri |
cwd / workingDirectory |
İşlemin çalışma dizini |
SSE / HTTP aktarımı
HTTP Server-Sent Events üzerinden uzak bir MCP sunucusuna bağlanır.
| Alan | Açıklama |
|---|---|
url |
Uzak sunucunun HTTP veya HTTPS URL'si (gerekli) |
headers |
İsteğe bağlı HTTP üstbilgileri anahtar-değer eşlemesi (örneğin kimlik doğrulama token'ları) |
connectionTimeoutMs |
Sunucu başına bağlantı zaman aşımı, ms cinsinden (isteğe bağlı) |
connectTimeout |
Sunucu başına bağlantı zaman aşımı, saniye cinsinden (isteğe bağlı) |
timeout / requestTimeoutMs |
Sunucu başına MCP istek zaman aşımı, saniye veya ms cinsinden |
auth: "oauth" |
openclaw mcp login tarafından kaydedilen MCP OAuth kimlik bilgilerini kullan |
sslVerify |
Yalnızca açıkça güvenilen özel HTTPS uç noktaları için false olarak ayarlayın |
clientCert / clientKey |
mTLS istemci sertifikası ve anahtar yolları |
supportsParallelToolCalls |
Bu sunucu için eşzamanlı çağrıların güvenli olduğuna dair ipucu |
Örnek:
{ "mcp": { "servers": { "remote-tools": { "url": "https://mcp.example.com", "auth": "oauth", "timeout": 20, "headers": { "Authorization": "Bearer <token>" } } } }}url (kullanıcı bilgileri) ve headers içindeki hassas değerler, günlüklerde ve durum çıktısında gizlenir. openclaw mcp doctor, hassas görünümlü headers veya env girdileri değişmez değerler içerdiğinde uyarır; böylece operatörler bu değerleri commit edilmiş yapılandırmanın dışına taşıyabilir.
OAuth iş akışı
OAuth, MCP OAuth akışını bildiren HTTP MCP sunucuları içindir. auth: "oauth" etkin olduğunda bir sunucu için statik Authorization üstbilgileri yok sayılır. openclaw mcp login tarafından kaydedilen kimlik bilgileri; gömülü MCP, CLI çalıştırıcıları ve yerel Codex uygulama sunucusuyla çalışır.
Kimlik bilgileri kullanılabilir olana kadar OpenClaw, aracı turunu başarısız kılmak yerine yalnızca ilgili MCP sunucusunu aracı çalışma zamanından çıkarır. Ardından operatör veya kabuk erişimi olan bir aracı, openclaw mcp login <name> komutunu çalıştırıp sunucuyu sonraki bir turda kullanabilir.
Uzak bir MCP hizmeti zaten yenileme özellikli ayrı bir OpenClaw kimlik doğrulama profiliyle destekleniyorsa isteğe bağlı olarak oauth.authProfileId ayarlanabilir. OpenClaw, çalışma zamanı izdüşümünden önce iki kimlik bilgisi kaynağından birini yeniler ve aşağı akış MCP istemcisine yalnızca geçerli erişim token'ını iletir.
Sunucuyu kaydetme
Sunucuyu auth: "oauth" ve isteğe bağlı OAuth meta verileriyle ekleyin veya güncelleyin.
openclaw mcp set docs '{"url":"https://mcp.example.com/mcp","transport":"streamable-http","auth":"oauth","oauth":{"scope":"docs.read"}}'Kimlik doğrulama profili destekli bearer için profil bağlamasını kaydedin:
openclaw mcp set docs '{"url":"https://mcp.example.com/mcp","transport":"streamable-http","auth":"oauth","oauth":{"authProfileId":"docs:mcp"}}'Oturum açmayı başlatma
Yetkilendirme isteğini oluşturmak için oturum açma komutunu çalıştırın.
openclaw mcp login docsOpenClaw, yetkilendirme URL'sini yazdırır ve geçici OAuth doğrulayıcı durumunu OpenClaw durum dizini altında saklar.
Kodla tamamlama
Tarayıcıda onay verdikten sonra döndürülen kodu OpenClaw'a geri iletin.
openclaw mcp login docs --code abc123Yetkilendirmeyi denetleyin
Belirteçlerin mevcut olduğunu doğrulamak için status veya doctor komutunu kullanın.
openclaw mcp status --verboseopenclaw mcp doctor docs --probeKimlik bilgilerini temizleyin
Logout, saklanan OAuth kimlik bilgilerini kaldırır ancak kaydedilmiş sunucu tanımını korur.
openclaw mcp logout docsSağlayıcı belirteçleri döndürürse veya yetkilendirme durumu takılı kalırsa openclaw mcp logout <name> komutunu çalıştırın, ardından login işlemini tekrarlayın. Sunucu adı ve URL kimlik bilgisi deposu girdisini tanımlamaya devam ettiği sürece logout, auth: "oauth" yapılandırmadan kaldırıldıktan sonra bile kaydedilmiş bir HTTP sunucusunun kimlik bilgilerini temizleyebilir.
Akış destekli HTTP aktarımı
streamable-http, sse ve stdio ile birlikte kullanılabilen ek bir aktarım seçeneğidir. Uzak MCP sunucularıyla çift yönlü iletişim için HTTP akışını kullanır.
| Alan | Açıklama |
|---|---|
url |
Uzak sunucunun HTTP veya HTTPS URL'si (zorunlu) |
transport |
Bu aktarımı seçmek için "streamable-http" olarak ayarlayın; belirtilmezse OpenClaw sse kullanır |
headers |
İsteğe bağlı HTTP üst bilgileri anahtar-değer eşlemesi (örneğin kimlik doğrulama belirteçleri) |
connectionTimeoutMs |
Sunucu başına bağlantı zaman aşımı, ms cinsinden (isteğe bağlı) |
connectTimeout |
Sunucu başına bağlantı zaman aşımı, saniye cinsinden (isteğe bağlı) |
timeout / requestTimeoutMs |
Sunucu başına MCP isteği zaman aşımı, saniye veya ms cinsinden |
auth: "oauth" |
openclaw mcp login tarafından kaydedilen MCP OAuth kimlik bilgilerini kullanır |
sslVerify |
Yalnızca açıkça güvenilen özel HTTPS uç noktaları için false olarak ayarlayın |
clientCert / clientKey |
mTLS istemci sertifikası ve anahtar yolları |
supportsParallelToolCalls |
Bu sunucu için eşzamanlı çağrıların güvenli olduğuna dair ipucu |
OpenClaw yapılandırması, standart yazım olarak transport: "streamable-http" kullanır. CLI'ye özgü MCP type: "http" değerleri, openclaw mcp set aracılığıyla kaydedildiğinde kabul edilir ve mevcut yapılandırmada openclaw doctor --fix tarafından düzeltilir; ancak gömülü OpenClaw doğrudan transport değerini kullanır.
Örnek:
{ "mcp": { "servers": { "streaming-tools": { "url": "https://mcp.example.com/stream", "transport": "streamable-http", "connectTimeout": 10, "timeout": 30, "headers": { "Authorization": "Bearer <token>" } } } }}Denetim Arayüzü
Tarayıcı Denetim Arayüzü, /settings/mcp adresinde özel bir MCP ayarları sayfası içerir; önceki /mcp yolu takma ad olarak kalır. Sayfa; yapılandırılmış sunucu sayılarını, etkin/OAuth/filtre özetlerini, sunucu başına aktarım satırlarını, etkinleştirme/devre dışı bırakma denetimlerini, yaygın CLI komutlarını ve mcp yapılandırma bölümü için kapsamlı bir düzenleyiciyi gösterir.
Sayfayı operatör düzenlemeleri ve hızlı envanter için kullanın. Canlı sunucu kanıtı gerektiğinde openclaw mcp doctor --probe veya openclaw mcp probe kullanın.
Operatör iş akışı:
- Denetim Arayüzü'nü açın ve MCP seçeneğini belirleyin.
- Toplam, etkin, OAuth ve filtrelenmiş sunucular için özet kartlarını inceleyin.
- Aktarım, kimlik doğrulama, filtre, zaman aşımı ve komut ipuçları için her sunucu satırını kullanın.
- Bir tanımı korumak ancak çalışma zamanı keşfinin dışında bırakmak istediğinizde etkinleştirme durumunu değiştirin.
- Yeni sunucular, üst bilgiler, TLS, OAuth meta verileri veya araç filtreleri gibi yapısal değişiklikler için kapsamlı
mcpyapılandırma bölümünü düzenleyin. - Yalnızca yapılandırmayı kalıcılaştırmak için Save, Gateway yapılandırma yolu üzerinden uygulamak için Save & Publish seçeneğini belirleyin.
- Düzenlenen sunucunun başladığına ve araçları listelediğine dair canlı kanıt gerektiğinde
openclaw mcp doctor --probekomutunu çalıştırın.
Notlar:
- komut parçacıkları, olağan dışı adların kabukta kopyalanabilir kalması için sunucu adlarını tırnak içine alır
- görüntülenen URL benzeri değerler, gömülü kimlik bilgileri içerdiğinde işlenmeden önce sansürlenir
- sayfa MCP aktarımlarını kendiliğinden başlatmaz
- MCP istemcilerinin hangi işlem tarafından yönetildiğine bağlı olarak etkin çalışma zamanlarında
openclaw mcp reload, Gateway yapılandırmasını yayımlama veya işlemi yeniden başlatma gerekebilir
MCP Uygulamaları
OpenClaw, kararlı MCP Apps uzantısını uygulayan araçları işleyebilir. Uygulamaların HTML'i yapılandırılmış MCP sunucusundan geldiği ve aynı sunucudan uygulama tarafından görülebilen araçları veya kaynakları isteyebildiği için Uygulamalar isteğe bağlıdır.
Ana makine köprüsünü etkinleştirin:
openclaw config set mcp.apps.enabled true --strict-jsonBu ayarı değiştirdikten sonra Gateway'i yeniden başlatın. Etkinleştirildiğinde OpenClaw, Gateway bağlantı noktası artı birde (varsayılan Gateway için 18790) yalnızca korumalı alan için bir HTTP(S) dinleyicisi başlatır. Denetim Arayüzü, Uygulamaları bu ayrı kaynaktan yükler; dinleyici hiçbir zaman Denetim Arayüzü'nü, kimliği doğrulanmış Gateway rotalarını veya kullanıcı verilerini sunmaz.
Doğrudan Gateway bağlantılarının her iki bağlantı noktasına da erişmesi gerekir. Denetim Arayüzü'nü bir ters proxy veya TLS sonlandırıcı kullanıma sunuyorsa Uygulamalara özel bir genel kaynak verin ve yalnızca bu kaynağı korumalı alan dinleyicisine yönlendirin:
{ mcp: { apps: { enabled: true, sandboxOrigin: "https://mcp-apps.example.com", sandboxPort: 18790, }, },}Korumalı alan kaynağı, Denetim Arayüzü kaynağından farklı olmalıdır. Üzerinde kimliği doğrulanmış veya hassas başka içerikler barındırmayın.
Örneğin, resmî temel React demosu şu şekilde yapılandırılabilir:
{ mcp: { apps: { enabled: true }, servers: { "basic-react": { command: "npx", args: ["-y", "@modelcontextprotocol/server-basic-react", "--stdio"], }, }, },}Davranış ve güvenlik sınırları:
- OpenClaw,
io.modelcontextprotocol/uiuzantısını yalnızca Uygulamalar etkinleştirildiğinde bildirir. - Yalnızca tam olarak
text/html;profile=mcp-appMIME türüne sahipui://kaynakları işlenir. - Kullanıcı arayüzü kaynakları 2 MiB ile sınırlandırılır, özel bir dış kaynakta çift iframe proxy'sinin arkasına yerleştirilir, opak bir iç Uygulama kaynağına yüklenir ve kaynak meta verilerinden türetilen CSP ile kısıtlanır.
- Yalnızca Uygulamaya yönelik araçlar (
_meta.ui.visibility: ["app"]) model araç listelerinin dışında kalır. Uygulamalar, yalnızca kendilerini yöneten sunucudaki uygulama tarafından görülebilen ve görünümü oluşturan çalıştırmanın geçerli OpenClaw araç politikasından da geçen araçları çağırabilir. - İç Uygulama belgeleri Uygulamalar arası yalıtım için opak kaynaklar kullandığı sürece kamera, mikrofon ve coğrafi konum gibi kaynağa bağlı Uygulama izinleri verilmez.
- Uygulama HTML'i, eksiksiz araç bağımsız değişkenleri ve ham sonuçlar, sınırlandırılmış on dakikalık bir bellek içi görünüm kiralamasında tutulur; diske yazılmaz veya transkript önizleme meta verilerine kopyalanmaz. Transkript yalnızca özgün araç çağrısı kimliğine bağlı, sınırlandırılmış bir sunucu/araç/kaynak tanımlayıcısını saklar. Gateway yeniden başlatıldıktan sonra Denetim Arayüzü bu tanımlayıcıyı kimliği doğrulanmış oturum transkriptine göre doğrulayabilir ve
ui://kaynağını yeniden getirebilir; yeniden oluşturulan görünümler, yeni bir çalıştırma güncel araç izinlerini belirleyene kadar salt okunurdur. openclaw security audit, köprü etkinken uyarı verir. Gerekli olmadığındaopenclaw config set mcp.apps.enabled false --strict-jsonile devre dışı bırakın.
Güncel sınırlamalar
Bu sayfa, köprüyü bugün sunulduğu hâliyle belgeler.
Güncel sınırlamalar:
- konuşma keşfi, mevcut Gateway oturum rotası meta verilerine bağlıdır
- Claude'a özgü bağdaştırıcının ötesinde genel bir anlık iletim protokolü yoktur
- henüz mesaj düzenleme veya tepki araçları yoktur
- HTTP/SSE/streamable-http aktarımı tek bir uzak sunucuya bağlanır; henüz çoğullanmış bir yukarı akış yoktur
permissions_list_openyalnızca köprü bağlıyken gözlemlenen onayları içerir