টুল: search_messages
কীওয়ার্ড এবং ফিল্টার ব্যবহার করে গুগল চ্যাট মেসেজ অনুসন্ধান করে। এটি ব্যবহারকারীর অ্যাক্সেস আছে এমন সমস্ত স্পেসে কাজ করে, অথবা একটি নির্দিষ্ট কথোপকথনের জন্য সীমাবদ্ধ করা যেতে পারে।
নিম্নলিখিত নমুনাটি দেখায় কিভাবে curl ব্যবহার করে ` search_messages MCP টুলটি চালু করা যায়।
| কার্ল অনুরোধ |
|---|
curl --location 'https://chatmcp.googleapis.com/mcp/v1' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "search_messages", "arguments": { // provide these details according to the tool MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
ইনপুট স্কিমা
কীওয়ার্ড এবং ফিল্টার ব্যবহার করে গুগল চ্যাট বার্তা অনুসন্ধান করার অনুরোধ। এটি ব্যবহারকারীর অ্যাক্সেস আছে এমন সমস্ত স্পেসে কাজ করে, অথবা একটি নির্দিষ্ট কথোপকথনের জন্য সীমাবদ্ধ করা যেতে পারে।
অনুসন্ধান বার্তা অনুরোধ
| JSON উপস্থাপনা |
|---|
{ "searchParameters": { object ( |
| ক্ষেত্র | |
|---|---|
searchParameters | আবশ্যক। অনুসন্ধানের জন্য ব্যবহৃত প্যারামিটারসমূহ। |
orderBy | ঐচ্ছিক। ফলাফলগুলো কোন ক্রমে ফেরত দেওয়া হবে তা নির্দিষ্ট করে। সমর্থিত মানগুলো হলো: |
pageSize | ঐচ্ছিক। ফেরত দেওয়া ফলাফলের সর্বোচ্চ সংখ্যা (সর্বোচ্চ ১০০টি পর্যন্ত)। নির্দিষ্ট না করা হলে, সর্বাধিক ২৫টি ফেরত দেওয়া হবে। |
pageToken | ঐচ্ছিক। পূর্ববর্তী |
অনুসন্ধান পরামিতি
| JSON উপস্থাপনা |
|---|
{ "keywords": [ string ], "conversationId": string, "sender": string, "isUnread": boolean, "hasLink": boolean, "startTime": string, "endTime": string, "mentionsMe": boolean, "conversationIncludesUser": string, "spaceDisplayNames": [ string ] } |
| ক্ষেত্র | |
|---|---|
keywords[] | ঐচ্ছিক। ফলাফল ফিল্টার করার জন্য ব্যবহৃত কীওয়ার্ডের একটি সেট। |
conversationId | ঐচ্ছিক। এটি search_conversations টুল থেকে প্রাপ্ত একটি নির্দিষ্ট কথোপকথন শনাক্তকারীর মধ্যে অনুসন্ধানকে সীমাবদ্ধ করে। ফরম্যাট: |
sender | ঐচ্ছিক। কোনো নির্দিষ্ট ব্যবহারকারীর বার্তা ফিল্টার করুন। প্রেরকের ইমেল অথবা রিসোর্স নেম ব্যবহার করা যেতে পারে। ব্যবহারকারীর রিসোর্স নেম |
isUnread | ঐচ্ছিক। প্রেরক ব্যবহারকারীর দ্বারা অপঠিত হয়নি এমন বার্তাগুলির জন্য ফিল্টার করুন। |
hasLink | ঐচ্ছিক। যেসব মেসেজে অন্তত একটি URL আছে, সেগুলোর জন্য ফিল্টার করুন। |
startTime | ঐচ্ছিক। এই সময়ের পরে তৈরি হওয়া বার্তাগুলির জন্য ফিল্টার করুন। ফরম্যাট: আইএসও ৮৬০১ টাইমস্ট্যাম্প। |
endTime | ঐচ্ছিক। এই সময়ের আগে তৈরি হওয়া বার্তাগুলির জন্য ফিল্টার করুন। ফরম্যাট: আইএসও ৮৬০১ টাইমস্ট্যাম্প। |
mentionsMe | ঐচ্ছিক। সেইসব মেসেজ ফিল্টার করুন যেগুলিতে কলকারী ব্যবহারকারীর নাম স্পষ্টভাবে উল্লেখ করা আছে। |
conversationIncludesUser | ঐচ্ছিক। ডিএম এবং গ্রুপ চ্যাটে থাকা সেইসব মেসেজ ফিল্টার করুন, যেগুলিতে নির্দিষ্ট ব্যবহারকারীর ইমেল বা আইডি অন্তর্ভুক্ত রয়েছে। |
spaceDisplayNames[] | ঐচ্ছিক। স্পেস নামের তালিকা দ্বারা ফিল্টার করুন; স্পেস ডিসপ্লে নামগুলো আংশিকভাবে মেলানো হয়। দ্রষ্টব্য: শুধুমাত্র শীর্ষ ৫টি মিল ফেরত দেওয়া হয়। |
অর্ডার অনুযায়ী
ফলাফলগুলো কোন ক্রমে ফেরত দেওয়া হবে তা নির্দিষ্ট করে। ডিফল্টরূপে, যদি is_unread-এর মান true সেট করা না থাকে, তাহলে RELEVANCE_DESC ব্যবহৃত হয়, অন্যথায় CREATE_TIME_DESC ব্যবহৃত হয়।
| এনাম | |
|---|---|
ORDER_BY_UNSPECIFIED | ডিফল্ট মান। |
CREATE_TIME_DESC | তৈরির সময় অনুসারে অবরোহী ক্রমে সাজান। |
RELEVANCE_DESC | প্রাসঙ্গিকতা অনুসারে অবরোহী ক্রমে সাজান। |
আউটপুট স্কিমা
গুগল চ্যাট বার্তা অনুসন্ধানের প্রতিক্রিয়া। যদি next_page_token-টি পূরণ করা থাকে, তাহলে ফলাফলের পরবর্তী পৃষ্ঠাটি আনার জন্য সেই টোকেনটি ব্যবহার করে SearchMessages ফাংশনটিকে আবার কল করা যেতে পারে।
অনুসন্ধান বার্তা প্রতিক্রিয়া
| JSON উপস্থাপনা |
|---|
{
"messages": [
{
object ( |
| ক্ষেত্র | |
|---|---|
messages[] | অনুসন্ধানের শর্তের সাথে মিলে যাওয়া মেসেজ অবজেক্টগুলোর তালিকা, যা |
nextPageToken | পরবর্তী পৃষ্ঠা আনার জন্য |
চ্যাট বার্তা
| JSON উপস্থাপনা |
|---|
{ "messageId": string, "threadId": string, "plaintextBody": string, "sender": { object ( |
| ক্ষেত্র | |
|---|---|
messageId | বার্তার রিসোর্স নাম। ফরম্যাট: |
threadId | এই বার্তাটি যে থ্রেডের অন্তর্গত। বার্তাটি আনথ্রেডেড হলে এটি খালি থাকবে। ফরম্যাট: স্পেস/{স্পেস}/থ্রেড/{থ্রেড} |
plaintextBody | বার্তার মূল অংশটি সাধারণ টেক্সট। |
sender | বার্তার প্রেরক। |
createTime | শুধুমাত্র আউটপুট। বার্তাটি তৈরি হওয়ার সময়কার টাইমস্ট্যাম্প। |
threadedReply | বার্তাটি একটি থ্রেড রিপ্লাই কিনা। |
attachments[] | বার্তার সাথে সংযুক্ত ফাইলগুলো রয়েছে। |
reactionSummaries[] | বার্তাটিতে ইমোজি প্রতিক্রিয়াগুলোর সারাংশ অন্তর্ভুক্ত করা হয়েছে। |
ব্যবহারকারী
| JSON উপস্থাপনা |
|---|
{
"userId": string,
"displayName": string,
"email": string,
"userType": enum ( |
| ক্ষেত্র | |
|---|---|
userId | চ্যাট ব্যবহারকারীর রিসোর্স নাম। ফরম্যাট: |
displayName | একজন চ্যাট ব্যবহারকারীর প্রদর্শিত নাম। |
email | ব্যবহারকারীর ইমেল ঠিকানা। এই ক্ষেত্রটি শুধুমাত্র তখনই পূরণ করা হয় যখন ব্যবহারকারীর ধরন মানুষ (HUMAN) হয়। |
userType | ব্যবহারকারীর ধরণ। |
চ্যাট সংযুক্তি মেটাডেটা
| JSON উপস্থাপনা |
|---|
{
"attachmentId": string,
"filename": string,
"mimeType": string,
"source": enum ( |
| ক্ষেত্র | |
|---|---|
attachmentId | সংযুক্তিটির রিসোর্স নাম। ফরম্যাট: spaces/{space}/messages/{message}/attachments/{attachment}. |
filename | সংযুক্তিটির নাম। |
mimeType | বিষয়বস্তুর ধরণ (MIME টাইপ)। |
source | সংযুক্তিটির উৎস। |
প্রতিক্রিয়া সারাংশ
| JSON উপস্থাপনা |
|---|
{ "emoji": string, "count": integer } |
| ক্ষেত্র | |
|---|---|
emoji | ইমোজি ইউনিকোড স্ট্রিং অথবা নিজস্ব ইমোজির নাম। |
count | সংশ্লিষ্ট ইমোজি ব্যবহার করে করা মোট প্রতিক্রিয়ার সংখ্যা। |
ব্যবহারকারীর ধরণ
গুগল চ্যাট ব্যবহারকারীর প্রকারভেদ।
| এনাম | |
|---|---|
USER_TYPE_UNSPECIFIED | অনির্দিষ্ট। |
HUMAN | মানব ব্যবহারকারী। |
APP | অ্যাপ ব্যবহারকারী। |
উৎস
সংযুক্তিটির উৎস।
| এনাম | |
|---|---|
SOURCE_UNSPECIFIED | সংরক্ষিত। |
DRIVE_FILE | ফাইলটি একটি গুগল ড্রাইভ ফাইল। |
UPLOADED_CONTENT | ফাইলটি চ্যাটে আপলোড করা হয়েছে। |
টুল টীকা
ধ্বংসাত্মক ইঙ্গিত: ❌ | স্ব-সূচক ইঙ্গিত: ✅ | শুধুমাত্র পঠনযোগ্য ইঙ্গিত: ✅ | উন্মুক্ত বিশ্ব ইঙ্গিত: ❌