כלי: fetch-repo-file-blame
אחזור מידע על האשמה בקובץ ספציפי במאגר Git.
בדוגמת הקוד הבאה מוסבר איך להשתמש ב-curl כדי להפעיל את כלי ה-MCP fetch-repo-file-blame.
| בקשת 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": "fetch-repo-file-blame", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
סכימת הקלט
הודעת בקשה ל-FetchGitRepositoryLinkFileBlame.
FetchGitRepositoryLinkFileBlameRequest
| ייצוג ב-JSON |
|---|
{ "name": string, "ref": string, "path": string, "firstLine": integer, "lastLine": integer } |
| שדות | |
|---|---|
name |
חובה. שם המשאב של GitRepositoryLink בפורמט |
ref |
חובה. ה-SHA של ה-commit ב-SCM, או הגרסה הסמלית (לדוגמה, שם ההסתעפות, התג) שממנה צריך לאחזר את ה-blame. |
path |
חובה. נתיב הקובץ במאגר. |
firstLine |
זה שינוי אופציונלי. מספר השורה הראשונה בטווח שרוצים לבדוק (כולל). אם לא מציינים, השיוך מתחיל בשורה 1. |
lastLine |
זה שינוי אופציונלי. מספר השורה האחרונה בטווח שרוצים לבדוק (כולל). אם לא מציינים את הפרמטר, המערכת תציג את המידע עד סוף הקובץ. |
סכימת הפלט
הודעת תגובה ל-FetchGitRepositoryLinkFileBlame.
FetchGitRepositoryLinkFileBlameResponse
| ייצוג ב-JSON |
|---|
{
"ranges": [
{
object ( |
| שדות | |
|---|---|
ranges[] |
רשימת טווחי השורות בקובץ שבהם בוצעו שינויים. |
BlameRange
| ייצוג ב-JSON |
|---|
{
"firstLine": integer,
"lastLine": integer,
"commit": {
object ( |
| שדות | |
|---|---|
firstLine |
מספר השורה הראשונה בטווח (כולל), לפי אינדקס שמתחיל ב-1. |
lastLine |
מספר השורה שבה מסתיים הטווח (כולל), באינדקס 1. |
commit |
המטא-נתונים של ה-commit בטווח השורות הזה. |
SCMCommit
| ייצוג ב-JSON |
|---|
{ "sha": string, "message": string, "author": string, "authorEmail": string, "commitTime": string, "url": string } |
| שדות | |
|---|---|
sha |
SHA מלא של 40 תווים של SCM commit. |
message |
טקסט של הודעת השמירה. |
author |
השם המוצג של המחבר. |
authorEmail |
כתובת האימייל של המחבר. |
commitTime |
חותמת הזמן של יצירת ה-commit. הפורמט הוא RFC 3339, והפלט שנוצר תמיד יהיה מנורמל ל-Z וישתמש ב-0, 3, 6 או 9 ספרות אחרי הנקודה העשרונית. אפשר להשתמש גם בהיסטים אחרים, לא רק ב-Z. לדוגמה: |
url |
קישור לכתובת ה-URL ב-HTML של ספק ה-SCM עבור ה-commit הזה. |
חותמת הזמן
| ייצוג ב-JSON |
|---|
{ "seconds": string, "nanos": integer } |
| שדות | |
|---|---|
seconds |
מייצג שניות של זמן UTC מאז ראשית זמן יוניקס (Unix epoch) 1970-01-01T00:00:00Z. הערך חייב להיות בין -62135596800 ל-253402300799, כולל (טווח שמתאים ל-0001-01-01T00:00:00Z עד 9999-12-31T23:59:59Z). |
nanos |
שברים לא שליליים של שנייה ברזולוציה של ננו-שנייה. השדה הזה הוא החלק של הננו-שניות במשך הזמן, ולא חלופה לשניות. ערכי שניות שליליים עם שברים עדיין צריכים לכלול ערכי ננו-שניות לא שליליים שנספרים קדימה בזמן. הערך חייב להיות בין 0 ל-999,999,999, כולל. |
הערות לגבי הכלים
הערות הכלים נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי מסוים. רוב הלקוחות מתייחסים לרמזים האלה כלא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש בקשה לאישור.
בנוסף למחרוזת הכותרת, הרמזים הבוליאניים הבאים מוגדרים כך:
-
readOnlyHint: אם הערך הוא True, הכלי לא משנה את הסביבה שלו. ברירת המחדל: false. -
destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא False, הכלי יכול לבצע רק פעולות הוספה. ברירת המחדל: true. -
idempotentHint: אם הערך הוא True, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת המחדל: false. -
openWorldHint: אם הערך הוא True, הכלי יכול לקיים אינטראקציה עם "עולם פתוח" של ישויות חיצוניות. אם הערך הוא false, הכלי יכול לקיים אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי חיפוש באינטרנט הוא כלי בעולם פתוח, אבל כלי זיכרון הוא לא כלי בעולם פתוח.
Destructive Hint: ❌ | Idempotent Hint: ✅ | Read Only Hint: ✅ | Open World Hint: ❌