تخطَّ إلى المحتوى
MCP · Model Context Protocol

تكامل MCP واحد.
كل الموردين.

واجهة التوزيع الموحّدة لوكلاء الذكاء الاصطناعي: البحث والأسعار الحية والحجز المؤكَّد على مرحلتين — مع عروض أسعار تحمل أدلتها وقواعد تسعير تهيّئها بنفسك.

ضريبة التكامل الجديدة

موردو الفنادق يطلقون كلٌّ MCP خاصًا به. كل تكامل يعني حسابًا جديدًا وفضاء معرّفات جديدًا وصندوق تسعير أسود جديد — يعيد وكيلك بناء الأنابيب نفسها لكل مورد، إلى الأبد.

supplier-MCP × N → N × (auth + ids + pricing + ops)
HotelByte

اجمع مرة واحدة

جميع موصّلات الموردين (Dida وTourmind وYalago وHotelbeds…) تعمل خلف سطح أدوات MCP واحد. حين يطلق موردٌ MCP الخاص به غدًا، يصبح مسارًا صاعدًا إضافيًا لنا — لا تكاملًا إضافيًا عليك.

your-agent → /mcp → كل الموردين

ثلاثة مداخل

سطح الأدوات نفسه والعقد نفسه — اختر المسار الموافق لبيئة تشغيل وكيلك.

بوابة محلية

أجهزة تتحكم بها (Claude Code / Cursor / Codex): يشغّل hbcli بوابة stdio محلية؛ يبقى المفتاح في مخزن الاعتمادات المحلي، وتكوينات الوكيل بلا أي أسرار.

{ "mcpServers": { "hotelbyte":
  { "command": "hbcli", "args": ["mcp", "serve"] } } }

مفتاح ثابت

المنصات المستضافة وCI: أصدر مفتاحًا ثابتًا طويل الخمول (ينتهي فقط بعد 30 يوم خمول؛ والعمر المطلق مقيّد بـ365 يومًا من الخادم) وضعه مباشرة في التكوين.

$ hbcli mcp token
{ "type": "http", "url": "https://…/mcp",
  "headers": { "Authorization": "Bearer <token>" } }

موصلات OAuth 2.1

Claude للويب / موصلات ChatGPT: اكتشاف RFC 9728/8414 قياسي وتسجيل ديناميكي وPKCE. صفحة الموافقة مستضافة لدينا، والرمز هو JWT المنصة.

GET /.well-known/oauth-protected-resource
→ 401 WWW-Authenticate: resource_metadata=…

وصّل وكيلك في دقيقة

تبدأ كل بطاقة بأمر واحد — hbcli mcp setup <client> — يكتب الإعداد تلقائيًا (أو يطبع رمزك مع الحقول المطلوبة حقلًا بحقل) ويتحقق من الاتصال. وأدوات الكتابة ما زالت تتطلب تأكيدًا صريحًا.

بدون تسجيل — جرّب الآن

‏hbcli mcp setup <client> --demo يعمل الآن — هوية Sandbox المشتركة مدمجة في CLI، دون حساب ولا اعتمادات. ابحث عن فنادق حقيقية في ثوانٍ؛ وارتقِ إلى مستأجرك الخاص متى شئت.

اجلب مستأجرك الخاص

سجّل في البوابة، أصدر اعتمادات API، ثم hbcli auth set-credentials && hbcli mcp setup — قواعد الموردين وهامشك وعملاؤك. يمكن للمستخدم حمل الهويتين معًا.

Claude CodeCLI

سطر واحد للاتصال عن بُعد عبر HTTP؛ أو بوابة stdio محلية ليبقى المفتاح في جهازك.

hbcli mcp setup claude-code
# runs: claude mcp add hotelbyte --scope user -- hbcli mcp serve
# (no claude on PATH? prints a paste-ready snippet instead)
CursorIDE

عام في ~/.cursor/mcp.json أو لكل مشروع في .cursor/mcp.json.

hbcli mcp setup cursor
# merges hotelbyte into ~/.cursor/mcp.json
# (your other MCP servers are preserved)
ChatGPTConnector

إضافة مخصصة (وضع المطوّر): عنوان MCP + مصادقة بمفتاح API — اختر مفتاح API وليس OAuth، وإلا يفشل الإنشاء عند الفحص.

hbcli mcp setup chatgpt
# prints your token + the exact form fields:
#   Server URL:     https://api-test.hotelbyte.com/mcp
#   Authentication: API key   ← NOT OAuth
#   Header: Authorization · Value: Bearer <token>
GrokConnector · xAI

موصلات Grok — خادم MCP مخصص على grok.com، للويب والجوال.

hbcli mcp setup grok
# writes [mcp_servers.hotelbyte] into ~/.grok/config.toml
# web/mobile connectors instead: grok.com/connectors → Custom
#   (hbcli mcp setup generic prints a token for it)
CodexCLI

~/.codex/config.toml — بوابة stdio.

hbcli mcp setup codex
# appends [mcp_servers.hotelbyte] to ~/.codex/config.toml
AntigravityIDE · Google

بيئة التطوير الوكيلية من Google (الإصدار 2.0 في I/O 2026) — MCP أصلي وتحكم بالمتصفح ومدير وكلاء.

hbcli mcp setup generic   # token + fields, then paste into mcp_config.json
{ "mcpServers": { "hotelbyte":
  { "command": "hbcli", "args": ["mcp", "serve"] } } }
# note: no "type" field in Antigravity configs
Devin DesktopAgent · Cognition

وكيل Cognition المستقل لسطح المكتب — كان Windsurf سابقًا (يونيو 2026).

hbcli mcp setup generic   # token + URL
# Devin → Settings → MCP Marketplace → Add Your Own → paste
# (needs the Manage MCP Servers permission)
Claude Desktop · WebConnectors

الإعدادات ← الامتدادات / الموصلات ← إضافة موصل مخصص: الصق عنوان النقطة الطرفية، والمصادقة = Bearer. موصلات المنصات المدرجة في الدليل تستخدم مسار اكتشاف OAuth 2.1 أعلاه.

hbcli mcp setup claude-connectors
# prints your token, then:
#   Add custom connector → paste URL → auth: Bearer <token>
# order.book / order.cancel always require confirm=true
VS Code · CopilotIDE

ملف مساحة العمل .vscode/mcp.json (من نوع stdio).

hbcli mcp setup vscode
# writes .vscode/mcp.json in the current folder (servers key)
أي وكيل · ذاتي البناءJSON-RPC

لا حاجة إلى SDK:‏ MCP عبر streamable-http هو ثلاث نداءات JSON-RPC. يعمل من أي لغة أو إطار أو بيئة تشغيل — بما في ذلك الوكلاء الذين تبنيهم بنفسك. وتشير حزم SDK الرسمية (Python mcp و TypeScript @modelcontextprotocol/sdk) إلى العنوان نفسه.

POST https://api-test.hotelbyte.com/mcp
Authorization: Bearer <token> · Accept: application/json, text/event-stream

# 1) initialize — protocol version + client info
{"jsonrpc":"2.0","id":1,"method":"initialize","params":{
  "protocolVersion":"2025-06-18","capabilities":{},
  "clientInfo":{"name":"my-agent","version":"1.0"}}}

# 2) tools/list — discover the tools and their schemas
{"jsonrpc":"2.0","id":2,"method":"tools/list"}

# 3) tools/call — search hotels in Dubai for two adults
{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{
  "name":"hotel.list","arguments":{
    "destinationName":"Dubai","checkIn":"2026-11-20","checkOut":"2026-11-22",
    "rooms":[{"adultCount":2}]}}}

كل نتيجة تعيد { response, evidence } — احتفظ بـ traceId للمطابقة. يحتاج order.book إلى check_avail أولًا و‎confirm=true؛ وتعيد المحاولات استخدام customerReferenceNo.

مصدر الرمز: hbcli mcp token (مفتاح ثابت ينتهي بعد 30 يوم خمول) أو أي تذكرة توقعها المنصة. لا تُلصق اعتمادات الموردين هنا — الرمز هو هويتك لدى HotelByte.

سطح الأدوات

الأدوات تغطي المعاملة كاملة. أدوات الكتابة توجد فقط حين يفعّلها النشر — ولا تُنفَّذ أبدًا دون تأكيد صريح.

hotel.listقراءةابحث عن الفنادق؛ يعيد sessionId المستخدم عبر التدفق كاملًا
hotel.ratesقراءةأنواع الغرف والأسعار الحية، مع قابلية الاسترداد ورسوم الإلغاء
hotel.check_availقراءةالمرحلة الأولى من اثنتين: أعد التحقق من المخزون والسعر قبل الحجز
order.queryقراءةحالة الطلب والاستعلام عن أرقام التأكيد
order.bookكتابة · تأكيديتطلب confirm=true؛ وcustomerReferenceNo هو مفتاح idempotency
order.cancelكتابة · تأكيديتطلب confirm=true؛ قد يُرسَم الإلغاء وهو غير قابل للتراجع

عروض أسعار تحمل أدلتها

كل نتيجة أداة تعيد { response, evidence }. تعكس response واجهة HTTP نفسها؛ ومغلّف الأدلة يجعل كل عرض سعر قابلًا للاقتباس والتتبع — سلّم traceId للدعم فيمكنهم إعادة بناء ذلك العرض تحديدًا.

{
  "response": { "list": [ … ] },
  "evidence": {
    "tool": "hotel.list",
    "traceId": "20261003…",
    "sessionId": "S-2026…",
    "currency": "USD"
  }
}

حجز بحدّ تأكيد صارم

  1. hotel.rates — اعرض السعر وقابلية الاسترداد ورسوم الإلغاء على المستخدم.
  2. hotel.check_avail — أعد التحقق من السعر الدقيق؛ الأسعار الحية تتحرك.
  3. order.book مع confirm=true — فقط بعد موافقة المستخدم. أي شيء أقل يُرفض من الخادم قبل بدء تدفق الطلب.
  4. تعيد المحاولات استخدام customerReferenceNo — idempotent بالمفتاح، والتكرارات تظهر تحذيرًا لينًا يجب تأكيده.

جرّب البيئة التجريبية الآن

UAT · no SLA

نقطة البيئة التجريبية متاحة للوصول العام. يمكن لأي عميل MCP التهيئة ضدها بتذكرة صالحة:

curl -X POST https://api-test.hotelbyte.com/mcp \
  -H "Authorization: Bearer <ticket>" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

منظور المشتريات

ماذا تفحص عند تقييم واجهة توزيع بالذكاء الاصطناعي

محايد تجاه الموردين. ثلاثة أسئلة تفصل طبقة التجميع عن MCP آخر بمخزون واحد — وكيف تثبت كل نقطة في الحال.

What to check

هل هو مجرد MCP مورد آخر «بمخزونه الخاص فقط»؟

What we do

لا. نحن طبقة التجميع: جميع موصّلات الموردين خلف سطح أدوات واحد، وMCP الجديد لأي مورد مستقبلي ليس سوى مسار صاعد إضافي لنا.

How to verify

شغّل hotel.list على destinationName واحد وراقب هل تغطي النتائج عروضًا وأدنى سعر حقيقي من عدة موردين.

What to check

هل قد يطلق الوكيل حجزًا حقيقيًا بالخطأ؟

What we do

لا. يجب أن يحمل order.book ‎confirm=true (بعد موافقة المستخدم على السعر والتواريخ وسياسة الإلغاء بدقة)؛ النداءات بدونه تُرفض من الخادم ولا يبدأ تدفق الطلب أصلًا.

How to verify

نادِ order.book دون معامل confirm ولاحظ الرفض الصريح وعدم نشوء أي طلب.

What to check

إلى أي مدى شفافية الأسعار؟

What we do

كل عرض سعر يحمل مغلّف أدلة (traceId / sessionId / العملة / الوقت)، قابل للاقتباس والتتبع؛ والفتح المتدرّج لتكوين التكلفة والهامش يحكمه تكوين القواعد لا الصندوق الأسود.

How to verify

خذ traceId من النتيجة واطلب من الطرف الآخر مطابقته وإعادة بناء السلسلة الكاملة لذلك العرض.