MCP Tools Reference: drivemcp.googleapis.com

টুল: 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:00date টাইপের ফিল্ডগুলো তুলনীয় নয়।
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

string

অনুসন্ধান ক্যোয়ারি।

ইউনিয়ন ফিল্ড _page_token .

_page_token নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

pageToken

string

পেজিনেশনের জন্য ব্যবহৃত পেজ টোকেন।

ইউনিয়ন ফিল্ড _page_size .

_page_size নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

pageSize

integer

প্রতিটি পৃষ্ঠায় ফেরত দেওয়া ফাইলের সর্বোচ্চ সংখ্যা।

ইউনিয়ন ফিল্ড _exclude_content_snippets .

_exclude_content_snippets নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

excludeContentSnippets

boolean

যদি সত্য হয়, তাহলে কন্টেন্ট স্নিপেটটি রেসপন্স থেকে বাদ দেওয়া হবে।

আউটপুট স্কিমা

ফাইল অনুসন্ধানের প্রতিক্রিয়া।

সার্চফাইলসরেসপন্স

JSON উপস্থাপনা
{
  "files": [
    {
      object (File)
    }
  ],

  "nextPageToken": string
}
ক্ষেত্র
files[]

object ( File )

শুধুমাত্র আউটপুট। ফাইলগুলোর তালিকা।

ইউনিয়ন ফিল্ড _next_page_token .

_next_page_token নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

nextPageToken

string

পরবর্তী পৃষ্ঠার টোকেন।

ফাইল

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

string

যে ফাইলটি আনা হয়েছিল তার আইডি।

title

string

ফাইলটির শিরোনাম।

parentId

string

ফাইলটির প্যারেন্টের (ঐচ্ছিক) আইডি।

ইউনিয়ন ফিল্ড _mime_type .

_mime_type নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

mimeType

string

ফাইলটির মাইম টাইপ।

ইউনিয়ন ফিল্ড _file_size

_file_size নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

fileSize

string ( int64 format)

ফাইলটির আকার বাইটে।

ইউনিয়ন ফিল্ডের _description

_description নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

description

string

ফাইলটির বিবরণ।

ইউনিয়ন ফিল্ড _file_extension .

_file_extension নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

fileExtension

string

ফাইলটির মূল ফাইল এক্সটেনশন, এটি শুধুমাত্র ড্রাইভে সংরক্ষিত কন্টেন্টযুক্ত ফাইলগুলোর ক্ষেত্রেই পূরণ করা হয়।

ইউনিয়ন ফিল্ড _content_snippet .

_content_snippet নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

contentSnippet

string

ফাইলটির বিষয়বস্তু সম্পর্কে একটি সংক্ষিপ্ত অংশ তৈরি করা হয়েছে।

ইউনিয়ন ফিল্ড _view_url .

_view_url নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

viewUrl

string

ফাইলটি দেখার জন্য ইউআরএল।

ইউনিয়ন ফিল্ড _shared_with_me_time .

_shared_with_me_time নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

sharedWithMeTime

string ( Timestamp format)

যে সময়ে ফাইলটি অনুরোধকারীর সাথে শেয়ার করা হয়েছিল।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30"

ইউনিয়ন ফিল্ড _created_time .

_created_time নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

createdTime

string ( Timestamp format)

ফাইলটি তৈরি হওয়ার সময়।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30"

ইউনিয়ন ফিল্ড _modified_time .

_modified_time নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

modifiedTime

string ( Timestamp format)

সর্বশেষ যে সময়ে ফাইলটি পরিবর্তন করা হয়েছিল।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30"

ইউনিয়ন ফিল্ড _viewed_by_me_time .

_viewed_by_me_time নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:

viewedByMeTime

string ( Timestamp format)

অনুরোধকারী কর্তৃক ফাইলটি সর্বশেষ দেখার সময়।

RFC 3339 ব্যবহার করা হয়, যেখানে তৈরি হওয়া আউটপুট সর্বদা Z-নরম্যালাইজড হবে এবং এতে ০, ৩, ৬ বা ৯টি ভগ্নাংশীয় অঙ্ক ব্যবহৃত হবে। "Z" ছাড়াও অন্যান্য অফসেটও গ্রহণ করা হয়। উদাহরণ: "2014-10-02T15:01:23Z" , "2014-10-02T15:01:23.045123456Z" অথবা "2014-10-02T15:01:23+05:30"

ইউনিয়ন ক্ষেত্রের _owner

_owner নিম্নলিখিতদের মধ্যে কেবল একজন হতে পারেন:

owner

string

ফাইলটির মালিকের ইমেইল ঠিকানা।

টাইমস্ট্যাম্প

JSON উপস্থাপনা
{
  "seconds": string,
  "nanos": integer
}
ক্ষেত্র
seconds

string ( int64 format)

এটি ইউনিক্স ইপক 1970-01-01T00:00:00Z থেকে UTC সময়ের সেকেন্ড নির্দেশ করে। এর মান অবশ্যই -62135596800 থেকে 253402300799 (উভয় মানসহ) এর মধ্যে হতে হবে (যা 0001-01-01T00:00:00Z থেকে 9999-12-31T23:59:59Z পর্যন্ত সময়কালের সমতুল্য)।

nanos

integer

ন্যানোসেকেন্ড রেজোলিউশনে সেকেন্ডের অঋণাত্মক ভগ্নাংশ। এই ক্ষেত্রটি হলো সময়কালের ন্যানোসেকেন্ড অংশ, সেকেন্ডের বিকল্প নয়। ভগ্নাংশসহ ঋণাত্মক সেকেন্ডের মানগুলোর ক্ষেত্রেও ন্যানোর মান অবশ্যই অঋণাত্মক হতে হবে, যা সময়ের সাথে সাথে গণনা করে। এর মান অবশ্যই ০ থেকে ৯৯৯,৯৯৯,৯৯৯-এর মধ্যে হতে হবে (উভয় সংখ্যাসহ)।

টুল টীকা

ধ্বংসাত্মক ইঙ্গিত: ❌ | স্বকীয় ইঙ্গিত: ✅ | শুধুমাত্র পঠনযোগ্য ইঙ্গিত: ✅ | উন্মুক্ত বিশ্ব ইঙ্গিত: ❌