דילוג לתוכן

MCP

אותו API, מופנה לעוזר ולא לתרחיש. לקוח MCP בוחר מה לקרוא בזמן ריצה, לפי תיאורי הכלים — ולכן הוא מגיע בדיוק לאן שמגיעים האישורים שמאחוריו, ומתחת לכל כלי יש קריאה ל-API הציבורי.

נקודת קצה אחת

הכול הולך אל POST /v1/mcp. אין הפעלה לפתוח ואין זרם להחזיק: GET ו-DELETE משיבים 405, וכל הודעה היא בקשה בפני עצמה.

POST https://api.mosaqo.app/v1/mcp
Authorization: Bearer $MOSAQO_KEY
MCP-Protocol-Version: 2026-07-28

כל מהדורות הפרוטוקול מ-2025-03-26 ועד 2026-07-28 נענות. לקוח שפותח ב-initialize מקבל את לחיצת היד שהוא מצפה לה; מי שמציין את גרסתו בכל בקשה נענה כך.

חיבור באמצעות מפתח API

הדרך המהירה ביותר, והנכונה לכלי שאתם מריצים בעצמכם. כל מפתח עובד כאסימון bearer, והכלים המוצעים נחתכים להרשאות של אותו מפתח.

רוב הלקוחות מקבלים בלוק כזה:

{
  "mcpServers": {
    "mosaqo": {
      "type": "http",
      "url": "https://api.mosaqo.app/v1/mcp",
      "headers": { "Authorization": "Bearer $MOSAQO_KEY" }
    }
  }
}
curl -X POST https://api.mosaqo.app/v1/mcp \
  -H "Authorization: Bearer $MOSAQO_KEY" \
  -H "Content-Type: application/json" \
  -H "MCP-Protocol-Version: 2026-07-28" \
  -H "Mcp-Method: tools/list" \
  -d '{ "jsonrpc": "2.0", "id": 1, "method": "tools/list" }'

חיבור דרך OAuth

עבור מחבר בספרייה של מישהו אחר, שבה האדם לא נוגע במפתח כלל. הגילוי לפי RFC 9728 ו-RFC 8414, לקוחות נרשמים בעצמם לפי RFC 7591, וכל הרשאה משתמשת ב-PKCE עם S256.

curl https://api.mosaqo.app/.well-known/oauth-protected-resource
curl https://api.mosaqo.app/.well-known/oauth-authorization-server

קריאה לא מורשית אומרת בעצמה לאן ללכת ומה לבקש:

HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="Mosaqo MCP",
  resource_metadata="https://api.mosaqo.app/.well-known/oauth-protected-resource",
  scope="qr:read analytics:read reviews:read exports:read"

מי שמאשר מחובר ל-Mosaqo, בוחר לאיזה מרחב עבודה זה חל, ויכול לעשות זאת רק היכן שהוא בעלים או מנהל — אותו גבול שקובע מי רשאי להנפיק מפתח API. אפשר לנתק אחר כך תחת Bulk & API.

מה עוזר יכול לעשות

ההרשאות שאתם כבר מכירים, ללא שינוי. כלי שהאישורים אינם מתירים אינו מופיע ב-tools/list ואי אפשר לקרוא לו גם בשמו — התשובה החיה לכל חיבור היא tools/list עצמו.

הרשאהמאפשרת
qr:readהצגה וקריאה של קודי QR, תיקיות ותבניות
qr:writeיצירה, עדכון, הפניה מחדש, פרסום, העברה לארכיון ומחיקה
exports:readהורדה של כרטיסים מוכנים
analytics:readאנליטיקה מצרפית וסריקות בודדות
bulk:writeיצירה וקריאה של משימות אצווה
webhooks:writeניהול מנויי webhook
reviews:readמקומות, סקרים ואיך הם מתקדמים — אף פעם לא התשובות עצמן

לאן הוא לעולם לא יגיע

למה שאנשים כתבו בסקר. reviews:read פותח את המקומות שלכם, הסקרים ואיך הם מתקדמים: הספירות, הציונים, ההתפלגות לכל שאלה. המשפטים שמבקר הקליד אינם מוחזרים כאן יותר מאשר בכל מקום אחר שאליו מגיעים אישורים — מאותה סיבה שאירועי feedback.* נושאים ציון ולעולם לא את המילים.

מחיקת קוד. נתיב ה-REST מבקש אישור מוקלד משום שהריסת ההפניה שמאחורי קוד מודפס אינה הפיכה, וזה אינו אישור שעוזר נותן בשם מישהו. במקומו מוצעת ארכוב, והוא הפיך.

כתיבה מסומנת ככתיבה. כלי שמשנה משהו נושא readOnlyHint: false, וארכוב נושא destructiveHint: true — וזה מה שגורם ללקוח לעצור ולשאול אדם לפני שהוא פועל.