שימוש בתיעוד מקורות הנתונים עם MCP,‏ Gemini וסוכנים אחרים

בדף הזה מוסבר איך לחבר את שושלת הנתונים לכלים למפתחים, כמו Gemini CLI ולקוחות אחרים של Model Context Protocol‏ (MCP). קישור של שושלת הנתונים לכלים האלה מאפשר מעקב אחרי שושלת הנתונים מבוסס-AI וניתוח של מקור הנתונים ישירות בסביבת הפיתוח.

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

מידע נוסף על MCP זמין במאמר מבוא ל-Model Context Protocol.

במדריך הזה נסביר איך מתבצע תהליך החיבור של הכלים הבאים:

אילו כלים של MCP מספקת שושלת הנתונים?

השילוב של מעקב אחר מקורות נתונים מאפשר לסוכני AI לשלוח שאילתות ולנתח את מקורות הנתונים, שמייצגים את זרימת הנתונים בין נכסי המקור (במעלה הזרם) לנכסי היעד (במורד הזרם). הוא תומך גם בתיעוד מקורות נתונים ברמת הישות (מעקב אחרי זרימת נתונים בין נכסים שלמים כמו טבלאות וקבצים) וגם בתיעוד מקורות נתונים ברמת העמודה (מעקב אחרי זרימת נתונים בין שדות או עמודות ספציפיים בתוך נכסים).

הכלי datalineage-search-lineage מספק שושלת נתונים. הכלי מאחזר תגובה של קישורי שושלת שקשורים לנכסים המבוקשים.

מידע נוסף על מקור שושלת הנתונים והכלים שזמינים בו מופיע במאמרי העזרה בנושא מקור שושלת הנתונים.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות לחיבור לנתוני שושלת נתונים באמצעות MCP Toolbox, צריך לבקש מהאדמין להקצות לכם בפרויקט את תפקידי ה-IAM הבאים:

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

התפקידים המוגדרים מראש האלה כוללים את ההרשאות שנדרשות להתחבר ל-Data Lineage באמצעות MCP Toolbox. כדי לראות בדיוק אילו הרשאות נדרשות, אפשר להרחיב את הקטע ההרשאות הנדרשות:

ההרשאות הנדרשות

כדי להתחבר לנתוני שרשרת המקור באמצעות MCP Toolbox, נדרשות ההרשאות הבאות:

  • כדי להפעיל ממשקי API: serviceusage.services.enable
  • כדי להשתמש במיומנויות של שושלת נתונים:
    • datalineage.lineage.searchLinks
    • datalineage.processes.get
    • datalineage.runs.get

יכול להיות שתקבלו את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

הפעלת ממשקי ה-API הנדרשים

  1. נכנסים לדף לבחירת הפרויקט במסוף Google Cloud .

    כניסה לדף לבחירת הפרויקט

  2. בוחרים או יוצרים Google Cloud פרויקט.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים
  3. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  4. מפעילים את Data lineage API, אם הוא עדיין לא מופעל.

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    להפעלת ה-API

  5. אם אתם משתמשים במעטפת מקומית, אתם צריכים ליצור פרטי כניסה לאימות מקומי עבור חשבון המשתמש:

    gcloud auth application-default login

    אם אתם משתמשים ב-Cloud Shell, אין צורך לבצע את הפעולה הזו.

    אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.

התקנת MCP Toolbox

אם אתם מתכננים להשתמש רק ב-Gemini Code Assist, אתם לא צריכים להתקין את MCP Toolbox, כי הוא כולל את היכולות הנדרשות של השרת. כדי להתקין את MCP Toolbox בסביבות פיתוח משולבות (IDE) ובכלים אחרים, צריך לפעול לפי השלבים שבקטע הזה.

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

    Linux/amd64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/linux/amd64/toolbox

    מחליפים את VERSION בגרסה של MCP Toolbox, לדוגמה, v0.31.0.

    ‫macOS (Darwin)/arm64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/darwin/arm64/toolbox

    מחליפים את VERSION בגרסה של MCP Toolbox, לדוגמה, v0.31.0.

    ‫macOS (Darwin)/amd64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/darwin/amd64/toolbox

    מחליפים את VERSION בגרסה של MCP Toolbox, לדוגמה, v0.31.0.

    Windows/amd64

    curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/VERSION/windows/amd64/toolbox

    מחליפים את VERSION בגרסה של MCP Toolbox, לדוגמה, v0.31.0.

  2. הופכים את קובץ ההפעלה הבינארי לקובץ הפעלה:

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

    ./toolbox --version
    

    התקנה מוצלחת מחזירה את מספר הגרסה, לדוגמה, 0.15.0.

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

בקטע הזה מוסבר איך לקשר את שרשרת מקורות הנתונים לכלים שלכם.

כדי לחבר את כלי ה-IDE וכלי ה-MCP התואמים שלכם לנתוני שרשרת המקור, קודם צריך להתקין את MCP Toolbox וליצור קובץ הגדרה מותאם אישית למקור ולכלים של שרשרת המקור.

  1. בתיקיית השורש של הפרויקט או בתיקיית ההגדרות, יוצרים קובץ YAML בשם lineage-config.yaml עם ההגדרות הבאות:

    kind: source
    name: lineage-source
    type: datalineage
    project: ${DATALINEAGE_PROJECT}
    ---
    kind: tool
    name: search_lineage
    type: datalineage-search-lineage
    source: lineage-source
    description: Retrieves a streaming response of lineage links connected to requested assets.
    
  2. מגדירים את משתנה הסביבה של הפרויקט: Google Cloud

    export DATALINEAGE_PROJECT=PROJECT_ID
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  3. במקום להשתמש בהגדרה מובנית מראש, מגדירים את הלקוח הספציפי באמצעות הדגל --config, כמו שמוסבר בקטעים הבאים.

Gemini CLI

אתם יכולים להשתמש ב-Gemini CLI כדי לעקוב אחרי מקורות הנתונים. לשם כך, צריך להגדיר אותו כשרת MCP מקומי באמצעות MCP Toolbox וקובץ lineage-config.yaml בהתאמה אישית.

  1. בספריית העבודה של הפרויקט, יוצרים תיקייה בשם .gemini (או פותחים את התיקייה הגלובלית ~/.gemini).
  2. בתוך הספרייה הזו, יוצרים או פותחים את הקובץ settings.json.
  3. מוסיפים את ההגדרה הבאה:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  4. שומרים את ההגדרה.

  5. מפעילים את Gemini CLI במצב אינטראקטיבי:

    gemini
    

    ב-Gemini CLI, משתמשים בפקודה /mcp כדי לוודא שהשרת dataLineage מחובר.

Gemini Code Assist

‫Gemini Code Assist כולל את היכולות הנדרשות של שרת ה-MCP, כך שלא צריך להתקין את MCP Toolbox בנפרד.

  1. ב-VS Code, מתקינים את התוסף Gemini Code Assist.
  2. מפעילים את מצב הסוכן בצ'אט של Gemini Code Assist.
  3. בספריית העבודה, יוצרים תיקייה בשם .gemini. בתוך התיקייה הזו, יוצרים קובץ settings.json.
  4. מוסיפים את ההגדרה הבאה:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  5. שומרים את ההגדרה.

Claude Code

התוסף הרשמי מספק כלים ל-Knowledge Catalog, אבל אפשר להשתמש ב-data lineage ב-Claude Code על ידי הגדרת שרת MCP Toolbox מקומי עם קובץ ההגדרות המותאם אישית שלכם.

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

    export DATALINEAGE_PROJECT=PROJECT_ID
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  2. מגדירים את Claude Code כך שישתמש בשרת MCP Toolbox:

    claude mcp add datalineage -- /PATH/TO/toolbox --config=/PATH/TO/lineage-config.yaml --stdio
    
  3. מפעילים את הסוכן:

    claude
    

Codex

כדי להשתמש בתיעוד מקורות הנתונים ב-Codex, צריך להגדיר חיבור לשרת MCP בתצורת Codex כדי להריץ את MCP Toolbox עם קובץ lineage-config.yaml מותאם אישית:

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

    export DATALINEAGE_PROJECT="PROJECT_ID"
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  2. בתצורת ה-MCP של Codex, מוסיפים את השרת באמצעות MCP Toolbox:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

Claude desktop

  1. פותחים את Claude למחשב ועוברים אל ההגדרות.
  2. כדי לפתוח את קובץ ההגדרות, בכרטיסייה Developer (מפתח), לוחצים על Edit config (עריכת ההגדרות).
  3. מוסיפים את ההגדרה:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  4. שומרים את ההגדרה.

  5. מפעילים מחדש את Claude למחשב. במסך הצ'אט החדש מוצג סמל MCP שמייצג את שרת ה-MCP החדש.

קלין

  1. ב-VS Code, פותחים את התוסף Cline ואז לוחצים על הסמל MCP Servers (שרתי MCP).
  2. כדי לפתוח את קובץ ההגדרות, מקישים על Configure MCP Servers (הגדרת שרתי MCP).
  3. מוסיפים את ההגדרה הבאה:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  4. שומרים את ההגדרה. אחרי שהשרת מתחבר בהצלחה, מופיע סטטוס פעיל בצבע ירוק.

סמן

  1. יוצרים את הספרייה .cursor בתיקיית הבסיס של הפרויקט אם היא לא קיימת.
  2. יוצרים את הקובץ .cursor/mcp.json אם הוא לא קיים ופותחים אותו.
  3. מוסיפים את ההגדרה הבאה:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  4. שומרים את ההגדרה.

  5. פותחים את Cursor ועוברים אל הגדרות > הגדרות הסמן > MCP. כשמתבצע חיבור לשרת, מופיע סטטוס ירוק של פעילות.

VS Code (Copilot)

  1. פותחים את VS Code ויוצרים את התיקייה .vscode בתיקיית השורש של הפרויקט, אם היא לא קיימת.
  2. יוצרים את הקובץ .vscode/mcp.json אם הוא לא קיים, ופותחים אותו.
  3. מוסיפים את ההגדרה הבאה:

    {
      "servers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  4. שומרים את ההגדרה.

גלישת רוח

  1. פותחים את Windsurf ועוברים אל Cascade assistant.
  2. כדי לפתוח את קובץ ההגדרות, לוחצים על סמל ה-MCP ואז על Configure (הגדרה).
  3. מוסיפים את ההגדרה הבאה:

    {
      "mcpServers": {
        "dataLineage": {
          "command": "./PATH/TO/toolbox",
          "args": ["--config","/PATH/TO/lineage-config.yaml","--stdio"],
          "env": {
            "DATALINEAGE_PROJECT": "PROJECT_ID"
          }
        }
      }
    }
    

    מחליפים את PROJECT_ID במזהה Google Cloud הפרויקט.

  4. שומרים את ההגדרה.

שימוש במיומנויות

העוזר הדיגיטלי מבוסס-AI מקושר עכשיו לתיעוד מקורות הנתונים. אתם יכולים לבקש מהעוזר הדיגיטלי מבוסס-AI לעקוב אחרי שושלת הנתונים במעלה הזרם ובמורד הזרם בין הנכסים שלכם.

לדוגמה, אתם יכולים לבקש מהעוזר הדיגיטלי מבוסס ה-AI:

  • מעקב אחרי המקור של הנתונים בטבלה ב-BigQuery (השיוך למקורות).
  • לגלות אילו טבלאות או דוחות במורד הזרם תלויים בנכס נתונים ספציפי (שושלת נתונים במורד הזרם).
  • בודקים את שושלת הנתונים ברמת העמודה בין שדות ספציפיים בנכסים.

אופציונלי: מוסיפים הוראות למערכת

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

לדוגמה, אפשר להוסיף הוראות שינחו את ה-LLM איך להשתמש ביכולות של מעקב אחר מקורות נתונים:

  • כשמתבקשים לעקוב אחרי זרימת נתונים במעלה או במורד הזרם בין נכסים או עמודות, משתמשים במיומנות search_lineage או בכלי datalineage-search-lineage.

מידע נוסף על הגדרת ההוראות זמין במאמר בנושא שימוש בהוראות כדי לקבל עריכות מ-AI שמתאימות לסגנון התכנות שלכם.

המאמרים הבאים