پرش به محتوا
Ücretsiz başlayın

Yapay zeka asistanının Odoo'ya bağlanması
MCP sunucusu görsel eğitimi, adım adım

Claude, ChatGPT, Cursor veya n8n'i doğrudan canlı ERP verilerinize bağlayın — kontrollü erişim, her değişiklik için insan onayı ve eksiksiz denetimle. Herhangi bir aracı program kurmadan: Doğrudan Odoo MCP sunucusudur.

Uygulamayı görüntüle ve satın al
51 araç · Protokol 2026-07-28 · OAuth 2.1 · Yazma işlemleri için insan onayı

Odoo üzerinde MCP sunucusu nedir?

MCP sunucusu, yapay zekâ asistanının tahmin etmek yerine sisteminizin gerçek verisini okumasına ve — sizin açık onayınızla — üzerinde değişiklik yapmasına izin veren Odoo üzerinde standart bir bağlantı noktasıdır. MCP, Model Context Protocol'ün kısaltmasıdır; yapay zekâ istemcilerinin bir sistemin araçlarını keşfedip çalıştırdığı açık bir protokoldür. Abrak sürümünde her çağrı, anahtarın bağlı olduğu Odoo kullanıcısının yetkileriyle çalıştırılır, ilk çağrıda hiçbir yazma işlemi uygulanmaz ve her istek — başarılı ya da reddedilmiş — günlüğe kaydedilir.

  • 51 araçOkuma, raporlama, onaylı yazma
  • İnsan onayıHer değişiklik önce diff, sonra uygulama
  • Kullanıcı erişimiOdoo ACL ve kayıt kuralları geçerlidir
  • Tam denetimHer çağrı günlüğe kaydedilir, token saklanmaz

Neden raporu sohbet penceresine kopyalamak yerine doğrudan bağlantı?

Günümüzün yaygın yöntemi şudur: ERP'den rapor alırsınız, dosyaya dökersiniz ve yapay zeka sohbet penceresine yapıştırırsınız. Üç sorunu vardır — veri, kopyalama anına kadar eskimiştir; hacmi yalnızca manuel olarak aldığınızla sınırlıdır; ve modelin çıktısının sisteme geri dönmenin hiçbir yolu yoktur. MCP bağlantısı üçünü de çözer: model soruyu doğrudan bir araç çağrısına çevirir, anlık yanıt alır ve bir şey kaydedilecekse önerilen değişikliği onayınız için size döndürür.

Önemli güvenlik notu: MCP bağlantısı «şirketin tüm anahtarını bir modele vermek» değildir. Erişim düzeyi tam olarak sizin anahtar üzerinde tanımladığınız şeydir — ilerleyen adımlarda onu nasıl dar tutacağınızı adım adım göreceksiniz.

6 adımda kurulum

  1. MCP Sunucusu Uygulamasını Etkinleştirme: Uygulama «MCP sunucusu» Abrak uygulama mağazasından etkinleştirin; uygulama çubuğunda «MCP Sunucusu» menüsü görünür.
  2. Anahtar Oluşturma ve Odoo Kullanıcısı Seçimi: «MCP Sunucusu ▸ Anahtarlar» bölümünde «Yeni» düğmesine tıklayın ve anahtarı en az gerekli yetkiye sahip bir kullanıcıyla ilişkilendirin — tüm çağrılar o kullanıcının yetkileriyle çalışır. Anahtarın tam metni yalnızca bir kez gösterilir; sonrasında yalnızca öneki sistemde saklanır.
  3. Kapsam, hız limiti ve izin verilen modelleri belirleme: Kapsamı «salt okunur» olarak ayarlayın (yazma araçları istemciye hiç listelenmez), dakika başına hız limitini yapılandırın ve gerekirse izin verilen modelleri ve kaynakları kısıtlayın.
  4. İstemci bağlamadan önce laboratuvarda test: «MCP Sunucusu ▸ Laboratuvar» bölümünde aynı araçla aynı anahtarı çalıştırın. Bu adım isteğe bağlı değildir; «araç bozuk» ile «istemcim yanlış yapılandırılmış» arasındaki farkı ortaya koyan tam olarak budur.
  5. Yapay zeka istemcisi bağlantısı: https://<فضای-کاری>.abrak.org/mcp adresini anahtarla birlikte istemciye Bearer token olarak girin — tam ayar örneği aşağıda verilmiştir.
  6. Değişiklikleri onaylama ve denetim incelemesi: Her yazma aracı ilk çağrıda yalnızca bir diff döndürür; onaylandıktan sonra çağrının kendisi «Talep Günlüğü»nde «Yazma Uygulandı» sütunuyla izlenebilir.

Görsel eğitim — adım adım

📸 Yakınlaştırmak için herhangi bir görsele tıklayın — tam ekran albüm açılır ve sol/sağ oklarla (veya yön tuşlarıyla) tüm adımlar arasında gezinebilirsiniz.

Adım 2 ve 3: Anahtar oluşturma, kullanıcı seçimi ve erişim kapsamını sınırlandırma

Odoo'daki MCP sunucusu anahtar listesi: anahtar öneki, Odoo kullanıcısı, okuma-yazma erişim kapsamı, oran sınırı, çağrı sayısı ve son kullanım sütunlarıyla
۱. Anahtarlar listesi günlük çalışma masasıdır: her anahtarın hangi kullanıcıya bağlı olduğunu, hangi kapsama sahip olduğunu, kaç kez kullanıldığını ve en son ne zaman kullanıldığını görürsünüz. Anahtarın tam metni burada değildir — yalnızca öneki.
Odoo'daki MCP anahtar formu: çalışma alanı sunucu adresi, Odoo kullanıcısı, anahtar öneki, son kullanma tarihi, salt okunur veya okuma-yazma kapsamı seçimi, dakika başına oran sınırı, izin verilen kaynaklar ve izin verilen yöntemler sekmesi
2. Anahtar formunda bu çalışma alanının sunucu adresi formun üstünde yazılı olduğundan yazım hatası oluşmaz. Alan adı, son kullanma tarihi, oran sınırı, izin verilen kaynaklar ve hatta izin verilen yöntemlerin listesi (örn. sale.order:action_confirm) hepsi burada yapılandırılır.

Adım 4: Laboratuvar — istemciyi bağlamadan önce aracın gerçek çalışması

Odoo'da MCP sunucusu laboratuvarı: anahtar ve jalali_convert aracı seçimi, aracın Farsça-İngilizce iki dilli açıklaması ve giriş JSON Schema görünümü
3. Aracı seçtiğinizde hemen iki dilli açıklamasını ve giriş JSON Schema'sını görürsünüz — modelin de gördüğü şeyin aynısı. Bağımsız değişkenleri yukarıdaki düzenleyicide yazarsınız.
MCP laboratuvarında jalali_convert aracının çalıştırılma sonucu: Hicri Şemsi tarihi, miladi tarihi, Farsça ay adı ve haftanın gününü içeren JSON çıktısı
4. Sonuç tam olarak istemcinin aldığıyla aynıdır: hem metin hem structuredContent. «curl» sekmesi eşdeğer komutu oluşturur; böylece aynı çağrıyı Odoo dışında da yeniden üretebilirsiniz.

Adım 6: İnsan onayıyla yazma ve denetim

Odoo MCP sunucusunda yazma onay yanıtı: resultType alanı input_required değeriyle ve oluşturulacak kaydın Farsça ve İngilizce olarak ayrıntılı açıklaması
5. Bu sayfanın en önemli görseli. create_records aracı çağrıldı ancak hiçbir kayıt oluşturulmadı: yanıt resultType: "input_required"'dır ve metni hangi kaydın hangi değerlerle oluşturulacağını tam olarak belirtir — Farsça ve İngilizce. Siz onaylayana kadar hiçbir şey yazılmaz.
Odoo'daki MCP sunucusu istek günlüğü: zaman, anahtar, istemci, JSON-RPC yöntemi, araç, model, durum kodu, red nedeni, uygulanan yazma işlemi ve yürütme süresi sütunlarıyla
6. Her çağrı — başarılı ya da reddedilmiş — bir satırdır. «Yazma uygulandı» sütunu önizlemeyi gerçek değişiklikten ayırır, «Reddedilme nedeni» sütunu bir şeyin neden reddedildiğini söyler (Unauthorized, MethodNotFound, InvalidParams ve benzerleri). Tokenın kendisi hiçbir zaman saklanmaz.

Birleşik giriş: aynı Odoo hesabı, hem sohbet hem yapay zeka asistanı

E-posta ve parola alanları ile entegre giriş için ayrı «Abrak ile devam edin» düğmesiyle Abrak yapay zeka asistanı giriş sayfası
7. Abrak Odoo, OpenID Connect kimlik sağlayıcısıdır. Sohbetteki «Abrak ile devam et» düğmesi kullanıcıyı aynı Odoo hesabıyla giriş yapar — MCP sunucusunun kullandığı aynı OAuth 2.1 sunucusunda.
Odoo'daki OAuth erişim onay sayfası: Claude uygulaması mcp:read ve mcp:write erişimi istiyor, oturum açan admin kullanıcı hesabı görüntüleniyor ve «İzin veriyorum» ile «Reddediyorum» düğmeleri görünüyor
8. claude.ai https://mcp.abrak.org/mcp adresine bağlandığında görüntülenen sayfa da budur — otomatik keşif (RFC 9728) istemciyi buraya yönlendirir. Uygulama adı, oturum açılan hesap, istenen kapsamlar ve token'ın tam olarak hangi adres için verildiği (RFC 8707) onaydan önce sayfada görünür.

Panelde hazır komut — prompt yazmadan

MCP sunucu panosunda iş genel bakış hazır komutunun çalıştırılma sonucu: açık potansiyel müşteriler, vadesi geçmiş alacaklar, ödenmemiş Faturalar, onaylanmış siparişler, açık teklifler ve açık/gecikmiş etkinlikleri Farsça rakamlarla içeren göstergeler paneli
9. 24 hazır komuttan «İş genel görünümü» tek tıklamayla çalışır — hiçbir istem gerekmez. Çıktı göstergeler panelidir, ham JSON değil; aynı komut yapay zeka asistanı yolundan da çağrılabilir.
MCP laboratuvarında salt okunur bir anahtar üzerinde explain_denial aracının sonucu: allowed alanı false, mcp_scope katmanı ve okuma/yazma kapsamıyla anahtar oluşturma veya düzenleme için Farsça ve İngilizce kılavuz
۱۰. Salt okunur bir anahtar bir kaydı düzenlemeye çalışır; explain_denial allowed: false olduğunu, reddeden katmanın mcp_scope olduğunu ve tam olarak neyin değişmesi gerektiğini söyler — kuru bir 404 değil.

Adım 5 istemciye göre — ayrıntılı ayarlar

Aşağıdaki tüm örneklerde mycompany.abrak.org adresini kendi çalışma alanı adresinizle, KEY değerini ise 2. adımda oluşturduğunuz anahtarla değiştirin. Aynı adres anahtar formunda da yazılıdır.

Claude Code (komut satırı)

claude mcp add --transport http abrak https://mycompany.abrak.org/mcp \
  --header "Authorization: Bearer KEY"

.mcp.json dosyası — ekip arkadaşlarıyla paylaşılabilir

{
  "mcpServers": {
    "abrak": {
      "type": "http",
      "url": "https://mycompany.abrak.org/mcp",
      "headers": {
        "Authorization": "Bearer KEY"
      }
    }
  }
}

Bu yapıyı masaüstü istemcilerin ve kod editörlerinin çoğu (Cursor ve Windsurf dahil) kabul eder; yalnızca ayar dosyasının konumu farklıdır.

curl ile doğrudan test — ağ sorununu teşhis etmek için

curl -X POST https://mycompany.abrak.org/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Authorization: Bearer KEY" \
  -H "MCP-Protocol-Version: 2026-07-28" \
  -H "Mcp-Method: tools/list" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{}}'

Bu komut araç listesini döndürüyorsa, sunucu ve anahtar sağlıklıdır ve gördüğünüz her sorun istemci ayarlarından kaynaklanıyordur. Mcp-Method ve MCP-Protocol-Version başlıkları protokolün 2026-07-28 sürümünde zorunludur ve uyumlu istemciler bunları kendiliğinden gönderir.

n8n ve otomasyonlar

n8n'de MCP istemci düğümünü kullanın: adres çalışma alanınızın /mcp adresi ve kimlik doğrulama Header tipinde Authorization: Bearer KEY. Bu kullanım için salt okunur kapsamlı ayrı bir anahtar oluşturun, böylece günlüklerde otomasyon trafiğini insan trafiğinden ayırt edebilirsiniz.

Bulut istemcileri (claude.ai ve tarayıcıda ChatGPT)

Bunlar kendi sunucularından bağlanır, sizin bilgisayarınızdan değil — ve İran içindeki bir IP'ye bağlantı açmazlar. Kalıcı adres https://mcp.abrak.org/mcp tam olarak bunun için oluşturulmuştur (Cloudflare arkasında, sunucu IP'sine bağımlı olmadan). claude.ai'de konnektör ekleme menüsünden bu adresi girin; istemci kendisi keşif el sıkışmasını (RFC 9728) yapar ve sizi aynı Odoo onay sayfasına yönlendirir — bu sayfanın 7. adımı, gerçek görselle. Masaüstü istemci ve CLI için bu ayrı adrese gerek yoktur, çalışma alanının /mcp adresi yeterlidir.

Sorun giderme — hata mesajı sade bir dille

Sunucu kasıtlı olarak belirsiz hata döndürmez; her mesaj hangi katmanın engellediğini ve ne değiştirilmesi gerektiğini belirtir. En yaygın olanlar:

Ne görürsünüzGerçek anlamıDoğru iş
İstemci hiç bağlanamıyor İstemci bulut tabanlıdır ve kendi sunucusundan bağlanır, bilgisayarınızdan değil Önce yukarıdaki curl komutunu aynı ağdan test edin; curl yanıt verirse sorun istemci ağ yolundadır, sunucuda değil
“Anahtar ne geçerli bir MCP anahtarı ne de geçerli bir API anahtarı” mesajı Yanlış, süresi dolmuş, devre dışı — ya da başka bir çalışma alanına ait anahtar Anahtarı «Anahtarlar» bölümünde kontrol edin ve adresin, ana bilgisayar adının aynı çalışma alanına ait olduğundan emin olun
Araç listesi beklenenden kısa Anahtar yalnızca okunabilir; yazma araçları kasıtlı olarak listelenmez Gerçekten yazmaya ihtiyacınız varsa, anahtarın kapsamını 'okuma ve yazma' yapın
Araç çalışıyor ama sonuç boş Ya veri yoktur ya da bir kayıt kuralı bunu bu kullanıcıdan gizlemiştir Yanıt bu ikisini birbirinden ayırt eder; ayrıntılar için explain_denial aracını çağırın
Desteklenmeyen protokol sürümü hatası İstemci geçersiz bir protokol sürümü bildiriyor İstemciyi güncelleyin; sunucu eski sürümlerle müzakere eder ancak geçersiz sürümü reddeder
Hız sınırı aşımı hatası Dakikadaki çağrı sayısı anahtarın üst sınırını aştı Anahtar formunda hız limitini artırın ya da otomasyon için ayrı bir anahtar oluşturun

Bu MCP sunucusunu diğerlerinden ne ayırır?

  • Şifreli İmzalı İki Aşamalı Yazma: İlk çağrı yalnızca bir diff döndürür. Onaydan sonra çalıştırılan şey, ikinci denemede gönderilenle değil imzalananla aynıdır — bu nedenle model, görüntüleme ile yürütme arasında argümanları değiştiremez.
  • Gerçekten açıklayan ret hatası: «Access denied» yerine yanıt, hangi katmanın (anahtar kapsamı, model politikası, Odoo ACL veya kayıt kuralı), tam kural adının ve hangi grubun eksik olduğunu belirtir — iki dilde; ayrıca explain_denial aracı bunu denemeden önce yanıtlar.
  • Token bütçesine duyarlı alan seçimi: Yanıtlar token limitine göre kırpılır ve sunucu neyin çıkarıldığını açıkça bildirir — verilerin yarısını sessizce atmak yerine.
  • Gerçek Anlamda Çok Kiracılı: Çalışma alanı ana bilgisayar adından tanımlanır. Bir istek yanlış düğüme ulaşırsa yanıt doğru adresi bildirir; anahtar hiçbir zaman başka bir veritabanını hedef alamaz.
  • İran Paketi: Çift yönlü Jalali tarihi, Farsça aralıklar («geçen mevsim», «Mordad»), Riyal ve Tümen birim belirtimiyle, çek döngüsü, Bordro ve sigorta özeti, durum ve SMS gönderimi.

Odoo'nun kendisinin de bir yapay zeka modeline sahip olmasını istiyorsanız (yalnızca araç yanıtlayıcısı olmak yerine), Abrak Yapay Zeka uygulaması Riyal cüzdanı ve model bağlantısını ayrı ayrı sağlar.

MCP sunucusu hakkında sık sorulan sorular

برای وصل‌کردن دستیار هوش مصنوعی به اودو دقیقاً چه چیزی لازم است؟

سه چیز: اپ «سرور MCP» روی فضای کاری‌تان فعال باشد، یک کلید MCP بسازید و نشانی /mcp فضای کاری‌تان را با همان کلید در کلاینت هوش مصنوعی وارد کنید. هیچ برنامه‌ی واسطی روی کامپیوتر شما نصب نمی‌شود — خودِ اودو سرور MCP است.

نشانی سرور MCP من چیست؟

نشانی همان دامنه‌ی فضای کاری خودتان به‌علاوه‌ی /mcp است؛ مثلاً اگر با mycompany.abrak.org وارد می‌شوید، نشانی سرور https://mycompany.abrak.org/mcp می‌شود. همین نشانی روی فرم هر کلید MCP هم نوشته شده تا اشتباه تایپ نشود.

کلید را به‌صورت Bearer بدهم یا از OAuth استفاده کنم؟

هر دو کار می‌کند. کلاینت‌های دسکتاپ و CLI (مثل Claude Code، Cursor، n8n) معمولاً یک هدر Authorization: Bearer <کلید> می‌گیرند — ساده‌ترین راه. کلاینت‌هایی که خودشان جریان ورود دارند از OAuth استفاده می‌کنند: کاربر یک بار صفحه‌ی تأیید فارسی را می‌بیند و اجازه می‌دهد؛ پشت صحنه همان سیاست کلید، نرخ و ممیزی اعمال می‌شود.

تفاوت کلید «فقط خواندن» و «خواندن و نوشتن» چیست؟

کلید فقط‌خواندنی ابزارهای نوشتن را اصلاً نمی‌بیند — در فهرست ابزارهای کلاینت ظاهر نمی‌شوند، پس مدل حتی نمی‌تواند تلاش کند. کلید خواندن و نوشتن آن‌ها را می‌بیند، ولی هر نوشتنی در فراخوانی اول فقط یک پیش‌نمایش برمی‌گرداند و تا تأیید صریح شما اعمال نمی‌شود. برای شروع همیشه فقط‌خواندنی بسازید.

چطور می‌فهمم دستیار چه کاری کرده است؟

منوی «لاگ درخواست‌ها» هر فراخوانی را ثبت می‌کند: کدام کلید، کدام ابزار، کدام مدل، چه مدت طول کشید، چه کد وضعیتی برگشت، دلیل رد شدن و — مهم‌تر از همه — ستون «نوشتن اعمال شد» که پیش‌نمایش را از تغییر واقعی جدا می‌کند. خودِ توکن هرگز ذخیره نمی‌شود.

دستیار ابزارها را نمی‌بیند یا فهرست خالی است — چه کنم؟

معمولاً یکی از این سه: کلید غیرفعال یا منقضی است؛ کلید فقط‌خواندنی است و شما دنبال ابزار نوشتن می‌گردید؛ یا مدل موردنظر در فهرست «مدل‌های مجاز» کلید نیست. ابزار explain_denial دقیقاً می‌گوید کدام لایه جلوی کار را گرفته و چه باید عوض شود.

کلاینت می‌گوید به سرور نمی‌رسد — مشکل از کجاست؟

اول تشخیص بدهید کلاینت از کجا وصل می‌شود. کلاینت دسکتاپ از کامپیوتر خود شما وصل می‌شود و مستقیم به نشانی فضای کاری می‌رسد. اما کانکتورهای ابری (claude.ai یا ChatGPT در مرورگر) از سرورهای خودشان وصل می‌شوند و به آی‌پی ایران اتصال باز نمی‌کنند؛ برای آن‌ها یک نشانی بیرونی جداگانه لازم است که با پشتیبانی ابرک هماهنگ می‌شود.

چند درخواست در دقیقه مجاز است؟

روی هر کلید یک «سقف نرخ» تنظیم می‌کنید (پیش‌فرض ۶۰ درخواست در دقیقه). شمارش روی خود پایگاه‌داده انجام می‌شود، پس با چند worker هم درست کار می‌کند. عبور از سقف یک خطای استاندارد برمی‌گرداند، نه قطع بی‌توضیح اتصال.

آیا روی اودوی نصب‌شده روی سرور خودم هم کار می‌کند؟

بله. افزونه یک ماژول استاندارد اودو ۱۹ است و روی نصب اختصاصی هم نصب می‌شود. روی نصب چنددیتابیسی، فضای کاری از روی نام میزبان تشخیص داده می‌شود و اگر درخواست به نود اشتباه برسد، به‌جای پاسخ اشتباه، نشانی درست اعلام می‌شود.

داده‌ی من برای آموزش مدل هوش مصنوعی استفاده می‌شود؟

خیر. سرور MCP داده را به مدل نمی‌فرستد؛ کلاینت شماست که تصمیم می‌گیرد چه چیزی را به مدل بدهد. سیاست نگهداری و آموزش داده، سیاست همان سرویس هوش مصنوعی است که خودتان انتخاب کرده‌اید — ابرک در این مسیر فقط پاسخ‌دهنده‌ی ابزار است و هر فراخوانی را برای شما لاگ می‌کند.

Yapay zeka asistanınızı ERP'ye bağlayın

Uygulamayı görüntüle ve satın al