כלי: write_file
כתיבת התוכן של קובץ בסביבת עבודה של Dataform, ויצירת הקובץ אם הוא לא קיים.
ערך הפרמטר contents שסופק מחליף את כל הקובץ, לכן כדאי לקרוא את התוכן הנוכחי באמצעות הכלי read_file לפני שמבצעים עריכה חלקית. השינויים לא נשמרים עד שמפעילים את הכלי commit_workspace_changes.
ערך הפרמטר workspace צריך להיות בפורמט projects/{project_id}/locations/{location}/repositories/{repository}/workspaces/{workspace}.
ערך הפרמטר path הוא הנתיב היחסי לקובץ מתיקיית הבסיס של סביבת העבודה. אל תשתמשו בטכניקות של מעבר בין ספריות, כמו ...
ערך הפרמטר contents חייב להיות מחרוזת בקידוד Base64 שמכילה את תוכן הקובץ.
בדוגמת הקוד הבאה מוצג שימוש בפקודה curl כדי להפעיל את הכלי write_file MCP.
| בקשת Curl |
|---|
curl --location 'https://dataform.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "write_file", "arguments": { // Provide these details according to the MCP tool specification. } }, "jsonrpc": "2.0", "id": 1 }' |
סכימת הקלט
WriteFile הזמנה לצ'אט.
WriteFileRequest
| ייצוג JSON |
|---|
{ "workspace": string, "path": string, "contents": string } |
| שדות | |
|---|---|
workspace |
חובה. השם של סביבת העבודה. |
path |
חובה. הקובץ. |
contents |
חובה. תוכן הקובץ. מחרוזת בקידוד Base64. |
סכימת הפלט
WriteFile הודעת תגובה.
הערות על כלים
הערות על כלים נשלחות ללקוחות MCP כדי לתאר את הסיכון הבסיסי של כלי נתון. רוב הלקוחות מתייחסים לרמזים האלה כאל רמזים לא מהימנים, אבל אפשר להשתמש בהם כדי להחליט מתי לשלוח למשתמש הנחיה לאישור.
בנוסף למחרוזת הכותרת, מוגדרים הרמזים הבוליאניים הבאים:
-
readOnlyHint: אם הערך הוא true, הכלי לא משנה את הסביבה שלו. ברירת מחדל: false. -
destructiveHint: אם הערך הוא True, הכלי יכול לבצע פעולות הרסניות. אם הערך הוא false, הכלי יכול לבצע רק פעולות של הוספה. ברירת מחדל: true. -
idempotentHint: אם הערך הוא true, קריאה חוזרת לכלי עם אותם ארגומנטים לא תשפיע על הסביבה שלו. ברירת מחדל: false. -
openWorldHint: אם הערך הוא true, הכלי יכול ליצור אינטראקציה עם 'עולם פתוח' של ישויות חיצוניות. אם הערך הוא false, הכלי יכול ליצור אינטראקציה רק עם ישויות פנימיות. לדוגמה, כלי לחיפוש באינטרנט יהיה עולם פתוח, אבל כלי לזיכרון לא יהיה עולם פתוח.
הערה הרסנית: ✅ | הערה אידמפוטנטית: ✅ | הערה לקריאה בלבד: ❌ | הערה לעולם פתוח: ❌