שימוש ב-AlloyDB Omni עם MCP, ‏Gemini CLI וסוכנים אחרים

בחירת גרסת תיעוד:

במאמר הזה מוסבר איך לחבר את מופע AlloyDB Omni לסוכנים שונים שתומכים ב-Model Context Protocol‏ (MCP).

‫AlloyDB Omni תואם ל-PostgreSQL, ולכן אפשר להשתמש בכלים ובתוספים שמיועדים ל-PostgreSQL.

כדי להגדיר את ההגדרה הפשוטה ביותר, משתמשים בתוסף הייעודי של PostgreSQL ל-Gemini CLI. התוסף משלב את שרת ה-MCP הבסיסי ישירות בתוסף, כך שלא צריך לבצע הגדרת שרת נפרדת. אתם יכולים להגדיר את Gemini Code Assist כך שישתמש ב-Gemini CLI, וליהנות מיתרונות דומים בהגדרה בסביבת הפיתוח המשולבת (IDE).

לחלופין, אפשר לחבר סוכנים וסביבות פיתוח משולבות אחרות שתומכות ב-MCP באמצעות MCP Toolbox for Databases. ‫Toolbox הוא שרת MCP בקוד פתוח שנועד לחבר סוכני AI לנתונים שלכם. הוא מטפל במשימות כמו אימות ואיגום חיבורים, ומאפשר לכם ליצור אינטראקציה עם הנתונים באמצעות שפה טבעית ישירות מ-IDE.

לפני שמתחילים

לפני שמתחברים למופע AlloyDB Omni, חשוב לבצע את הפעולות הבאות:

  1. התקנה של AlloyDB Omni ל-Linux ומכונה של מסד נתונים שפועלת.
  2. יוצרים משתמש במסד נתונים או משתמשים במשתמש קיים. צריך להיות מוכנים להזין את שם המשתמש והסיסמה.

שימוש בתוסף ל-Gemini CLI ל-PostgreSQL

‫Gemini CLI הוא סוכן AI בקוד פתוח שנועד לעזור בתהליכי פיתוח, למשל בכתיבת קוד, בניפוי באגים, בחיפוש נתונים וביצירת תוכן. המטרה שלו היא לספק ממשק סוכני לביצוע אינטראקציה עם שירותי Data Cloud ומסדי נתונים פופולריים בקוד פתוח.

השילוב עם Gemini CLI ל-AlloyDB Omni מתבצע באמצעות התוסף PostgreSQL. התוסף הזה מספק קבוצה של כלים לאינטראקציה עם PostgreSQL ו-AlloyDB Omni, שמאפשרים לכם לנהל את מסדי הנתונים, להריץ שאילתות ולעיין בסכימות ישירות מ-Gemini CLI באמצעות הנחיות בשפה טבעית.

בדוגמאות הבאות אנחנו משתמשים במסד נתונים לדוגמה ecommerce עם הטבלאות הבאות:

  • products: מכיל פרטי המוצר, כולל product_id,‏ product_name,‏ category ו-price.
  • customers: מאחסן נתוני לקוחות, כמו customer_id,‏ first_name,‏ last_name ו-email.
  • orders: מכיל פרטי הזמנה, כולל order_id,‏ customer_id ו-order_date.

הכלים הבאים זמינים בתוסף PostgreSQL:

קטגוריה כלי דוגמה להנחיה בשפה טבעית
פעולות במסד נתונים execute_sql תראה לי את 10 המוצרים הכי יקרים בקטגוריה 'מחשבים ניידים'.
get_query_plan תסביר את תוכנית השאילתות לשאילתה שמאתרת את כל הלקוחות שלא ביצעו הזמנה ב-6 החודשים האחרונים.
list_active_queries אילו שאילתות מורצות במסד הנתונים?
database_overview תן לי סקירה כללית של מסד הנתונים הנוכחי.
list_tables תציג לי את כל הטבלאות במסד הנתונים הנוכחי.
list_views אילו תצוגות זמינות?
list_schemas הצגת רשימה של כל הסכימות.
list_triggers תראה לי את הטריגרים בטבלת ההזמנות.
list_available_extensions אילו תוספים זמינים להתקנה?
list_installed_extensions מציינים את כל התוספים המותקנים.
list_indexes הצגת רשימה של כל האינדקסים.
list_sequences הצגת רשימה של כל הרצפים.
תקינות ותחזוקה של מסד הנתונים list_autovacuum_configurations תראה לי את ההגדרה הנוכחית של autovacuum.
list_memory_configurations מהן הגדרות הזיכרון הנוכחיות?
list_top_bloated_tables תציג את חמש הטבלאות הכי גדולות.
list_replication_slots הצגת כל משבצות השכפול הפעילות.
list_invalid_indexes בודקים אם יש אינדקסים לא תקינים במסד הנתונים ecommerce.
long_running_transactions תראה לי את העסקאות שפועלות במשך זמן רב.
list_locks הצגת רשימה של כל המנעולים.
replication_stats תראה לי את הנתונים הסטטיסטיים של השכפול.

יש שתי דרכים להשתמש בתוסף ל-Gemini CLI עבור PostgreSQL:

  • כלי שורת פקודה עצמאי
  • שילוב בסביבת הפיתוח המשולבת (IDE) באמצעות Gemini Code Assist

Gemini CLI

  1. מתקינים את Gemini CLI (גרסה 0.6.0 ואילך).
  2. כדי להתקין את התוסף PostgreSQL ל-Gemini CLI ממאגר GitHub, מריצים את הפקודה הבאה:
    gemini extensions install https://github.com/gemini-cli-extensions/postgres
  3. מגדירים משתני סביבה כדי להתחבר למופע AlloyDB Omni:
    export POSTGRES_HOST="DATABASE_HOST"
    export POSTGRES_PORT="DATABASE_PORT"
    export POSTGRES_DATABASE="DATABASE_NAME"
    export POSTGRES_USER="DATABASE_USER"
    export POSTGRES_PASSWORD="DATABASE_PASSWORD"
    

    אפשר גם לטעון את המשתנים האלה מקובץ .env בספריית העבודה.

  4. מפעילים את Gemini CLI במצב אינטראקטיבי:
    gemini
    ממשק ה-CLI טוען באופן אוטומטי את התוסף של PostgreSQL ואת הכלים שלו, שבהם אפשר להשתמש כדי ליצור אינטראקציה עם מסד הנתונים.

Gemini Code Assist

כדי להימנע מהגדרה ידנית של שרת MCP, מגדירים את Gemini Code Assist לשימוש ב-Gemini CLI.

  1. מתקינים ומגדירים את Gemini CLI ואת התוסף postgres כמו שמתואר בכרטיסייה Gemini CLI.
  2. איך מגדירים את Gemini Code Assist לשימוש ב-Gemini CLI
  3. מתחילים לקיים אינטראקציה עם מופע AlloyDB Omni באמצעות שפה טבעית ישירות בצ'אט של Gemini Code Assist.

חיבור לסביבות פיתוח משולבות אחרות באמצעות MCP Toolbox for Databases

בקטע הזה מוסבר איך להתחבר למופע AlloyDB Omni מסוכנים שונים באמצעות MCP Toolbox for Databases.

התקנה של MCP Toolbox for Databases

כדי לחבר את סביבת הפיתוח המשולבת (IDE) ל-AlloyDB Omni, צריך להתקין את MCP Toolbox for Databases, שרת קוד פתוח שמחבר סוכני AI לנתונים שלכם.

  1. מורידים את הגרסה האחרונה של Toolbox כקובץ בינארי. בוחרים את הקובץ הבינארי שמתאים למערכת ההפעלה ולארכיטקטורת ה-CPU.

    linux/amd64

    curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/linux/amd64/toolbox

    darwin/arm64

    curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/darwin/arm64/toolbox

    darwin/amd64

    curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/darwin/amd64/toolbox

    windows/amd64

    curl -L -O https://storage.googleapis.com/genai-toolbox/v0.21.0/windows/amd64/toolbox.exe
  2. הופכים את הקובץ הבינארי לקובץ הפעלה.

    chmod +x toolbox
    
  3. מאמתים את ההתקנה.

    ./toolbox --version
    

הגדרת הלקוח

בוחרים את הכלי של הסוכן מבין האפשרויות הבאות:

סמן

  1. אם התיקייה .cursor לא קיימת, יוצרים אותה בתיקיית הבסיס של הפרויקט.
  2. יוצרים את הקובץ .cursor/mcp.json אם הוא לא קיים, ופותחים אותו.
  3. מוסיפים את ההגדרה הבאה, מחליפים את משתני הסביבה בערכים שלכם ושומרים.
{
  "mcpServers": {
    "alloydbomni": {
      "command": "PATH_TO_TOOLBOX",
      "args": ["--prebuilt","postgres","--stdio"],
      "env": {
        "POSTGRES_HOST": "DATABASE_HOST",
        "POSTGRES_PORT": "DATABASE_PORT",
        "POSTGRES_DATABASE": "DATABASE_NAME",
        "POSTGRES_USER": "DATABASE_USER",
        "POSTGRES_PASSWORD": "DATABASE_PASSWORD"
      }
    }
  }
}
  1. פותחים את Cursor ועוברים אל Settings > Cursor Settings > MCP. כשמתבצע חיבור לשרת, מופיע סטטוס פעיל בצבע ירוק.

גלישת רוח

  1. פותחים את Windsurf ועוברים אל Cascade assistant.
  2. לוחצים על סמל ה-MCP ואז על Configure (הגדרה) כדי לפתוח את קובץ ההגדרות.
  3. מוסיפים את ההגדרה הבאה, מחליפים את משתני הסביבה בערכים שלכם ושומרים.
{
  "mcpServers": {
    "alloydbomni": {
      "command": "PATH_TO_TOOLBOX",
      "args": ["--prebuilt","postgres","--stdio"],
      "env": {
        "POSTGRES_HOST": "DATABASE_HOST",
        "POSTGRES_PORT": "DATABASE_PORT",
        "POSTGRES_DATABASE": "DATABASE_NAME",
        "POSTGRES_USER": "DATABASE_USER",
        "POSTGRES_PASSWORD": "DATABASE_PASSWORD"
      }
    }
  }
}

קוד Visual Studio ‏ (Copilot)

  1. פותחים את VS Code ויוצרים את הספרייה .vscode בתיקיית הבסיס של הפרויקט, אם היא לא קיימת.
  2. יוצרים את הקובץ .vscode/mcp.json אם הוא לא קיים, ופותחים אותו.
  3. מוסיפים את ההגדרה הבאה, מחליפים את משתני הסביבה בערכים שלכם ושומרים.
{
  "servers": {
    "alloydbomni": {
      "command": "PATH_TO_TOOLBOX",
      "args": ["--prebuilt","postgres","--stdio"],
      "env": {
        "POSTGRES_HOST": "DATABASE_HOST",
        "POSTGRES_PORT": "DATABASE_PORT",
        "POSTGRES_DATABASE": "DATABASE_NAME",
        "POSTGRES_USER": "DATABASE_USER",
        "POSTGRES_PASSWORD": "DATABASE_PASSWORD"
      }
    }
  }
}

Cline

  1. פותחים את התוסף Cline ב-VS Code ולוחצים על סמל MCP Servers.
  2. לוחצים על Configure MCP Servers (הגדרת שרתי MCP) כדי לפתוח את קובץ ההגדרות.
  3. מוסיפים את ההגדרה הבאה, מחליפים את משתני הסביבה בערכים שלכם ושומרים.
{
  "mcpServers": {
    "alloydbomni": {
      "command": "PATH_TO_TOOLBOX",
      "args": ["--prebuilt","postgres","--stdio"],
      "env": {
        "POSTGRES_HOST": "DATABASE_HOST",
        "POSTGRES_PORT": "DATABASE_PORT",
        "POSTGRES_DATABASE": "DATABASE_NAME",
        "POSTGRES_USER": "DATABASE_USER",
        "POSTGRES_PASSWORD": "DATABASE_PASSWORD"
      }
    }
  }
}
      
  1. אחרי שהשרת מתחבר בהצלחה, מופיע סטטוס פעיל בצבע ירוק.

‫Claude למחשב

  1. פותחים את Claude Desktop ועוברים אל הגדרות.
  2. בכרטיסייה Developer (פיתוח), לוחצים על Edit Config (עריכת ההגדרות) כדי לפתוח את קובץ ההגדרות.
  3. מוסיפים את ההגדרה, מחליפים את משתני הסביבה בערכים שלכם ושומרים.
{
  "mcpServers": {
    "alloydbomni": {
      "command": "PATH_TO_TOOLBOX",
      "args": ["--prebuilt","postgres","--stdio"],
      "env": {
        "POSTGRES_HOST": "DATABASE_HOST",
        "POSTGRES_PORT": "DATABASE_PORT",
        "POSTGRES_DATABASE": "DATABASE_NAME",
        "POSTGRES_USER": "DATABASE_USER",
        "POSTGRES_PASSWORD": "DATABASE_PASSWORD"
      }
    }
  }
}
  1. מפעילים מחדש את Claude Desktop.
  2. במסך הצ'אט החדש מוצג סמל של פטיש (MCP) עם שרת ה-MCP החדש.

Claude code

  1. מתקינים את Claude Code.
  2. יוצרים את הקובץ .mcp.json בתיקיית הבסיס של הפרויקט, אם הוא לא קיים.
  3. מוסיפים את ההגדרה, מחליפים את משתני הסביבה בערכים שלכם ושומרים.
{
  "mcpServers": {
    "alloydbomni": {
      "command": "PATH_TO_TOOLBOX",
      "args": ["--prebuilt","postgres","--stdio"],
      "env": {
        "POSTGRES_HOST": "DATABASE_HOST",
        "POSTGRES_PORT": "DATABASE_PORT",
        "POSTGRES_DATABASE": "DATABASE_NAME",
        "POSTGRES_USER": "DATABASE_USER",
        "POSTGRES_PASSWORD": "DATABASE_PASSWORD"
      }
    }
  }
}
  1. מפעילים מחדש את קוד Claude כדי להחיל את ההגדרה החדשה.