התחברות לשרתים של Model Context Protocol‏ (MCP)

שרתי MCP מספקים ל-Gemini כלים נוספים ומקורות נתונים. לדוגמה, אם מוסיפים את שרת ה-MCP של Firebase, אפשר להשתמש בשפה טבעית כדי לחקור את הנתונים של Cloud Firestore בזמן שיוצרים או מנפים באגים באפליקציה.

דרישות מוקדמות

אם נדרש על ידי שרת ה-MCP, מוודאים שיש לכם התקנה תקינה של Node.js ו-npm.

בחירת שרת MCP תואם

Firebase Studio כולל תמיכה בסיסית בשרתי MCP, אבל לא כל שרתי ה-MCP תואמים. כשבוחרים שרת MCP, חשוב לזכור את פרטי התאימות הבאים:

  • נתמך:

    • שרתים של קלט/פלט רגילים (stdio) או שרתים של אירועים שנשלחים מהשרת (SSE) או של העברת נתונים ב-HTTP
    • אימות באמצעות מפתחות API באמצעות כותרות HTTP או משתני סביבה
    • כלים שסופקו על ידי שרתי MCP
  • לא נתמך:

    • שרתים שנדרש עבורם ממשק משתמש גרפי או סשן במחשב
    • הנחיות, דגימות או משאבים אחרים שסופקו על ידי שרתי MCP

הוספת שרת MCP

כדי להוסיף שרת MCP, צריך ליצור או לערוך את קובץ ההגדרות שלו.

שלב 1: יוצרים את קובץ התצורה

צ'אט אינטראקטיבי מתחבר לשרתי MCP באמצעות קובץ תצורה:

  • בצ'אט אינטראקטיבי נעשה שימוש ב-.idx/mcp.json.

יוצרים את הקובץ לפי ההוראות הבאות.

צ'אט אינטראקטיבי

בתצוגה Code, יוצרים .idx/mcp.json באחת מהשיטות הבאות:

  • לוח הפקודות: פותחים את לוח הפקודות (Shift+Ctrl+P) ומשתמשים בפקודה Firebase Studio: Add MCP Server.
  • בצ'אט האינטראקטיבי: לוחצים על התאמה אישית של סמל כלי העריכה התאמה אישית של כלים בצ'אט האינטראקטיבי ובוחרים באפשרות הוספת שרת MCP.
  • סייר: בסייר (Ctrl+Shift+E), לוחצים לחיצה ימנית על הספרייה .idx ובוחרים באפשרות קובץ חדש. נותנים לקובץ את השם mcp.json.

שלב 2: עריכת הגדרות השרת

  1. פותחים את קובץ ההגדרות של השרת.

  2. מוסיפים את הגדרות השרת לתוכן של הקובץ. לדוגמה, כדי להוסיף את שרת ה-MCP של Firebase, מזינים:

    {
      "mcpServers": {
       "firebase": {
         "command": "npx",
         "args": [
           "-y",
           "firebase-tools@latest",
           "mcp"
          ]
        }
      }
    }
    

    קובץ התצורה הזה מורה ל-Gemini באיזה שרת MCP רוצים להשתמש. בדוגמה הזו מוצג שרת יחיד בשם firebase שישתמש בפקודה npx כדי להתקין ולהפעיל את firebase-tools@latest.

    אם שרת ה-MCP דורש אימות של מפתח API, אפשר להגדיר אותו באחת מהדרכים הבאות:

    • לשרתי HTTP MCP מרוחקים שדורשים מפתח API בכותרות של בקשות, משתמשים בשדה headers. לדוגמה, כדי להגדיר את שרת ה-MCP של GitHub:

      {
        "mcpServers": {
          "github": {
            "url": "https://api.githubcopilot.com/mcp/",
            "headers": {
              "Authorization": "Bearer <ACCESS_TOKEN>"
            }
          }
        }
      }
      
    • לשרתי MCP מקומיים של stdio שנדרש להם מפתח API במשתני סביבה, משתמשים בשדה env. לדוגמה, כדי להגדיר גרסה מקומית של שרת ה-MCP של GitHub:

      {
        "mcpServers": {
          "github": {
            "command": "/path/to/github-mcp-server",
            "args": ["stdio"],
            "env": {
              "GITHUB_PERSONAL_ACCESS_TOKEN": "<ACCESS_TOKEN>"
            }
          }
        }
      }
      
    • כדי להימנע מהוספת סודות בקידוד קשיח ב-mcp.json, אפשר להשתמש בתחביר ${env:VARIABLE_NAME}. הערכים יוחלפו במשתני סביבה שמוגדרים בקובץ .env או .env.local בספריית הבסיס של סביבת העבודה. לדוגמה:

      {
        "mcpServers": {
          "github": {
            "url": "https://api.githubcopilot.com/mcp/",
            "headers": {
              "Authorization": "Bearer ${env:GITHUB_ACCESS_TOKEN}"
            }
          }
        }
      }
      
  3. במסוף (Shift+Ctrl+C), מריצים את הפקודות הנדרשות כדי להשלים את ההתקנה. לדוגמה, כדי להשתמש בשרת ה-MCP של Firebase, מזינים את הפקודה הבאה כדי להיכנס לחשבון:

    firebase login --no-localhost
    

    פועלים לפי ההוראות במסוף כדי לאשר את ההפעלה. חלק מהכלים דורשים פרויקט Firebase מקושר. אפשר להשתמש בשרת Firebase MCP כדי ליצור פרויקט, או להריץ את הפקודה הבאה כדי לאתחל פרויקט Firebase:

    firebase init
    

    הפעולה הזו יוצרת קובץ firebase.json בתיקיית הבסיס.

שימוש בכלים של MCP

אחרי שמתקינים את שרת ה-MCP שרוצים להשתמש בו, הכלים או הנתונים שהוא מספק זמינים ב:

  • צ'אט אינטראקטיבי כשמשתמשים במצב Agent ובמצב Agent (Auto-run)
  • App Prototyping agent

לדוגמה, אם מוסיפים את שרת ה-MCP של Firebase, אפשר לבקש מ-Gemini לאחזר את הגדרות ה-SDK של הפרויקט הנוכחי, לאחזר נתונים שמאוחסנים ב-Cloud Firestore וב-Realtime Database, לעזור בהגדרת שירותי Firebase, ועוד.

בצ'אט אינטראקטיבי, מקלידים / כדי לראות רשימה של הנחיות MCP זמינות.

רשימת ההנחיות הזמינות בכלי ה-MCP

בדיקה או התאמה של הכלים

אתם יכולים לקבוע אילו כלים יהיו פעילים בצ'אט האינטראקטיבי:

  1. לוחצים על התאמה אישית של סמל כלי העריכה התאמה אישית של כלים בצ'אט האינטראקטיבי כדי לראות רשימה של כל הכלים הזמינים משרתי ה-MCP שהוגדרו.
  2. משתמשים בתיבות הסימון כדי להפעיל או להשבית שרת שלם או כלים בודדים.

רשימת כלי ה-MCP הזמינים

פתרון בעיות בשרתי MCP

אם נתקלתם בבעיות בשרת MCP, תוכלו לבצע את השלבים הבאים כדי לאבחן את הבעיה.

בדיקת היומנים לאיתור שגיאות

  1. פותחים את חלונית הפלט (Shift+Ctrl+U).
  2. בתפריט הנפתח, בוחרים באפשרות Gemini.
  3. מחפשים הודעות שמתחילות בתג [MCPManager]. ביומנים האלה מופיעים השרתים שהוגדרו, הכלים שנוספו בהצלחה והודעות שגיאה.

בנייה מחדש של הסביבה

אם שרת MCP לא מצליח להתקין או להתחבר, נסו לבנות מחדש את סביבת העבודה:

  1. פותחים את לוח הפקודות (Shift+Ctrl+P).
  2. מריצים את הפקודה Firebase Studio: Rebuild Environment (Firebase Studio: בנייה מחדש של הסביבה).
  3. אחרי שסביבת העבודה נבנית מחדש, בודקים אם שרת ה-MCP מתחבר.

אם לא נעשה שימוש בכלים

אם שרת ה-MCP מתחבר אבל Gemini לא משתמש בכלים שלו:

  • מתחילים סשן צ'אט חדש: כך מבטיחים ש-Gemini יקבל את ההגדרה העדכנית של הכלי. איך מנהלים את היסטוריית הצ'אט
  • הקפידו על ספציפיות בהנחיה: אם Gemini יכול לבצע את המשימה בלי להשתמש בכלי MCP, הוא עשוי לנסות שיטה אחרת. אם אתם רוצים להשתמש בכלי ספציפי, נסו לציין את שם הכלי. לדוגמה: "תשתמש ב-firebase_get_sdk_config כדי לקבל את הגדרת ה-SDK של הפרויקט הנוכחי".
  • הצטרפות ל-Google Developer Program: בדיקה אם החשבון רשום.

השלבים הבאים