টুল: search_files
একটি কাঠামোগত কোয়েরি দিয়ে ড্রাইভ ফাইল অনুসন্ধান করতে এই টুলটি ব্যবহার করুন।
query ফিল্ডে কোয়েরি সার্চ অপারেটর ব্যবহার করা আবশ্যক।
একটি কোয়েরি স্ট্রিং-এ নিম্নলিখিত তিনটি অংশ থাকে: query_term operator values যেখানে:
-
query_termহলো অনুসন্ধানের জন্য প্রয়োজনীয় শব্দ বা ক্ষেত্র। -
operatorকোয়েরি টার্মের জন্য শর্ত নির্দিষ্ট করে। - আপনার অনুসন্ধানের ফলাফল ফিল্টার করার জন্য ব্যবহৃত নির্দিষ্ট মানগুলোই হলো
values।
অনুসন্ধানের শর্তাবলী
নিম্নলিখিত সারণিতে বৈধ কোয়েরি পদ এবং তাদের বিবরণ তালিকাভুক্ত করা হলো:
| অনুসন্ধান পদ | বৈধ অপারেটররা | ব্যবহার |
|---|---|---|
title | contains , = , != | ফাইলের শিরোনাম। এটিকে একক উদ্ধৃতি চিহ্ন ( ' ) দিয়ে ঘিরে দিন। কোয়েরিতে একক উদ্ধৃতি চিহ্নকে \' দিয়ে এস্কেপ করুন, যেমন 'Valentine\'s Day' । |
fullText | contains | ফাইলের বিষয়বস্তুর title বা লেখা মেলে কিনা। একক উদ্ধৃতি চিহ্ন ( ' ) দিয়ে ঘিরে দিন। কোয়েরিতে একক উদ্ধৃতি চিহ্নকে \' দিয়ে এস্কেপ করুন, যেমন 'Valentine\'s Day' । |
mimeType | contains , = , != | ফাইলটির MIME টাইপ। এটিকে একক উদ্ধৃতি চিহ্ন ( ' ) দিয়ে ঘিরে দিন। কোয়েরিতে একক উদ্ধৃতি চিহ্নকে \' দিয়ে এস্কেপ করুন, যেমন 'Valentine\'s Day' । |
modifiedTime | <= , < , = , != , > , >= | সর্বশেষ ফাইল পরিবর্তনের তারিখ। RFC 3339 ফরম্যাট, ডিফল্ট টাইম জোন হলো UTC, যেমন 2012-06-04T12:00:00-08:00 । date টাইপের ফিল্ডগুলো তুলনীয় নয়। |
viewedByMeTime | <= , < , = , != , > , >= | ব্যবহারকারী সর্বশেষ যে তারিখে একটি ফাইল দেখেছেন। RFC 3339 ফরম্যাট, ডিফল্ট টাইম জোন হলো UTC, যেমন 2012-06-04T12:00:00-08:00 । ' date টাইপের ফিল্ডগুলো তুলনীয় নয়। |
parentId | = , != | প্যারেন্ট নির্দিষ্ট আইডি-র সমান কিনা। root ব্যবহার করে ব্যবহারকারীর "মাই ড্রাইভ" নির্দিষ্ট করা যায়, যা তাদের প্রাথমিক স্তরবিন্যাস হিসেবে কাজ করে। |
owner | = , != | ফাইলটির মালিক ব্যবহারকারী। অনুরোধকারী ব্যবহারকারীকে নির্দিষ্ট করতে me ব্যবহার করা যেতে পারে। |
sharedWithMe | = , != | যে ফাইলগুলো ব্যবহারকারীর "আমার সাথে শেয়ার করা" সংগ্রহে রয়েছে। ফাইলের সকল ব্যবহারকারী ফাইলটির অ্যাক্সেস কন্ট্রোল লিস্ট (ACL)-এ অন্তর্ভুক্ত। এটি true বা false হতে পারে। |
createdTime | <= , < , = , != , > , >= | ফাইলটি তৈরি করার তারিখ। RFC 3339 ফরম্যাট ব্যবহার করুন, ডিফল্ট টাইম জোন হলো UTC, যেমন 2012-06-04T12:00:00-08:00 । |
কোয়েরি অপারেটর
নিম্নলিখিত সারণিতে বৈধ কোয়েরি অপারেটরগুলো তালিকাভুক্ত করা হলো:
| অপারেটর | ব্যবহার |
|---|---|
contains | একটি স্ট্রিং-এর বিষয়বস্তু অন্যটিতে উপস্থিত থাকে। |
= | একটি স্ট্রিং বা বুলিয়ানের বিষয়বস্তু একে অপরের সমান। |
!= | একটি স্ট্রিং বা বুলিয়ানের বিষয়বস্তু একে অপরের সমান নয়। |
< | একটি মান অন্যটির চেয়ে কম। |
<= | একটি মান অন্য একটি মানের চেয়ে কম বা সমান। |
> | একটি মান অন্যটির চেয়ে বড়। |
>= | একটি মান অন্যটির চেয়ে বড় বা সমান। |
in | একটি উপাদান একটি কালেকশনের মধ্যে অন্তর্ভুক্ত থাকে। |
and | উভয় কোয়েরির সাথে মেলে এমন আইটেমগুলো ফেরত দিন। |
or | যে আইটেমগুলো যেকোনো একটি কোয়েরির সাথে মেলে, সেগুলো ফেরত দিন। |
not | একটি অনুসন্ধান কোয়েরি বাতিল করে। |
has | একটি সংগ্রহে এমন একটি উপাদান থাকে যা প্যারামিটারগুলোর সাথে মেলে। |
কোয়েরির কিছু উদাহরণ হলো:
-
title contains 'hello' and title contains 'goodbye' -
modifiedTime > '2024-01-01T00:00:00Z' and (mimeType contains 'image/' or mimeType contains 'video/') -
parentId = '1234567' -
fullText contains 'hello' -
owner = 'test@example.org' -
sharedWithMe = true -
owner = 'me'(ব্যবহারকারীর মালিকানাধীন ফাইলগুলির জন্য)
ফলাফলগুলোর মধ্যে দিয়ে পেজিনেট করার জন্য next_page_token ব্যবহার করুন। একটি খালি প্রতিক্রিয়া নির্দেশ করে যে হয় কোনো ফলাফল নেই অথবা ফেরত দেওয়ার মতো আর কোনো ফলাফল নেই।
নিম্নলিখিত নমুনাটি দেখায় কিভাবে curl ব্যবহার করে ` search_files MCP টুলটি চালু করতে হয়।
| কার্ল অনুরোধ |
|---|
curl --location 'https://drivemcp.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_files", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
ইনপুট স্কিমা
ফাইল অনুসন্ধানের অনুরোধ।
অনুসন্ধান ফাইল অনুরোধ
| JSON উপস্থাপনা |
|---|
{ "query": string, "pageToken": string "pageSize": integer "excludeContentSnippets": boolean } |
| ক্ষেত্র | |
|---|---|
query | অনুসন্ধান ক্যোয়ারি। |
ইউনিয়ন ফিল্ড | |
pageToken | পেজিনেশনের জন্য ব্যবহৃত পেজ টোকেন। |
ইউনিয়ন ফিল্ড | |
pageSize | প্রতিটি পৃষ্ঠায় ফেরত দেওয়া ফাইলের সর্বোচ্চ সংখ্যা। |
ইউনিয়ন ফিল্ড | |
excludeContentSnippets | যদি সত্য হয়, তাহলে কন্টেন্ট স্নিপেটটি রেসপন্স থেকে বাদ দেওয়া হবে। |
আউটপুট স্কিমা
ফাইল অনুসন্ধানের প্রতিক্রিয়া।
সার্চফাইলসরেসপন্স
| JSON উপস্থাপনা |
|---|
{
"files": [
{
object ( |
| ক্ষেত্র | |
|---|---|
files[] | শুধুমাত্র আউটপুট। ফাইলগুলোর তালিকা। |
ইউনিয়ন ফিল্ড | |
nextPageToken | পরবর্তী পৃষ্ঠার টোকেন। |
ফাইল
| 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 } |
| ক্ষেত্র | |
|---|---|
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 | ফাইলটির মালিকের ইমেইল ঠিকানা। |
টাইমস্ট্যাম্প
| 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 | ন্যানোসেকেন্ড রেজোলিউশনে সেকেন্ডের অঋণাত্মক ভগ্নাংশ। এই ক্ষেত্রটি হলো সময়কালের ন্যানোসেকেন্ড অংশ, সেকেন্ডের বিকল্প নয়। ভগ্নাংশসহ ঋণাত্মক সেকেন্ডের মানগুলোর ক্ষেত্রেও ন্যানোর মান অবশ্যই অঋণাত্মক হতে হবে, যা সময়ের সাথে সাথে গণনা করে। এর মান অবশ্যই ০ থেকে ৯৯৯,৯৯৯,৯৯৯-এর মধ্যে হতে হবে (উভয় সংখ্যাসহ)। |
টুল টীকা
ধ্বংসাত্মক ইঙ্গিত: ❌ | স্বকীয় ইঙ্গিত: ✅ | শুধুমাত্র পঠনযোগ্য ইঙ্গিত: ✅ | উন্মুক্ত বিশ্ব ইঙ্গিত: ❌