টুল: create_file
গুগল ড্রাইভে ফাইল তৈরি বা আপলোড করতে এই টুলটি ব্যবহার করুন।
কন্টেন্ট আপলোড করার ক্ষেত্রে, টেক্সট কন্টেন্টের জন্য 'text_content' ফিল্ডটি ব্যবহার করুন। নন-UTF8 কন্টেন্টের জন্য, 'base64_content' ফিল্ডটি ব্যবহার করুন এবং সেই ফিল্ডে সেট করার জন্য ডেটাটিকে base64 এনকোড করুন।
সফলভাবে তৈরি হলে একটি একক File অবজেক্ট ফেরত দেয়।
নিম্নলিখিত গুগল ড্রাইভ ফার্স্ট-পার্টি মাইম টাইপগুলি কন্টেন্ট প্রদান ছাড়াই তৈরি করা যেতে পারে:
-
application/vnd.google-apps.document -
application/vnd.google-apps.spreadsheet -
application/vnd.google-apps.presentation
ডিফল্টরূপে, নিম্নলিখিত মাইম টাইপগুলির জন্য নিম্নলিখিত রূপান্তরগুলি করা হবে:
-
text/plaintoapplication/vnd.google-apps.document -
text/csvথেকেapplication/vnd.google-apps.spreadsheet
ফার্স্ট-পার্টি মাইম টাইপের জন্য রূপান্তর নিষ্ক্রিয় করতে, disable_conversion_to_google_type true-তে সেট করুন।
মাইম টাইপ application/vnd.google-apps.folder এ সেট করে ফোল্ডার তৈরি করা যায়।
কন্টেন্ট আপলোড করার সময়, ` content_mime_type ফিল্ডটি আবশ্যক এবং এটি আপলোড করা কন্টেন্টের ধরনের সাথে অবশ্যই মিলতে হবে।
নিম্নলিখিত নমুনাটি দেখায় কিভাবে curl ব্যবহার করে ` create_file MCP টুলটি চালু করতে হয়।
| কার্ল অনুরোধ |
|---|
curl --location 'https://drivemcp.googleapis.com/mcp/v1' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "create_file", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
ইনপুট স্কিমা
ফাইল আপলোড করার অনুরোধ।
ফাইল অনুরোধ তৈরি করুন
| JSON উপস্থাপনা |
|---|
{ "title": string, "mimeType": string, "contentMimeType": string, "content": string, "base64Content": string, "textContent": string, "parentId": string, "disableConversionToGoogleType": boolean } |
| ক্ষেত্র | |
|---|---|
title | ফাইলটির শিরোনাম। |
mimeType | অপ্রচলিত। ব্যবহার করবেন না!! এর পরিবর্তে content_mime_type সেট করুন। |
contentMimeType | আপলোড করা কন্টেন্টের MIME টাইপ। যেকোনো ধরনের কন্টেন্ট প্রদানের ক্ষেত্রে এটি আবশ্যক। |
content | ফাইলের বিষয়বস্তু বেস৬৪ (base64) হিসেবে এনকোড করা হয়েছে। ফাইলের মাইম টাইপ (mime type) নির্বিশেষে কন্টেন্ট ফিল্ডটি সর্বদা বেস৬৪ (base64) এনকোড করা উচিত। এটি এখন আর ব্যবহৃত হয় না। এর পরিবর্তে base64_content বা text_content ব্যবহার করুন। |
base64Content | ঐচ্ছিক। আপলোড করার জন্য বেস৬৪ এনকোডেড কন্টেন্ট। এটি এবং text_content একসাথে সেট করা একটি ত্রুটি। |
textContent | ঐচ্ছিক। আপলোড করার জন্য (UTF-8) টেক্সট কন্টেন্ট। এটি এবং base64_content একসাথে সেট করলে ত্রুটি হবে। |
parentId | ফাইলটির প্যারেন্ট আইডি। |
disableConversionToGoogleType | প্রদত্ত কন্টেন্ট মাইম টাইপটি অপরিবর্তিত রাখতে এবং এটিকে গুগল টাইপে রূপান্তর না করতে 'true' সেট করুন। উদাহরণস্বরূপ, এটি ছাড়া একটি 'text/plain' কন্টেন্ট মাইম টাইপ 'application/vnd.google-apps.document'-এ রূপান্তরিত হবে। যেসব টাইপের কোনো গুগল সমতুল্য নেই, সেগুলোর ক্ষেত্রে এর কোনো প্রভাব নেই। |
আউটপুট স্কিমা
একটি ফাইল রিসোর্স।
ফাইল
| JSON উপস্থাপনা |
|---|
{ "id": string, "title": string, "parentId": string, "mimeType": string "fileSize": string "description": string "fileExtension": string "contentSnippet": string "viewUrl": string "sharedWithMeTime": string "createdTime": string "modifiedTime": string "viewedByMeTime": string "owner": string "canAddChildren": boolean } |
| ক্ষেত্র | |
|---|---|
id | যে ফাইলটি আনা হয়েছিল তার আইডি। |
title | ফাইলটির শিরোনাম। |
parentId | ফাইলটির প্যারেন্টের (ঐচ্ছিক) আইডি। |
ইউনিয়ন ফিল্ড | |
mimeType | ফাইলটির মাইম টাইপ। |
ইউনিয়ন ফিল্ড | |
fileSize | ফাইলটির আকার বাইটে। |
ইউনিয়ন ফিল্ডের | |
description | ফাইলটির বিবরণ। |
ইউনিয়ন ফিল্ড | |
fileExtension | ফাইলটির মূল ফাইল এক্সটেনশন, এটি শুধুমাত্র ড্রাইভে সংরক্ষিত কন্টেন্টযুক্ত ফাইলগুলোর ক্ষেত্রেই পূরণ করা হয়। |
ইউনিয়ন ফিল্ড | |
contentSnippet | ফাইলটির বিষয়বস্তু সম্পর্কে একটি সংক্ষিপ্ত অংশ তৈরি করা হয়েছে। |
ইউনিয়ন ফিল্ড | |
viewUrl | ফাইলটি দেখার জন্য ইউআরএল। |
ইউনিয়ন ফিল্ড | |
sharedWithMeTime | যে সময়ে ফাইলটি অনুরোধকারীর সাথে শেয়ার করা হয়েছিল। RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: |
ইউনিয়ন ফিল্ড | |
createdTime | ফাইলটি তৈরি হওয়ার সময়। RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: |
ইউনিয়ন ফিল্ড | |
modifiedTime | সর্বশেষ যে সময়ে ফাইলটি পরিবর্তন করা হয়েছিল। RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: |
ইউনিয়ন ফিল্ড | |
viewedByMeTime | অনুরোধকারী কর্তৃক ফাইলটি সর্বশেষ দেখার সময়। RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: |
ইউনিয়ন ক্ষেত্রের | |
owner | ফাইলটির মালিকের ইমেইল ঠিকানা। |
ইউনিয়ন ফিল্ড | |
canAddChildren | অনুরোধকারী এই ফোল্ডারে চাইল্ড ফাইল যোগ করতে পারবেন কিনা। যেগুলো ফোল্ডার নয়, সেগুলোর ক্ষেত্রে এটি সর্বদা মিথ্যা। |
টাইমস্ট্যাম্প
| JSON উপস্থাপনা |
|---|
{ "seconds": string, "nanos": integer } |
| ক্ষেত্র | |
|---|---|
seconds | এটি ইউনিক্স ইপক 1970-01-01T00:00:00Z থেকে UTC সময়ের সেকেন্ড নির্দেশ করে। এর মান অবশ্যই -62135596800 থেকে 253402300799 (উভয় মানসহ) এর মধ্যে হতে হবে (যা 0001-01-01T00:00:00Z থেকে 9999-12-31T23:59:59Z পর্যন্ত সময়কালের সমতুল্য)। |
nanos | ন্যানোসেকেন্ড রেজোলিউশনে সেকেন্ডের অঋণাত্মক ভগ্নাংশ। এই ক্ষেত্রটি হলো সময়কালের ন্যানোসেকেন্ড অংশ, সেকেন্ডের বিকল্প নয়। ভগ্নাংশসহ ঋণাত্মক সেকেন্ডের মানগুলোর ক্ষেত্রেও ন্যানোর মান অবশ্যই অঋণাত্মক হতে হবে, যা সময়ের সাথে সাথে গণনা করে। এর মান অবশ্যই ০ থেকে ৯৯৯,৯৯৯,৯৯৯-এর মধ্যে হতে হবে (উভয় সংখ্যাসহ)। |
টুল টীকা
ধ্বংসাত্মক ইঙ্গিত: ❌ | স্বকীয় ইঙ্গিত: ❌ | শুধুমাত্র পঠনযোগ্য ইঙ্গিত: ❌ | উন্মুক্ত বিশ্ব ইঙ্গিত: ✅