MCP integratsiyasi
Umumiy ma'lumot
Bronjoy MCP (Model Context Protocol) tilida gaplashadi, shuning uchun AI yordamchisi — Claude, ChatGPT yoki MCP'ni qo'llab-quvvatlaydigan boshqa har qanday dastur — muassasani topishi, u haqida savollarga javob berishi va qabulga yozishi mumkin.
Ikki xil auditoriya uchun ikkita server bor:
| Marketplace serveri | Tashkilot serveri | |
|---|---|---|
| Kim uchun | Hamma uchun. Foydalanuvchilar, dasturchilar, AI yordamchilar | Bitta tashkilotning o'z yordamchisi uchun |
| Qamrovi | Butun ommaviy katalog | Bitta tashkilot |
| Avtorizatsiya | Kerak emas | Bearer token |
| Manzil | https://api.bronjoy.com/api/mcp | https://api.bronjoy.com/api/mcp/organization/{id} |
| Narxi | Bepul | Pullik tarif imkoniyati |
Agar siz yordamchingiz orqali sartaroshga yozilmoqchi bo'lgan odam bo'lsangiz — sizga marketplace serveri kerak. Agar siz biznes bo'lsangiz va o'z yordamchingiz kalendaringizni yuritishini xohlasangiz — sizga tashkilot serveri kerak.
Marketplace serveri
Ommaviy katalog MCP server ko'rinishida. Akkauntsiz, tokensiz, ro'yxatdan o'tishsiz — u Bronjoy sayti allaqachon har qanday brauzerga ko'rsatadigan narsani, ustiga tasdiqlash orqali yozilish yo'lini beradi.
Ulanish
claude mcp add --transport http bronjoy https://api.bronjoy.com/api/mcp
{
"mcpServers": {
"bronjoy": {
"url": "https://api.bronjoy.com/api/mcp"
}
}
}
Transport: Streamable HTTP
Manzil: https://api.bronjoy.com/api/mcp
Avtorizatsiya: kerak emas
Sozlash shu bilan tugadi. Yordamchingizdan «Toshkentdan sartaroshxona top» deb so'rang — u quyidagi vositalardan foydalanadi.
Vositalar
Oltita vosita — yozilish suhbati ularni qanday tartibda ishlatsa, shu tartibda.
search-venues
Katalogdan kalit so'z, shahar va toifa bo'yicha qidirish. Qolgan barcha vositalar shu qaytaradigan slugni oladi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
query | string | Yo'q | Erkin matn — nomi, xizmat (стрижка, soch olish) yoki mo'ljal. Lotin va kirill yozuvida ham ishlaydi |
city | string | Yo'q | Shahar slug'i yoki nomi — tashkent, samarkand, Бухара |
category | string | Yo'q | Toifa slug'i — barber, dental, car-wash |
bookable_only | boolean | Yo'q | Faqat onlayn yozilish mumkin bo'lgan muassasalarni qaytarish. Foydalanuvchi joylar haqida eshitishni emas, yozilishni xohlaganda qo'ying |
limit | integer | Yo'q | 1–20, standart 5 |
{
"venues": [
{
"name": "Britva Barbershop",
"slug": "demo-barber",
"url": "https://bronjoy.com/tashkent/barber/demo-barber",
"city": "Tashkent",
"district": "Юнусабадский район",
"address": "проспект Амира Темура, 15",
"specialty": "Men's haircuts and beard care",
"rating": 4.9,
"reviews": 7,
"is_bookable": true,
"next_available": "Tomorrow 09:00",
"price_from": 50000,
"has_phone": true
}
],
"returned": 1,
"total_matches": 1
}
get-venue
Bitta muassasaning to'liq ommaviy profili: manzil, ish vaqti, xizmatlar, qulayliklar, to'lov usullari, sayt, reyting. Telefon raqami bu yerda niqoblangan holda qaytadi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
slug | string | Ha | search-venuesdan |
{
"name": "Britva Barbershop",
"city": "Ташкент",
"address": "проспект Амира Темура, 15",
"is_bookable": true,
"website": "https://britva.uz",
"masked_phone": "+998 71 ***-**-70",
"opening_hours": {
"monday": { "open": "09:00", "close": "19:00" },
"saturday": { "open": "08:00", "close": "18:00" },
"sunday": { "open": null, "close": null }
},
"service_tags": ["Haircuts", "Beard shaping", "Royal shave", "Styling"],
"price_from": 50000,
"price_to": 110000,
"rating": "4.90",
"reviews": 7,
"booking": "Online booking is available — continue with check-availability."
}
reveal-phone
Muassasaning haqiqiy telefon raqami. Ataylab get-venuedan ajratilgan va daqiqasiga 10 marta bilan cheklangan — uni foydalanuvchi haqiqatan tanlagan muassasa uchun so'rang, qidiruv natijalari bo'ylab to'p-to'p emas.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
slug | string | Ha | search-venuesdan |
{
"name": "Britva Barbershop",
"phone": "+998 71 200-70-70",
"url": "https://bronjoy.com/tashkent/barber/demo-barber"
}
check-availability
Yozilish mumkin bo'lgan xizmatlar va bo'sh vaqtlar. Avval service_idsiz chaqiring — xizmatlar va narxlar ro'yxatini olasiz, keyin biror service_id bilan qayta chaqiring — o'sha xizmatning bo'sh vaqtlarini olasiz.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
slug | string | Ha | search-venuesdan |
date | string | Ha | YYYY-MM-DD, bugun yoki 30 kungacha oldinga |
service_id | integer | Yo'q | Birinchi chaqiruvda xizmatlar ro'yxatini olish uchun tashlab keting |
{
"date": "2026-09-10",
"service": {
"service_id": 1,
"name": "Мужская стрижка",
"duration_minutes": 30,
"price": "80000.00",
"currency": "UZS"
},
"slots": [
{
"start_time": "2026-09-10T09:00:00+05:00",
"end_time": "2026-09-10T09:30:00+05:00",
"staff_id": 1,
"staff_name": "Азиз Рахимов"
}
]
}
start_time — bu aynan book-appointment kutadigan qiymat. Uni yaxlitlamang va o'zgartirmang.
request-booking-code
Foydalanuvchining o'z pochtasiga yoki telefoniga 6 xonali kod yuboradi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
slug | string | Ha | Yozilayotgan muassasa |
email | string | Ikkisidan biri | Foydalanuvchi pochtasi |
phone | string | Ikkisidan biri | Foydalanuvchi telefoni, +998901234567 |
Kod 5 daqiqa amal qiladi va bitta yozuvga yetadi. Yuborishlar ham jo'natuvchi, ham qabul qiluvchi bo'yicha cheklangan — takror-takror chaqirmang.
book-appointment
Yozuvni yaratadi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
slug | string | Ha | Muassasa |
service_id | integer | Ha | check-availabilitydan |
start_time | string | Ha | Bo'sh vaqtdagi aniq start_time |
name | string | Ha | Foydalanuvchi ismi — biznes uni shu ko'rinishda ko'radi |
verification_code | string | Ha | Foydalanuvchi aytgan 6 xona |
email / phone | string | Ikkisidan biri | Kod yuborilgan kontaktning o'zi |
notes | string | Yo'q | 500 belgigacha |
Yozuv pending holatida yaratiladi — biznes uni hali tasdiqlashi kerak. Foydalanuvchiga so'rov yuborilgani haqida ayting, kafolatlangani haqida emas. Agar muassasa oldindan to'lov olsa, javobda foydalanuvchi ochishi kerak bo'lgan payment_url keladi.
Yozilish jarayoni
1. search-venues → bookable_only: true
2. check-availability → xizmatni, keyin vaqtni tanlang
3. request-booking-code → kod sizga emas, foydalanuvchiga boradi
4. foydalanuvchidan kodni so'rang
5. book-appointment → o'sha kod bilan
Ikki xil muassasa
Har bir natijada is_bookable maydoni bor va u keyin nima taklif qilishingizni belgilaydi:
is_bookable: true— onlayn yozilishga sozlangan. Yuqoridagi jarayon ishlaydi.is_bookable: false— ma'lumotnoma kartochkasi. Haqiqiy manzil, haqiqiy ish vaqti, ko'pincha xizmatlar ro'yxati va telefon bor, lekin onlayn yozilish yo'q. Shu ma'lumotlar asosida javob bering va telefon raqamini taklif qiling.
bookable_only: true uzating va qayerga qo'ng'iroq qilish kerakligini ochiq ayting.Ma'lumotni qanday o'qish kerak
- Nomlar, xizmatlar va manzillar rus yoki o'zbek tilida. Foydalanuvchi taksi haydovchisiga ko'rsatadigan manzilni tarjima qilmang.
- Narxlar o'zbek so'mida (UZS). Ko'p kartochkalarda narx umuman yo'q.
от 300000 сум— «300 000 so'mdan» degani. - Vaqt muassasaning mahalliy vaqt mintaqasida, qiymatida siljishi bilan birga keladi.
- Qidiruv natijalaridagi reytinglar manba ma'lumotnomasidan olingan, Bronjoy sharhlaridan emas.
Cheklovlar
| Qamrov | Cheklov |
|---|---|
| Barcha so'rovlar | Bir mijozga daqiqasiga 30 ta |
reveal-phone | Bir mijozga daqiqasiga 10 ta |
request-booking-code | Bir mijozga soatiga 10 ta, ustiga qabul qiluvchi bo'yicha cheklov |
Cheklov oshib ketsa, necha soniya kutish kerakligi ko'rsatilgan xato qaytadi.
Tashkilot serveri
Egasi o'z yordamchisini ulaydigan, alohida tashkilot uchun yopiq server. U shu tashkilotning kalendarini yuritadi: xizmatlar, bo'sh vaqtlar, yozuvlar va bekor qilishlar. Bu pullik tarif imkoniyati va token talab qiladi.
1. Token yarating
Provayder paneli orqali yoki API orqali:
POST /api/org/ai/tokens
Authorization: Bearer your-staff-token
Content-Type: application/json
{
"name": "Claude Desktop",
"expires_in_days": 90
}
Javob:
{
"token": "3|AbCdEf...",
"mcp_endpoint": "https://api.bronjoy.com/api/mcp/organization/1",
"expires_at": "2026-06-23T12:00:00Z",
"instructions": "Use this token in the Authorization header: Bearer <token>"
}
Tokenni darhol saqlang — u faqat bir marta ko'rsatiladi.
2. AI mijozini ulang
claude mcp add --transport http bronjoy-org \
https://api.bronjoy.com/api/mcp/organization/1 \
--header "Authorization: Bearer 3|AbCdEf..."
{
"mcpServers": {
"bronjoy": {
"url": "https://api.bronjoy.com/api/mcp/organization/1",
"headers": {
"Authorization": "Bearer 3|AbCdEf..."
}
}
}
}
Transport: Streamable HTTP
Manzil: https://api.bronjoy.com/api/mcp/organization/{id}
Avtorizatsiya: Authorization: Bearer {token}
Vositalar
list-services
Yozilish mumkin bo'lgan barcha xizmatlarni narxi va davomiyligi bilan ro'yxatlaydi. Xizmat ID'larini bilish uchun shundan boshlang.
Parametrlar: yo'q
{
"services": [
{
"id": 1,
"name": "Haircut",
"description": "Classic haircut with styling",
"duration_minutes": 30,
"price": "25.00",
"currency": "USD",
"category": "Hair Services"
}
],
"total": 1
}
search-availability
Muayyan xizmat va sana uchun bo'sh vaqtlarni topadi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
service_id | integer | Ha | Xizmat ID (list-servicesdan) |
date | string | Ha | YYYY-MM-DD, bugun yoki 30 kungacha oldinga |
staff_id | integer | Yo'q | Muayyan xodim |
{
"date": "2026-03-26",
"service": "Haircut",
"timezone": "Asia/Tashkent",
"available_times": ["09:00", "10:00", "14:30", "15:00"],
"total_found": 10,
"showing": 4,
"note": "Times are in H:i format (24-hour) in the organization timezone."
}
create-appointment
Mijoz uchun yozuv yaratadi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
client_name | string | Ha | Mijozning to'liq ismi (2–100 belgi) |
client_phone | string | Ha | Xalqaro formatdagi telefon (+998901234567) |
service_id | integer | Ha | Xizmat ID |
date | string | Ha | YYYY-MM-DD |
time | string | Ha | HH:MM, 24 soatlik format |
staff_id | integer | Yo'q | Muayyan xodim (ko'rsatilmasa avtomatik tayinlanadi) |
branch_id | integer | Yo'q | Filial |
notes | string | Yo'q | 500 belgigacha |
{
"success": true,
"appointment_id": 123,
"message": "Appointment booked for John Doe on 2026-03-26 at 14:30."
}
check-appointment
Telefon raqami bo'yicha mavjud yozuvlarni qidiradi.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
client_phone | string | Ha | Xalqaro formatdagi telefon |
appointment_id | integer | Yo'q | Muayyan yozuv (ko'rsatilmasa — barcha kelgusi yozuvlar) |
Bitta yozuvni yoki shu raqam uchun 5 tagacha kelgusi yozuvni qaytaradi.
cancel-appointment
Mavjud yozuvni bekor qiladi. Mijoz telefoni yozuvdagi bilan mos kelishi shart.
| Parametr | Turi | Majburiy | Tavsif |
|---|---|---|---|
appointment_id | integer | Ha | Yozuv ID |
client_phone | string | Ha | Yozuvdagi bilan mos kelishi kerak |
reason | string | Yo'q | 500 belgigacha |
Resurslar
organization://profile
Tashkilot profili — xizmatlar, xodimlar, filiallar, vaqt mintaqasi va valyuta. AI mijozga vositalarni alohida chaqirmasdan kontekstni tushunish imkonini beradi.
Promptlar
booking-assistant
Yozilish suhbatini boshlaydigan tizim prompti, tavsiya etilgan jarayon bo'yicha ko'rsatmalar bilan.
Tavsiya etilgan jarayon
1. list-services → Nima borligini ko'rsatish
2. search-availability → Tanlangan xizmat uchun bo'sh vaqtlarni topish
3. Foydalanuvchi bilan tasdiqlash → Vaqtni odam tanlasin
4. create-appointment → Yozish
Bekor qilish uchun:
1. check-appointment → Telefon bo'yicha yozuvni topish
2. Foydalanuvchi bilan tasdiqlash → Qaysi birini bekor qilish kerak?
3. cancel-appointment → Bekor qilish
Cheklovlar
| Qamrov | Cheklov |
|---|---|
| Bir tokenga | Daqiqasiga 60 so'rov |
| Bir tashkilotga | Daqiqasiga 120 so'rov |
Cheklov oshib ketsa 429 Too Many Requests qaytadi.
Xavfsizlik
- Har bir token bitta tashkilotga bog'langan — u boshqa tashkilot ma'lumotlariga yeta olmaydi
- Tokenlar belgilangan kundan keyin muddati tugaydi (standart 90, maksimum 365)
- Server faqat yozuvlar bilan ishlaydi — ichki boshqaruv endpointlari, moliyaviy ma'lumotlar va xodim sozlamalarisiz
- Telefon raqami tekshirish va bekor qilishda mijozni tasdiqlaydi
- Barcha amallar audit uchun jurnalga yoziladi
Muammolarni hal qilish
| Muammo | Yechim |
|---|---|
401 Unauthorized | Token muddati tugagan yoki yaroqsiz — yangisini yarating |
403 Forbidden | Tokenda bu tashkilotga ruxsat yo'q |
429 Too Many Requests | Cheklov oshib ketdi — kutib, qayta urinib ko'ring |
Feature not available | Bu tashkilot uchun MCP kirish yoqilmagan |
| Bo'sh vaqtlar qaytmayapti | Xodim jadvallari kiritilmagan yoki xizmatga xodim biriktirilmagan |