REST API v1 · למפתחים
שרת MCP: נהלו את שרת הדיסקורד מתוך עוזרי AI
BotGG מפעיל שרת Model Context Protocol מרוחק. חברו אליו עוזר AI והוא יוכל להשתמש באותן נקודות קצה כמו ה-REST API — עם אותן הרשאות, מגבלות ובדיקות — עבור השרת האחד שאישרתם.
תיעוד למפתחים
בעמוד הזה
חיבור לקוח
כתובת השרת היא https://console.botgg.app/mcp (MCP על גבי Streamable HTTP). לקוחות מתחברים באחת משתי דרכים:
- התחברות עם דיסקורד (OAuth) — מומלץ. הלקוח צריך רק את הכתובת. הוא פותח את BotGG בדפדפן, אתם מתחברים עם דיסקורד, בוחרים שרת אחד והרשאות ומאשרים. אין מה להעתיק, ואפשר לנתק את האפליקציה בכל רגע.
- מפתח API. ללקוחות בלי תמיכה ב-OAuth: צרו מפתח בקונסולה (ראו אימות) ושלחו אותו כ-
Authorization: Bearer botgg_….
Claude (claude.ai ו-Claude Desktop)
- פתחו Settings → Connectors ובחרו Add custom connector.
- קראו לו
BotGG, הדביקו את הכתובתhttps://console.botgg.app/mcpולחצו Add. - לחצו Connect: BotGG ייפתח, התחברו עם דיסקורד ואשרו (ראו מסך האישור).
ChatGPT
- פתחו Settings → Apps & Connectors. מחברים מותאמים דורשים Developer mode (תחת Advanced settings) בתוכנית שלכם.
- בחרו Create, קראו למחבר
BotGG, הדביקו אתhttps://console.botgg.app/mcpככתובת שרת ה-MCP ובחרו אימות OAuth. - צרו את המחבר והתחברו כש-ChatGPT יפתח את BotGG.
Cursor
הוסיפו את השרת ל-~/.cursor/mcp.json (או ל-.cursor/mcp.json של הפרויקט). Cursor יציג לידו Needs login — לחצו כדי להתחבר עם דיסקורד בדפדפן.
{
"mcpServers": {
"botgg": { "url": "https://console.botgg.app/mcp" }
}
}Claude Code
claude mcp add --transport http botgg https://console.botgg.app/mcp
# then run /mcp inside Claude Code and choose "Authenticate"כל לקוח עם מפתח API
{
"mcpServers": {
"botgg": {
"type": "http",
"url": "https://console.botgg.app/mcp",
"headers": { "Authorization": "Bearer botgg_…" }
}
}
}מסך האישור
כשלקוח מתחבר, BotGG מציג מי מבקש גישה ולאן תחזרו אחרי התשובה. אפליקציות רושמות את עצמן, ולכן השם שלהן לא מאומת — אשרו רק חיבור שאתם התחלתם.
- התחברו עם דיסקורד (אם עוד לא התחברתם לקונסולה).
- בחרו שרת אחד. מוצגים שרתים שבהם יש לכם הרשאת ניהול שרת, ו-BotGG צריך להיות בשרת שתבחרו. חיבור תמיד שייך לשרת אחד בדיוק.
- בחרו הרשאות. אלה אותן הרשאות כמו של מפתחות API. הרשאות רגישות (פעולות על חברים, נתוני ניהול) לא מסומנות כברירת מחדל, ובחירה בהן דורשת אישור נוסף.
- אשרו או דחו. האפליקציה מקבלת טוקן גישה קצר-מועד (שעה) וטוקן רענון שמתחלף בכל שימוש.
כל חיבור מופיע בקונסולה תחת שרת → אפליקציות מחוברות, עם ההרשאות, מי חיבר ומתי נעשה שימוש אחרון. כל מנהל של השרת יכול לנתק אותו שם, והגישה נעלמת מיד. אם מי שחיבר את האפליקציה מאבד את הרשאת ניהול השרת, הגישה מסתיימת אוטומטית בקריאה הבאה.
כלים
לכל נקודת קצה של ה-REST API יש כלי אחד — למשל bank.getBalance הופך לכלי bank_get_balance. הקלט הוא שדות הנתיב, השאילתה והגוף של נקודת הקצה; מזהה השרת לא נשלח, הוא נלקח מהחיבור. רשימת הכלים תמיד תואמת למדריך העיון של ה-API, ולקוח רואה רק כלים שיש לחיבור שלו את ההרשאה שלהם.
- כלים לקריאה בלבד מסומנים ככאלה; כלים שמשנים או מוחקים נתונים מסומנים כהרסניים, והעוזר מונחה לאשר איתכם קודם את הפעולה המדויקת.
- כל קריאה עוברת את אותו מסלול כמו ה-REST API: בדיקות הרשאה ופיצ׳ר, אימות נתונים, קודי שגיאה ומגבלת הקצב של התוכנית לחיבור (למפתח API יש תקציב אחד משותף ל-REST ול-MCP).
- שגיאות חוזרות כתוצאת כלי עם אותם קודי
errorכמו ב-REST API, כך שהעוזר יכול להסביר או לתקן אותן. - שינויים דרך MCP נרשמים ביומן הביקורת של השרת עם שם האפליקציה.
| הרשאה | מה היא מאפשרת |
|---|---|
guild:read | קריאת פרטי השרת — שם השרת, סמל, מספר חברים, שפה ותכונות מופעלות; תפקידים, ערוצים ופרטי חבר בסיסיים (תפקידים, כינוי, תאריך הצטרפות). |
bank:read | קריאת הבנק — יתרות, היסטוריית התנועות של חבר והטבלה המובילה. |
bank:write | שינוי יתרות — הוספה והורדה של מטבע לחברים. כל שינוי נרשם ביומן הבנק. |
levels:read | קריאת הרמות — הרמה, ה-XP והדירוג של חבר, וטבלת המובילים לפי XP. |
levels:write | שינוי XP — הוספה, הורדה וקביעה של XP לחברים. תפקידי פרס והכרזות עליית רמה פועלים כמו בפקודות /levels; כל שינוי נרשם ביומן הפעולות. |
invites:read | קריאת הזמנות — מוני ההזמנות והדירוג של חבר, וטבלת המובילים בהזמנות. |
invites:write | שינוי הזמנות בונוס — הוספה והורדה של הזמנות בונוס, כמו /invites add. פרסי אבני דרך מוענקים בהתאם; כל שינוי נרשם ביומן הפעולות. |
shop:read | קריאת החנות — חנויות, פריטים, המלאי של חברים והיסטוריית הרכישות. |
shop:write רגישה | ניהול החנות — קנייה של פריטים עבור חברים (מחויב מיתרת הבנק שלהם, תפקידים מוענקים), הענקת פריטים בחינם, החזר רכישות, חידוש מלאי והפעלה או כיבוי של פריטים. |
giveaways:read | קריאת הגרלות — הגרלות פעילות ושהסתיימו, עם מספר המשתתפים, הזוכים ורשימת המשתתפים. |
giveaways:write | ניהול הגרלות — פתיחת הגרלות, סיום מוקדם שלהן והגרלת זוכים מחדש. הבוט מפרסם ומעדכן אותן ב-Discord. |
flows:read | קריאת תהליכים — רשימת התהליכים (שם, פעיל/כבוי, טריגר) והסטטוס והתוצאה של הרצות. |
flows:run רגישה | הרצת תהליכים — הרצת תהליכים פעילים שמתחילים בטריגר ידני או Webhook, עם קלט משלך. התהליך מבצע את כל השלבים שלו; ההרצות נספרות במגבלה היומית של התוכנית. |
tickets:read | קריאת כרטיסים — רשימת הכרטיסים ופרטיהם (פותח, פאנל, סטטוס, תשובות הטופס) ותמלילים שמורים של כרטיסים סגורים. |
tickets:write | סגירת כרטיסים — סגירת כרטיסים פתוחים עם סיבה — הבוט שומר תמליל, רושם ביומן ומודיע לפותח כמו בסגירה על ידי הצוות. |
applications:read | קריאת מועמדויות — טפסי מועמדות והגשות, כולל תשובות המועמדים, הצבעות והחלטות. |
applications:write | החלטה על מועמדויות — אישור או דחייה של מועמדויות פתוחות. הבוט נותן / מסיר את תפקידי הטופס, שולח הודעה למועמד ומעדכן את הדיון כמו בהחלטת צוות. |
appeals:read | קריאת ערעורים — ערעורי הרחקה עם התשובות, סיבת ההרחקה והשיחה (הערות פנימיות של הצוות לעולם לא נכללות). |
appeals:write רגישה | החלטה על ערעורים — אישור (ביטול הרחקה) או דחייה של ערעורים פתוחים עם סיבה; הבוט מבטל את ההרחקה ושולח הודעה כמו בהחלטת צוות. אישור ערעור מבטל את ההרחקה של החבר. |
moderation:read רגישה | קריאת תיקי ניהול — תיקי ניהול (אזהרות, השתקות, הרחקות, חסימות…) עם סיבות, קישורי ראיות ומנהלים, וסטטוס פעולות API. חושף את היסטוריית הניהול של החברים. |
moderation:write רגישה | ניהול חברים — אזהרה, השתקה, הרחקה, חסימה וביטול חסימה בשם יוצר המפתח: רק כל עוד יש לו את הרשאת Discord המתאימה, רק לחברים מתחת לתפקיד הגבוה שלו ושל הבוט, עם סיבה, עד 10 פעולות בדקה. כל מי שמחזיק במפתח הזה יכול להעניש חברים בשמך. שמרו אותו בסוד ובטלו אותו כשאינו בשימוש. |
מגבלות
| מה | מגבלה |
|---|---|
| קריאות לכלים לכל חיבור | מגבלת ה-API של התוכנית לדקה: Free 60, Pro 600 |
| בקשות MCP אחרות (רשימת כלים, לחיצות יד) | 300 לדקה לכל חיבור |
| טוקן גישה / טוקן רענון | שעה / 30 יום, מתחדש בכל רענון |
| גודל בקשה | 64KB להודעת MCP; 8KB לגוף של כלי, כמו ב-REST API |
בטיחות
- את האישור לפעולות הרסניות מבקשת אפליקציית ה-AI שלכם לפי סימוני הכלים — BotGG לא רואה את הצ׳אט. השאירו את האישורים פעילים בלקוח.
- כתיבה דרך MCP לא משתמשת ב-
Idempotency-Key, ולכן עוזר לא צריך לחזור בעיוורון על כתיבה שנכשלה — בדקו קודם את התוצאה. לכתיבה אוטומטית עם ניסיונות חוזרים השתמשו ב-REST API. - הטוקנים קשורים לכתובת הזו ולשרת דיסקורד אחד; BotGG שומר רק את ה-hash שלהם. שימוש חוזר בטוקן רענון מנתק את האפליקציה ליתר ביטחון — פשוט חברו אותה שוב.
פתרון בעיות
| תשובה | מה לעשות |
|---|---|
401 עם error="invalid_token" | הטוקן פג, בוטל או שהאפליקציה נותקה — התחברו שוב מהלקוח. |
403 עם error="insufficient_scope" | לחיבור חסרה ההרשאה שב-scope. חברו מחדש וסמנו אותה במסך האישור. |
403 “Origin not allowed” | לקוחות בדפדפן צריכים לפעול מ-origin מורשה; לקוחות שולחניים ושרתים לא שולחים Origin. |
תוצאת כלי BANK_DISABLED / FEATURE_DISABLED | הפעילו את הפיצ׳ר לשרת בקונסולה. |
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer resource_metadata="https://console.botgg.app/.well-known/oauth-protected-resource/mcp"HTTP/1.1 403 Forbidden
WWW-Authenticate: Bearer resource_metadata="…", error="insufficient_scope", scope="bank:write"