MCP Tools Reference: mapstools.googleapis.com

টুল: resolve_maps_urls

গুগল ম্যাপস ইউআরএল-এর একটি তালিকাকে প্রামাণিক গুগল ম্যাপস প্লেস আইডি-তে রূপান্তর করে।

কখন এই টুলটি ব্যবহার করতে হবে (অত্যন্ত জরুরি):

  • যখন ব্যবহারকারী এক বা একাধিক গুগল ম্যাপস শেয়ারিং লিঙ্ক বা ইউআরএল (যেমন 'https://maps.app.goo.gl/...', 'https://www.google.com/maps/place/...', বা 'https://maps.google.com/...') প্রদান করেন এবং আপনার সেগুলোর অন্তর্নিহিত ক্যানোনিকাল প্লেস আইডিগুলো বের করার প্রয়োজন হয়, তখন এই টুলটি ব্যবহার করুন।
  • একটি একক ব্যাচ অনুরোধে সমাধান করার জন্য আপনি সর্বোচ্চ ২০টি ইউআরএল নির্দিষ্ট করতে পারেন।

ইনপুট প্রয়োজনীয়তা (অত্যাবশ্যক):

  • urls (স্ট্রিং-এর অ্যারে - আবশ্যিক): সমাধান করার জন্য গুগল ম্যাপস ইউআরএল-এর তালিকা। প্রতিটি ইউআরএল অবশ্যই একটি বৈধ, একক-স্থানের গুগল ম্যাপস ইউআরএল হতে হবে।

ত্রুটি পরিচালনা (গুরুত্বপূর্ণ):

  • এটি একটি ব্যাচ প্রসেসিং টুল। একটি অনুরোধের ফলে 'মিশ্র ফলাফল' আসতে পারে (যেমন, কিছু URL সফলভাবে লোড হলেও অন্যগুলো ব্যর্থ হয়)।
  • আউটপুট entities তালিকাটি ইনপুট urls ইনডেক্সগুলোর সাথে ১:১ মিলবে, এটি নিশ্চিত। ইউআরএল রেজোলিউশন ব্যর্থ হলে, entities তালিকার সংশ্লিষ্ট ইনডেক্সে একটি খালি Entity মেসেজ (কোনো ফিল্ড সেট করা নেই) দেখা যাবে।
  • কোন নির্দিষ্ট URL ইনডেক্সটি ব্যর্থ হয়েছে তা শনাক্ত করতে আপনাকে অবশ্যই রেসপন্সের failed_requests ম্যাপ ফিল্ডটি চেক করতে হবে। failed_requests কী-টি রিকোয়েস্টের ব্যর্থ হওয়া URL-টির ০-ভিত্তিক ইনডেক্সকে নির্দেশ করে। আংশিক ব্যর্থতার কারণে পুরো ব্যাচ কলটি ব্যর্থ হয়েছে বলে ধরে নেবেন না।

নিম্নলিখিত নমুনাটি দেখায় কিভাবে curl ব্যবহার করে ` resolve_maps_urls MCP টুলটি চালু করতে হয়।

কার্ল অনুরোধ
                  
curl --location 'https://mapstools.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "resolve_maps_urls",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

ইনপুট স্কিমা

ResolveMapsUrls-এর জন্য অনুরোধ বার্তা।

ResolveMapsUrlsRequest

JSON উপস্থাপনা
{
  "urls": [
    string
  ]
}
ক্ষেত্র
urls[]

string

প্রয়োজনীয়। যে গুগল ম্যাপস ইউআরএলগুলো সমাধান করতে হবে। প্রতিটি ইউআরএল অবশ্যই একটি বৈধ গুগল ম্যাপস ইউআরএল হতে হবে, যেমন, https://maps.app.goo.gl/... , https://www.google.com/maps/place/... , অথবা https://maps.google.com/... । বর্তমানে, শুধুমাত্র একটি নির্দিষ্ট স্থানের ইউআরএলগুলোই সমর্থিত। আপনি সর্বোচ্চ ২০টি ইউআরএল উল্লেখ করতে পারেন।

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

ResolveMapsUrls-এর জন্য প্রতিক্রিয়া বার্তা।

ResolveMapsUrlsResponse

JSON উপস্থাপনা
{
  "entities": [
    {
      object (Entity)
    }
  ],
  "failedRequests": {
    integer: {
      object (Status)
    },
    ...
  }
}
ক্ষেত্র
entities[]

object ( Entity )

শুধুমাত্র আউটপুট। গুগল ম্যাপস ইউআরএল থেকে সমাধান করা সত্তাগুলোর তালিকা। অনুরোধের urls সূচকগুলোর সাথে ১:১ মিল থাকার নিশ্চয়তা দেওয়া হচ্ছে। সূচক i তে (যেখানে কোনো entity সেট করা নেই) একটি খালি বার্তা নির্দেশ করে যে সেই ইউআরএলটির জন্য সমাধান ব্যর্থ হয়েছে। যদি সমাধান ব্যর্থ হয়, অনুগ্রহ করে ত্রুটির অবস্থা জানতে failed_requests ফিল্ডটি দেখুন।

failedRequests

map (key: integer, value: object ( Status ))

শুধুমাত্র আউটপুট। গুগল ম্যাপস ইউআরএলগুলোর আংশিক ব্যর্থতা নির্দেশকারী একটি মানচিত্র। এর মূল চাবিকাঠি হলো urls ফিল্ডে থাকা ব্যর্থ অনুরোধটির সূচক। এর মান হলো ত্রুটির স্থিতি, যা সমাধান ব্যর্থ হওয়ার কারণ বিস্তারিতভাবে বর্ণনা করে।

একটি অবজেক্ট যা "key": value জোড়ের একটি তালিকা ধারণ করে। উদাহরণ: { "name": "wrench", "mass": "1.3kg", "count": "3" }

সত্তা

JSON উপস্থাপনা
{

  // Union field entity can be only one of the following:
  "place": string
  // End of list of possible types for union field entity.
}
ক্ষেত্র
ইউনিয়ন ফিল্ড entity । নির্ধারিত এনটিটি টাইপ। entity নিম্নলিখিতগুলির মধ্যে কেবল একটি হতে পারে:
place

string

সমাধানকৃত স্থানের রিসোর্স নাম।

ব্যর্থ অনুরোধ এন্ট্রি

JSON উপস্থাপনা
{
  "key": integer,
  "value": {
    object (Status)
  }
}
ক্ষেত্র
key

integer

value

object ( Status )

অবস্থা

JSON উপস্থাপনা
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
ক্ষেত্র
code

integer

স্ট্যাটাস কোডটি google.rpc.Code এর একটি enum ভ্যালু হওয়া উচিত।

message

string

ডেভেলপারদের জন্য একটি ত্রুটির বার্তা, যা ইংরেজিতে হওয়া উচিত। ব্যবহারকারীদের জন্য যেকোনো ত্রুটির বার্তা স্থানীয়করণ করে google.rpc.Status.details ফিল্ডে পাঠাতে হবে, অথবা ক্লায়েন্ট দ্বারা স্থানীয়করণ করতে হবে।

details[]

object

ত্রুটির বিবরণ বহনকারী বার্তাগুলির একটি তালিকা। এপিআই (API) ব্যবহারের জন্য কিছু সাধারণ বার্তা প্রকার রয়েছে।

একটি অবজেক্ট যাতে যেকোনো ধরনের ফিল্ড থাকে। "@type" নামে একটি অতিরিক্ত ফিল্ড থাকে, যা ধরনটি শনাক্তকারী একটি URI ধারণ করে। উদাহরণ: { "id": 1234, "@type": "types.example.com/standard/id" }

যেকোনো

JSON উপস্থাপনা
{
  "typeUrl": string,
  "value": string
}
ক্ষেত্র
typeUrl

string

একটি স্ল্যাশ-যুক্ত প্রিফিক্স এবং সম্পূর্ণ টাইপের নাম সমন্বিত একটি URI রেফারেন্সের মাধ্যমে সিরিয়ালাইজড প্রোটোবাফ মেসেজের ধরন শনাক্ত করে।

উদাহরণ: type.googleapis.com/google.protobuf.StringValue

এই স্ট্রিংটিতে অবশ্যই অন্তত একটি / অক্ষর থাকতে হবে, এবং শেষ / এর পরের অংশটি অবশ্যই টাইপের সম্পূর্ণ-যোগ্য নাম হতে হবে, যা ক্যানোনিকাল ফর্মে এবং শুরুতে কোনো ডট ছাড়া থাকবে। এই URI রেফারেন্সগুলিতে কোনো স্কিম লিখবেন না, যাতে ক্লায়েন্টরা এগুলোর সাথে যোগাযোগ করার চেষ্টা না করে।

প্রিফিক্সটি ইচ্ছামত হতে পারে এবং আশা করা হয় যে প্রোটোবাফ ইমপ্লিমেন্টেশনগুলো টাইপটি শনাক্ত করার জন্য শেষ / পর্যন্ত সবকিছু বাদ দিয়ে দেবে। type.googleapis.com/ একটি সাধারণ ডিফল্ট প্রিফিক্স যা কিছু পুরোনো ইমপ্লিমেন্টেশনের জন্য প্রয়োজন হয়। এই প্রিফিক্সটি টাইপের উৎস নির্দেশ করে না, এবং এটি ধারণকারী URI-গুলো কোনো অনুরোধে সাড়া দেবে বলে আশা করা হয় না।

সকল প্রকারের URL স্ট্রিং অবশ্যই বৈধ URI রেফারেন্স হতে হবে এবং এর সাথে একটি অতিরিক্ত শর্ত (টেক্সট ফরম্যাটের জন্য) হলো, রেফারেন্সের বিষয়বস্তুতে শুধুমাত্র অ্যালফানিউমেরিক অক্ষর, পার্সেন্ট-এনকোডেড এস্কেপ এবং নিম্নলিখিত সেটের অক্ষরসমূহ (বাইরের ব্যাকটিকগুলো বাদে) থাকতে হবে: /-.~_!$&()*+,;= । যদিও আমরা পার্সেন্ট এনকোডিংয়ের অনুমতি দিই, বিদ্যমান পার্সারগুলোর সাথে বিভ্রান্তি এড়াতে ইমপ্লিমেন্টেশনগুলোর উচিত নয় এগুলোকে আন-এস্কেপ করা। উদাহরণস্বরূপ, type.googleapis.com%2FFoo প্রত্যাখ্যান করা উচিত।

Any এর মূল নকশায়, এই টাইপ ইউআরএলগুলিতে একটি টাইপ রেজোলিউশন পরিষেবা চালু করার সম্ভাবনা বিবেচনা করা হয়েছিল, কিন্তু প্রোটোবাফ কখনও তা বাস্তবায়ন করেনি এবং এই ইউআরএলগুলির সাথে যোগাযোগ করাকে সমস্যাজনক ও একটি সম্ভাব্য নিরাপত্তা ঝুঁকি হিসেবে বিবেচনা করে। টাইপ ইউআরএলগুলির সাথে যোগাযোগ করার চেষ্টা করবেন না।

value

string ( bytes format)

type_url দ্বারা বর্ণিত টাইপের একটি প্রোটোবাফ সিরিয়ালাইজেশন ধারণ করে।

একটি বেস৬৪-এনকোডেড স্ট্রিং।

টুল টীকা

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