MCP Tools Reference: developerconnect.googleapis.com

כלי: diff-repo-commit

הצגת ההבדלים בין שני קומיטים במאגר Git. כדי לאחזר קטעי תיקון שורה אחר שורה, צריך להעביר את path_filters (לדוגמה, ['**'] לכל הקבצים).

בדוגמת הקוד הבאה מוסבר איך להשתמש ב-curl כדי להפעיל את כלי ה-MCP‏ diff-repo-commit.

בקשת Curl
curl --location 'https://developerconnect.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "diff-repo-commit",
    "arguments": {
      // Provide these details according to the MCP tool specification.
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

סכימת הקלט

הודעת בקשה ל-DiffGitRepositoryLinkCommit.

DiffGitRepositoryLinkCommitRequest

ייצוג ב-JSON
{
  "name": string,
  "baseSha": string,
  "headSha": string,
  "pathFilters": [
    string
  ]
}
שדות
name

string

חובה. שם המשאב של GitRepositoryLink.

baseSha

string

חובה. ה-SHA או ההפניה של ה-commit הבסיסי.

headSha

string

חובה. ה-SHA או ההפניה של ה-head commit.

pathFilters[]

string

זה שינוי אופציונלי. תבניות נתיבים או נתיבים מדויקים לסינון הקבצים שמוחזרים. כשמציינים את path_filters, השדה FileDiff.patch מאוכלס בכל הקבצים התואמים (אפשר להשתמש ב-["**"] כדי לכלול תיקונים לכל הקבצים שהשתנו). אם משמיטים את path_filters או שהוא ריק, מוחזרת הרשימה המלאה של FileDiff בלי הבדלי תיקונים (FileDiff.patch ריק).

סכימת הפלט

הודעת התגובה ל-DiffGitRepositoryLinkCommit.

DiffGitRepositoryLinkCommitResponse

ייצוג ב-JSON
{
  "files": [
    {
      object (FileDiff)
    }
  ]
}
שדות
files[]

object (FileDiff)

ההבדלים בין הקבצים שחולצו מההבדלים המאוחדים.

FileDiff

ייצוג ב-JSON
{
  "path": string,
  "status": string,
  "patch": string
}
שדות
path

string

הנתיב היחסי לקובץ במאגר.

status

string

סטטוס השינוי: "ADDED",‏ "MODIFIED",‏ "REMOVED",‏ "RENAMED".

patch

string

קטע של תיקון diff מאוחד סטנדרטי לקובץ. מאוכלס רק כשמצוין path_filters בבקשה, אחרת הוא ריק.

הערות לגבי הכלים

הערות הכלים נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי מסוים. רוב הלקוחות מתייחסים לרמזים האלה כלא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש בקשה לאישור.

בנוסף למחרוזת הכותרת, הרמזים הבוליאניים הבאים מוגדרים כך:

  • ‫readOnlyHint: אם הערך הוא True, הכלי לא משנה את הסביבה שלו. ברירת המחדל: false.
  • ‫destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא False, הכלי יכול לבצע רק פעולות הוספה. ברירת המחדל: true.
  • ‫idempotentHint: אם הערך הוא True, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת המחדל: false.
  • ‫openWorldHint: אם הערך הוא True, הכלי יכול לקיים אינטראקציה עם "עולם פתוח" של ישויות חיצוניות. אם הערך הוא false, הכלי יכול לקיים אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי חיפוש באינטרנט הוא כלי בעולם פתוח, אבל כלי זיכרון הוא לא כלי בעולם פתוח.

Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌