1. परिचय
इस कोडलैब में, BigQuery डेटासेट उपलब्ध कराने के लिए, डेटाबेस के लिए एमसीपी टूलबॉक्स का इस्तेमाल किया जाएगा.
कोडलैब के ज़रिए, आपको यहां दिया गया तरीका अपनाना होगा:
- BigQuery के सार्वजनिक डेटासेट प्रोग्राम से, BigQuery के किसी डेटासेट ("Google Cloud Release Notes") की पहचान करें.
- डेटाबेस के लिए एमसीपी टूलबॉक्स सेट अप करें, जो BigQuery डेटासेट से कनेक्ट होता है.
- Agent Development Kit (ADK) का इस्तेमाल करके एक एजेंट डेवलप करना. यह एजेंट, MCP Toolbox का इस्तेमाल करके Google Cloud के रिलीज़ नोट के बारे में उपयोगकर्ता की क्वेरी के जवाब देगा
आपको क्या करना होगा
- डेटाबेस के लिए एमसीपी टूलबॉक्स सेट अप करें, ताकि Google Cloud के रिलीज़ नोट और सार्वजनिक BigQuery डेटासेट को एमसीपी इंटरफ़ेस के तौर पर अन्य एमसीपी क्लाइंट (आईडीई, टूल वगैरह) के लिए उपलब्ध कराया जा सके.
आपको क्या सीखने को मिलेगा
- BigQuery के सार्वजनिक डेटासेट एक्सप्लोर करें और कोई डेटासेट चुनें.
- हमें एमसीपी क्लाइंट के लिए BigQuery का जो सार्वजनिक डेटासेट उपलब्ध कराना है उसके लिए, डेटाबेस के लिए एमसीपी टूलबॉक्स सेट अप करें.
- उपयोगकर्ता के सवालों के जवाब देने के लिए, Agent Development Kit (ADK) का इस्तेमाल करके एजेंट को डिज़ाइन और डेवलप करें.
- लोकल एनवायरमेंट में, एजेंट और डेटाबेस के लिए एमसीपी टूलबॉक्स को आज़माएं.
आपको इन चीज़ों की ज़रूरत होगी
- Chrome वेब ब्राउज़र.
- लोकल Python डेवलपमेंट एनवायरमेंट.
2. शुरू करने से पहले
प्रोजेक्ट बनाना
- Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
- पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग चालू हो. यह देखने का तरीका जानें कि किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं .
- आपको Cloud Shell का इस्तेमाल करना होगा. यह Google Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है. इसमें bq पहले से लोड होता है. Google Cloud Console में सबसे ऊपर मौजूद, Cloud Shell चालू करें पर क्लिक करें.

- Cloud Shell से कनेक्ट होने के बाद, यह पुष्टि करें कि आपने पहले ही पुष्टि कर ली है. साथ ही, यह भी पुष्टि करें कि प्रोजेक्ट को आपके प्रोजेक्ट आईडी पर सेट किया गया है. इसके लिए, यहां दिया गया निर्देश इस्तेमाल करें:
gcloud auth list
- यह पुष्टि करने के लिए कि gcloud कमांड को आपके प्रोजेक्ट के बारे में पता है, Cloud Shell में यह कमांड चलाएं.
gcloud config list project
- अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए इस निर्देश का इस्तेमाल करें:
gcloud config set project <YOUR_PROJECT_ID>
- नीचे दिए गए निर्देश का इस्तेमाल करके, ज़रूरी एपीआई चालू करें. इसमें कुछ मिनट लग सकते हैं. इसलिए, कृपया इंतज़ार करें.
gcloud services enable cloudresourcemanager.googleapis.com \
servicenetworking.googleapis.com \
run.googleapis.com \
cloudbuild.googleapis.com \
cloudfunctions.googleapis.com \
aiplatform.googleapis.com \
sqladmin.googleapis.com \
compute.googleapis.com
कमांड के सही तरीके से लागू होने पर, आपको यहां दिखाए गए मैसेज जैसा कोई मैसेज दिखेगा:
Operation "operations/..." finished successfully.
gcloud कमांड के बजाय, कंसोल का इस्तेमाल करके भी ऐसा किया जा सकता है. इसके लिए, हर प्रॉडक्ट को खोजें या इस लिंक का इस्तेमाल करें.
अगर कोई एपीआई छूट जाता है, तो उसे लागू करने के दौरान कभी भी चालू किया जा सकता है.
gcloud कमांड और उनके इस्तेमाल के बारे में जानने के लिए, दस्तावेज़ देखें.
3. Google के रिलीज़ नोट का डेटासेट और एमसीपी क्लाइंट
सबसे पहले, Google Cloud के रिलीज़ नोट पर एक नज़र डालते हैं. इन्हें Google Cloud के आधिकारिक रिलीज़ नोट वाले वेबपेज पर नियमित रूप से अपडेट किया जाता है. इसका स्क्रीनशॉट यहां दिया गया है:

आपने फ़ीड यूआरएल की सदस्यता ली हो सकती है. हालांकि, अगर हम एजेंट चैट में रिलीज़ नोट के बारे में पूछ सकें, तो क्या होगा. जैसे, "Google Cloud के रिलीज़ नोट के बारे में मुझे अपडेट करो" जैसी कोई सामान्य क्वेरी.
4. डेटाबेस के लिए एमसीपी टूलबॉक्स
डेटाबेस के लिए एमसीपी टूलबॉक्स, डेटाबेस के लिए एक ओपन सोर्स एमसीपी सर्वर है. इसे एंटरप्राइज़-ग्रेड और प्रोडक्शन-क्वालिटी को ध्यान में रखकर डिज़ाइन किया गया है. यह आपको टूल को आसानी से, तेज़ी से, और ज़्यादा सुरक्षित तरीके से डेवलप करने की सुविधा देता है. इसके लिए, यह कनेक्शन पूलिंग, पुष्टि करने की प्रोसेस वगैरह जैसी मुश्किलों को मैनेज करता है.
टूलबॉक्स की मदद से, जनरेटिव एआई टूल बनाए जा सकते हैं. इससे आपके एजेंट, डेटाबेस में मौजूद डेटा को ऐक्सेस कर पाते हैं. टूलबॉक्स में ये सुविधाएं मिलती हैं:
- आसान डेवलपमेंट: अपने एजेंट में टूल को 10 से कम लाइनों के कोड में इंटिग्रेट करें. साथ ही, एक से ज़्यादा एजेंट या फ़्रेमवर्क के बीच टूल का फिर से इस्तेमाल करें. इसके अलावा, टूल के नए वर्शन को आसानी से डिप्लॉय करें.
- बेहतर परफ़ॉर्मेंस: कनेक्शन पूलिंग, पुष्टि करने की प्रोसेस वगैरह जैसे सबसे सही तरीके.
- बेहतर सुरक्षा: आपके डेटा को ज़्यादा सुरक्षित तरीके से ऐक्सेस करने के लिए, इंटिग्रेटेड ऑथराइज़ेशन
- एंड-टू-एंड निगरानी: OpenTelemetry के साथ काम करने की सुविधा के साथ, बॉक्स से बाहर की मेट्रिक और ट्रेसिंग.
- टूलबॉक्स की मदद से, डेटाबेस को एमसीपी की सुविधा वाले किसी भी एआई असिस्टेंट से आसानी से कनेक्ट किया जा सकता है. भले ही, वे आपके आईडीई में हों.
टूलबॉक्स, आपके ऐप्लिकेशन के ऑर्केस्ट्रेशन फ़्रेमवर्क और आपके डेटाबेस के बीच मौजूद होता है. यह एक कंट्रोल प्लेन उपलब्ध कराता है, जिसका इस्तेमाल टूल में बदलाव करने, उन्हें डिस्ट्रिब्यूट करने या उन्हें शुरू करने के लिए किया जाता है. यह आपके टूल को मैनेज करने की प्रोसेस को आसान बनाता है. इसके लिए, यह आपको टूल को सेव और अपडेट करने के लिए एक जगह उपलब्ध कराता है. इससे एजेंट और ऐप्लिकेशन के बीच टूल शेयर किए जा सकते हैं. साथ ही, ऐप्लिकेशन को फिर से डिप्लॉय किए बिना उन टूल को अपडेट किया जा सकता है.

आसान शब्दों में खास जानकारी पाने के लिए:
- MCP Toolbox, बाइनरी या कंटेनर इमेज के तौर पर उपलब्ध है. इसके अलावा, इसे सोर्स से भी बनाया जा सकता है.
- यह टूल का एक ऐसा सेट दिखाता है जिसे tools.yaml फ़ाइल के ज़रिए कॉन्फ़िगर किया जाता है. इन टूल को आपके डेटा सोर्स से कनेक्ट किया जा सकता है. इसमें, उन अलग-अलग डेटा सोर्स को देखा जा सकता है जिनके साथ यह काम करता है. जैसे, AlloyDB, BigQuery वगैरह.
- यह टूलबॉक्स अब एमसीपी के साथ काम करता है. इसलिए, आपके पास अपने-आप एक एमसीपी सर्वर एंडपॉइंट होता है. इसका इस्तेमाल एजेंट (आईडीई) कर सकते हैं. इसके अलावा, Agent Development Kit (ADK) जैसे अलग-अलग फ़्रेमवर्क का इस्तेमाल करके, एजेंट ऐप्लिकेशन डेवलप करते समय भी इनका इस्तेमाल किया जा सकता है.
इस ब्लॉग पोस्ट में, हमारा फ़ोकस यहां हाइलाइट की गई चीज़ों पर होगा:

संक्षेप में, हम डेटाबेस के लिए एमसीपी टूलबॉक्स में एक कॉन्फ़िगरेशन बनाएंगे. इससे यह पता चलेगा कि हमारे BigQuery डेटासेट से कैसे कनेक्ट करना है. इसके बाद, हम Agent Development Kit (ADK) का इस्तेमाल करके एक एजेंट डेवलप करेंगे. यह एजेंट, MCP Toolbox के एंडपॉइंट के साथ इंटिग्रेट होगा. इससे हमें अपने डेटासेट के बारे में पूछने के लिए, आम बोलचाल की भाषा में क्वेरी भेजने की सुविधा मिलेगी. इसे एक ऐसे एजेंटिक ऐप्लिकेशन के तौर पर समझें जिसे डेवलप किया जा रहा है. इसे आपके BigQuery डेटासेट से बातचीत करने का तरीका पता है और यह कुछ क्वेरी चलाता है.
5. Google Cloud के रिलीज़ नोट के लिए BigQuery डेटासेट
Google Cloud Public Dataset Program एक ऐसा प्रोग्राम है जो आपके ऐप्लिकेशन के लिए कई तरह के डेटासेट उपलब्ध कराता है. ऐसा ही एक डेटासेट, Google Cloud के रिलीज़ नोट का डेटाबेस है. इस डेटासेट में वही जानकारी मिलती है जो Google Cloud की आधिकारिक रिलीज़ नोट वाली वेबसाइट पर मिलती है. यह डेटासेट, सार्वजनिक तौर पर क्वेरी किए जा सकने वाले डेटासेट के तौर पर उपलब्ध है.

टेस्ट के तौर पर, मैंने नीचे दी गई आसान क्वेरी चलाकर डेटासेट की पुष्टि की है:
SELECT
product_name,description,published_at
FROM
`bigquery-public-data`.`google_cloud_release_notes`.`release_notes`
WHERE
DATE(published_at) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
GROUP BY product_name,description,published_at
ORDER BY published_at DESC
इससे मुझे रिलीज़ नोट के डेटासेट के उन रिकॉर्ड की सूची मिलती है जिन्हें पिछले सात दिनों में पब्लिश किया गया है.
इसे अपनी पसंद के किसी अन्य डेटासेट से बदलें. साथ ही, अपनी पसंद की क्वेरी और पैरामीटर का इस्तेमाल करें. अब हमें इसे डेटाबेस के लिए एमसीपी टूलबॉक्स में डेटा सोर्स और टूल के तौर पर सेट अप करना है. आइए, जानते हैं कि ऐसा कैसे किया जा सकता है.
6. डेटाबेस के लिए एमसीपी टूलबॉक्स इंस्टॉल करना
अपनी लोकल मशीन पर एक टर्मिनल खोलें और mcp-toolbox नाम का फ़ोल्डर बनाएं.
mkdir mcp-toolbox
नीचे दिए गए कमांड का इस्तेमाल करके, mcp-toolbox फ़ोल्डर पर जाएं:
cd mcp-toolbox
यहां दी गई स्क्रिप्ट का इस्तेमाल करके, डेटाबेस के लिए एमसीपी टूलबॉक्स का बाइनरी वर्शन इंस्टॉल करें. यहां दिया गया कमांड Linux के लिए है. हालांकि, अगर Mac या Windows का इस्तेमाल किया जा रहा है, तो पक्का करें कि सही बाइनरी डाउनलोड की जा रही हो. अपने ऑपरेटिंग सिस्टम और आर्किटेक्चर के लिए रिलीज़ पेज देखें और सही बाइनरी डाउनलोड करें.
export VERSION=1.1.0
curl -L -o toolbox https://storage.googleapis.com/mcp-toolbox-for-databases/v$VERSION/linux/amd64/toolbox
chmod +x toolbox
अब हमारे पास टूलबॉक्स का बाइनरी वर्शन है, जिसका इस्तेमाल किया जा सकता है. अगला चरण, हमारे डेटा सोर्स और अन्य कॉन्फ़िगरेशन के साथ टूलबॉक्स को कॉन्फ़िगर करना है.
7. डेटाबेस के लिए एमसीपी टूलबॉक्स को कॉन्फ़िगर करना
अब हमें tools.yaml फ़ाइल में अपने BigQuery डेटासेट और टूल तय करने होंगे. यह फ़ाइल, डेटाबेस के लिए एमसीपी टूलबॉक्स के लिए ज़रूरी है. टूलबॉक्स को कॉन्फ़िगर करने का मुख्य तरीका, tools.yaml फ़ाइल है.
उसी फ़ोल्डर यानी mcp-toolbox में tools.yaml नाम की एक फ़ाइल बनाएं. इसका कॉन्टेंट यहां दिया गया है.
Cloud Shell में उपलब्ध nano एडिटर का इस्तेमाल किया जा सकता है. nano कमांड यह है: "nano tools.yaml".
YOUR_PROJECT_ID वैल्यू को अपने Google Cloud प्रोजेक्ट आईडी से बदलना न भूलें.
kind: source
name: my-bq-source
type: bigquery
project: gcp-experiments-349209
---
kind: tool
name: search_release_notes_bq
type: bigquery-sql
source: my-bq-source
description: Use this tool to get information on Google Cloud Release Notes.
statement: |
SELECT
product_name,description,published_at
FROM
`bigquery-public-data`.`google_cloud_release_notes`.`release_notes`
WHERE
DATE(published_at) >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)
GROUP BY product_name,description,published_at
ORDER BY published_at DESC;
---
kind: toolset
name: my_bq_toolset
tools:
- search_release_notes_bq
आइए, फ़ाइल के बारे में कम शब्दों में जानते हैं:
- सोर्स, आपके अलग-अलग डेटा सोर्स को दिखाते हैं. टूल इन डेटा सोर्स के साथ इंटरैक्ट कर सकता है. सोर्स, एक ऐसे डेटा सोर्स को दिखाता है जिससे कोई टूल इंटरैक्ट कर सकता है. अपने tools.yaml फ़ाइल के sources सेक्शन में, सोर्स को मैप के तौर पर तय किया जा सकता है. आम तौर पर, सोर्स कॉन्फ़िगरेशन में डेटाबेस से कनेक्ट करने और उससे इंटरैक्ट करने के लिए ज़रूरी जानकारी होती है. इस उदाहरण में, हमने BigQuery सोर्स
my-bq-sourceको तय किया है. आपको अपना Google Cloud प्रोजेक्ट आईडी देना होगा. ज़्यादा जानकारी के लिए, सोर्स रेफ़रंस देखें. - टूल, ऐसी कार्रवाइयों के बारे में बताते हैं जो कोई एजेंट कर सकता है. जैसे, किसी सोर्स से डेटा पढ़ना और उसमें डेटा लिखना. टूल, ऐसी कार्रवाई को दिखाता है जो आपका एजेंट कर सकता है. जैसे, SQL स्टेटमेंट चलाना. tools.yaml फ़ाइल के टूल सेक्शन में, टूल को मैप के तौर पर तय किया जा सकता है. आम तौर पर, किसी टूल को कार्रवाई करने के लिए सोर्स की ज़रूरत होती है. इस उदाहरण में, हमने एक टूल
search_release_notes_bqको तय किया है. यह BigQuery के उस सोर्सmy-bq-sourceको रेफ़र करता है जिसे हमने पहले चरण में तय किया था. इसमें वह स्टेटमेंट और निर्देश भी शामिल है जिसका इस्तेमाल एआई एजेंट के क्लाइंट करेंगे. ज़्यादा जानकारी के लिए, टूल का रेफ़रंस देखें. - आखिर में, हमारे पास टूलसेट है. इसकी मदद से, टूल के ऐसे ग्रुप बनाए जा सकते हैं जिन्हें एक साथ लोड किया जा सकता है. यह एजेंट या ऐप्लिकेशन के आधार पर अलग-अलग ग्रुप तय करने के लिए काम आ सकता है. हमारे मामले में, हमारे पास टूलसेट की परिभाषा है. इसमें हमने फ़िलहाल सिर्फ़ एक मौजूदा टूल
search_release_notes_bqको परिभाषित किया है. आपके पास एक से ज़्यादा टूलसेट हो सकते हैं. इनमें अलग-अलग टूल का कॉम्बिनेशन होता है.
इसलिए, फ़िलहाल हमने सिर्फ़ एक टूल तय किया है. यह टूल, क्वेरी के हिसाब से पिछले सात दिनों के रिलीज़ नोट देता है. हालांकि, पैरामीटर के साथ अलग-अलग कॉम्बिनेशन भी बनाए जा सकते हैं.
डेटाबेस के लिए एमसीपी टूलबॉक्स में, BigQuery डेटा सोर्स कॉन्फ़िगरेशन में कॉन्फ़िगरेशन से जुड़ी कुछ और जानकारी देखें.
8. डेटाबेस के लिए एमसीपी टूलबॉक्स की टेस्टिंग
हमने mcp-toolbox फ़ोल्डर में मौजूद tools.yaml फ़ाइल का इस्तेमाल करके, Toolbox को डाउनलोड और कॉन्फ़िगर किया है. आइए, इसे पहले स्थानीय तौर पर चलाकर देखते हैं.
यह कमांड चलाएं:
./toolbox --config "tools.yaml"
स्क्रिप्ट के सही तरीके से चलने पर, आपको सर्वर स्टार्टअप दिखेगा. साथ ही, यहां दिए गए उदाहरण से मिलता-जुलता सैंपल आउटपुट दिखेगा:
2026-04-29T10:26:15.435384+05:30 INFO "Initialized 1 sources: my-bq-source"
2026-04-29T10:26:15.435424+05:30 INFO "Initialized 0 authServices: "
2026-04-29T10:26:15.435428+05:30 INFO "Initialized 0 embeddingModels: "
2026-04-29T10:26:15.435446+05:30 INFO "Initialized 1 tools: search_release_notes_bq"
2026-04-29T10:26:15.435456+05:30 INFO "Initialized 2 toolsets: my_bq_toolset, default"
2026-04-29T10:26:15.435461+05:30 INFO "Initialized 0 prompts: "
2026-04-29T10:26:15.435467+05:30 INFO "Initialized 1 promptsets: default"
2026-04-29T10:26:15.435487+05:30 WARN "wildcard (`*`) allows all origin to access the resource and is not secure. Use it with cautious for public, non-sensitive data, or during local development. Recommended to use `--allowed-origins` flag"
2026-04-29T10:26:15.435508+05:30 WARN "wildcard (`*`) allows all hosts to access the resource and is not secure. Use it with cautious for public, non-sensitive data, or during local development. Recommended to use `--allowed-hosts` flag to prevent DNS rebinding attacks"
2026-04-29T10:26:15.435728+05:30 INFO "Server ready to serve!"
MCP Toolbox सर्वर, डिफ़ॉल्ट रूप से पोर्ट 5000 पर चलता है. अगर आपको पता चलता है कि पोर्ट 5000 का इस्तेमाल पहले से ही किया जा रहा है, तो नीचे दिए गए निर्देश के मुताबिक, किसी दूसरे पोर्ट (जैसे कि 7000) का इस्तेमाल करें. इसलिए, बाद के निर्देशों में 5000 पोर्ट के बजाय 7000 का इस्तेमाल करें.
./toolbox --config "tools.yaml" --port 7000
आइए, Cloud Shell का इस्तेमाल करके इसकी जांच करें.
नीचे दिए गए तरीके से, Cloud Shell में वेब प्रीव्यू पर क्लिक करें:

पोर्ट बदलें पर क्लिक करें और पोर्ट को नीचे दिखाए गए तरीके से 5000 पर सेट करें. इसके बाद, बदलें और झलक देखें पर क्लिक करें.

इससे यह आउटपुट मिलना चाहिए:

डेटाबेस के लिए MCP टूलबॉक्स के यूज़र इंटरफ़ेस (यूआई) के ज़रिए टूल की जांच करना
टूलबॉक्स, टूल के साथ सीधे तौर पर इंटरैक्ट करने के लिए विज़ुअल इंटरफ़ेस (टूलबॉक्स यूज़र इंटरफ़ेस) उपलब्ध कराता है. इसमें पैरामीटर में बदलाव करने, हेडर मैनेज करने, और कॉल एक्ज़ीक्यूट करने की सुविधा मिलती है. यह सब एक सामान्य वेब यूज़र इंटरफ़ेस में किया जा सकता है.
अगर आपको इसकी जांच करनी है, तो टूलबॉक्स सर्वर को लॉन्च करने के लिए इस्तेमाल की गई पिछली कमांड को --ui विकल्प के साथ चलाएं.
इसके लिए, एमसीपी टूलबॉक्स फ़ॉर डेटाबेस सर्वर के पिछले इंस्टेंस को बंद करें. इसके बाद, यह निर्देश दें:
./toolbox --tools-file "tools.yaml" --ui
आपको ऐसा आउटपुट दिखेगा जिसमें यह बताया गया हो कि सर्वर, हमारे डेटा सोर्स से कनेक्ट हो गया है. साथ ही, टूलसेट और टूल लोड हो गए हैं. यहां एक सैंपल आउटपुट दिया गया है. इसमें बताया गया है कि टूलबॉक्स का यूज़र इंटरफ़ेस (यूआई) काम कर रहा है.
2026-04-29T10:29:44.750446+05:30 INFO "Initialized 1 sources: my-bq-source"
2026-04-29T10:29:44.750463+05:30 INFO "Initialized 0 authServices: "
2026-04-29T10:29:44.750467+05:30 INFO "Initialized 0 embeddingModels: "
2026-04-29T10:29:44.750474+05:30 INFO "Initialized 1 tools: search_release_notes_bq"
2026-04-29T10:29:44.750482+05:30 INFO "Initialized 2 toolsets: my_bq_toolset, default"
2026-04-29T10:29:44.750487+05:30 INFO "Initialized 0 prompts: "
2026-04-29T10:29:44.750493+05:30 INFO "Initialized 1 promptsets: default"
2026-04-29T10:29:44.7505+05:30 WARN "wildcard (`*`) allows all origin to access the resource and is not secure. Use it with cautious for public, non-sensitive data, or during local development. Recommended to use `--allowed-origins` flag"
2026-04-29T10:29:44.750512+05:30 WARN "wildcard (`*`) allows all hosts to access the resource and is not secure. Use it with cautious for public, non-sensitive data, or during local development. Recommended to use `--allowed-hosts` flag to prevent DNS rebinding attacks"
2026-04-29T10:29:44.750601+05:30 INFO "Server ready to serve!"
2026-04-29T10:29:44.750605+05:30 INFO "Toolbox UI is up and running at: http://127.0.0.1:5000/ui"
यूआई यूआरएल पर क्लिक करें और पक्का करें कि यूआरएल के आखिर में /ui मौजूद हो. इससे आपको नीचे दिखाया गया यूज़र इंटरफ़ेस (यूआई) दिखेगा:

कॉन्फ़िगर किए गए टूल देखने के लिए, बाईं ओर मौजूद टूल विकल्प पर क्लिक करें.हमारे मामले में, यह सिर्फ़ एक होना चाहिए, यानी कि search_release_notes_bq. इसे नीचे दिखाया गया है:

टूल (search_release_notes_bq) पर क्लिक करें. इससे एक पेज खुलेगा, जहां टूल को आज़माया जा सकता है. कोई पैरामीटर उपलब्ध नहीं होने की वजह से, नतीजे देखने के लिए टूल चलाएं पर क्लिक करें. यहां सैंपल रन दिखाया गया है:

9. Agent Development Kit (ADK) की मदद से एजेंट लिखना
एजेंट डेवलपमेंट किट (एडीके) इंस्टॉल करना
Cloud Shell में नया टर्मिनल टैब खोलें और नीचे दिए गए तरीके से my-agents नाम का फ़ोल्डर बनाएं. my-agents फ़ोल्डर पर भी जाएं.
mkdir my-agents
cd my-agents
अब हम venv का इस्तेमाल करके, वर्चुअल Python एनवायरमेंट बनाते हैं. इसके लिए, यह तरीका अपनाएं:
python -m venv .venv
वर्चुअल एनवायरमेंट को इस तरह चालू करें:
source .venv/bin/activate
langchain की डिपेंडेंसी के साथ-साथ, ADK और डेटाबेस के लिए MCP Toolbox पैकेज को इस तरह इंस्टॉल करें:
pip install google-adk toolbox-core
अब adk यूटिलिटी को इस तरह से चालू किया जा सकेगा.
adk
इससे आपको निर्देशों की एक सूची दिखेगी.
$ adk
Usage: adk [OPTIONS] COMMAND [ARGS]...
Agent Development Kit CLI tools.
Options:
--help Show this message and exit.
Commands:
api_server Starts a FastAPI server for agents.
create Creates a new app in the current folder with prepopulated agent template.
deploy Deploys agent to hosted environments.
eval Evaluates an agent given the eval sets.
run Runs an interactive CLI for a certain agent.
web Starts a FastAPI server with Web UI for agents.
पहली एजेंट ऐप्लिकेशन बनाना
अब हम adk का इस्तेमाल करके, Google Cloud Release Notes Agent Application के लिए एक स्केफ़ोल्डिंग बनाएंगे. इसके लिए, adk create कमांड का इस्तेमाल किया जाएगा. ऐप्लिकेशन का नाम **(gcp_releasenotes_agent_app)**होगा. यह जानकारी नीचे दी गई है.
adk create gcp_releasenotes_agent_app
यह तरीका अपनाएं और इनमें से कोई विकल्प चुनें:
- रूट एजेंट के लिए मॉडल चुनने वाला Gemini मॉडल.
- बैकएंड के लिए Vertex AI को चुनें.
- आपको अपना डिफ़ॉल्ट Google प्रोजेक्ट आईडी और क्षेत्र दिखेगा. डिफ़ॉल्ट सेटिंग को ही चुनें.
Choose a model for the root agent:
1. gemini-2.5-flash
2. Other models (fill later)
Choose model (1, 2): 1
1. Google AI
2. Vertex AI
Choose a backend (1, 2): 2
You need an existing Google Cloud account and project, check out this link for details:
https://google.github.io/adk-docs/get-started/quickstart/#gemini---google-cloud-vertex-ai
Enter Google Cloud project ID [YOUR_GOOGLE_PROJECT_ID]:
Enter Google Cloud region [us-central1]:
Agent created in ../my-agents/gcp_releasenotes_agent_app:
- .env
- __init__.py
- agent.py
उस फ़ोल्डर को देखें जिसमें एजेंट के लिए डिफ़ॉल्ट टेंप्लेट और ज़रूरी फ़ाइलें बनाई गई हैं.
सबसे पहले, .env फ़ाइल है. जिसका कॉन्टेंट यहां दिया गया है:
GOOGLE_GENAI_USE_VERTEXAI=1
GOOGLE_CLOUD_PROJECT=YOUR_GOOGLE_PROJECT_ID
GOOGLE_CLOUD_LOCATION=YOUR_GOOGLE_PROJECT_REGION
इन वैल्यू से पता चलता है कि हम Vertex AI के ज़रिए Gemini का इस्तेमाल करेंगे. साथ ही, Google Cloud प्रोजेक्ट आईडी और जगह की वैल्यू का इस्तेमाल करेंगे.
इसके बाद, हमारे पास __init__.py फ़ाइल है. यह फ़ोल्डर को मॉड्यूल के तौर पर मार्क करती है. इसमें एक ऐसा स्टेटमेंट होता है जो agent.py फ़ाइल से एजेंट को इंपोर्ट करता है.
from . import agent
आखिर में, आइए agent.py फ़ाइल के बारे में जानते हैं. कॉन्टेंट यहां दिया गया है:
from google.adk.agents import Agent
root_agent = Agent(
model='gemini-2.5-flash',
name='root_agent',
description='A helpful assistant for user questions.',
instruction='Answer user questions to the best of your knowledge',
)
यह सबसे आसान एजेंट है, जिसे ADK की मदद से लिखा जा सकता है. एडीके के दस्तावेज़ पेज के मुताबिक, एजेंट एक ऐसी यूनिट होती है जो अपने-आप काम करती है. इसे खास लक्ष्यों को पूरा करने के लिए डिज़ाइन किया गया है. एजेंट, टास्क पूरे कर सकते हैं, लोगों से इंटरैक्ट कर सकते हैं, बाहरी टूल का इस्तेमाल कर सकते हैं, और अन्य एजेंट के साथ मिलकर काम कर सकते हैं.
खास तौर पर, LLMAgent, जिसे आम तौर पर एजेंट के तौर पर जाना जाता है, लार्ज लैंग्वेज मॉडल (एलएलएम) का इस्तेमाल अपने मुख्य इंजन के तौर पर करता है. इससे वह आम बोलचाल की भाषा को समझ पाता है, तर्क दे पाता है, प्लान बना पाता है, जवाब जनरेट कर पाता है, और यह तय कर पाता है कि आगे कैसे बढ़ना है या किन टूल का इस्तेमाल करना है. इसलिए, ये एजेंट भाषा से जुड़े कामों के लिए सबसे सही होते हैं. एलएलएम एजेंट के बारे में ज़्यादा जानने के लिए, यहां जाएं.
इस तरह, Agent Development Kit (ADK) का इस्तेमाल करके, बुनियादी एजेंट जनरेट करने के लिए हमारा स्केफ़ोल्डिंग पूरा हो जाता है. अब हम अपने एजेंट को एमसीपी टूलबॉक्स से कनेक्ट करने जा रहे हैं, ताकि वह उस टूल का इस्तेमाल करके उपयोगकर्ता की क्वेरी का जवाब दे सके. इस मामले में, यह Google Cloud के रिलीज़ नोट होंगे.
10. हमारे एजेंट को टूल से कनेक्ट करना
अब हम इस एजेंट को टूल से कनेक्ट करने जा रहे हैं. ADK के संदर्भ में, टूल का मतलब एआई एजेंट को दी गई किसी खास सुविधा से है. इससे एआई एजेंट को कार्रवाई करने और दुनिया के साथ इंटरैक्ट करने में मदद मिलती है. इसके अलावा, यह एआई एजेंट को टेक्स्ट जनरेट करने और तर्क देने की क्षमताओं से आगे बढ़ने में भी मदद करता है.
इस उदाहरण में, हम अपने एजेंट को उन टूल से लैस करने जा रहे हैं जिन्हें हमने डेटाबेस के लिए MCP Toolbox में कॉन्फ़िगर किया है.
agent.py फ़ाइल में, यहां दिया गया कोड डालें. ध्यान दें कि हम कोड में डिफ़ॉल्ट पोर्ट 5000 का इस्तेमाल कर रहे हैं. हालांकि, अगर किसी दूसरे पोर्ट नंबर का इस्तेमाल किया जा रहा है, तो कृपया उसका इस्तेमाल करें.
from google.adk.agents import Agent
from toolbox_core import ToolboxSyncClient
toolbox = ToolboxSyncClient("http://127.0.0.1:5000")
# Load all the tools
tools = toolbox.load_toolset('my_bq_toolset')
root_agent = Agent(
name="gcp_releasenotes_agent",
model="gemini-2.5-flash",
description=(
"Agent to answer questions about Google Cloud Release notes."
),
instruction=(
"You are a helpful agent who can answer user questions about the Google Cloud Release notes. Use the tools to answer the question"
),
tools=tools,
)
अब हम उस एजेंट की जांच कर सकते हैं जो हमारे BigQuery डेटासेट से असली डेटा फ़ेच करेगा. इस डेटासेट को डेटाबेस के लिए एमसीपी टूलबॉक्स के साथ कॉन्फ़िगर किया गया है.
इसके लिए, यह तरीका अपनाएं:
Cloud Shell के एक टर्मिनल में, डेटाबेस के लिए एमसीपी टूलबॉक्स लॉन्च करें. ऐसा हो सकता है कि यह पहले से ही आपके सिस्टम पर पोर्ट 5000 पर चल रहा हो, क्योंकि हमने पहले इसकी जांच की थी. अगर ऐसा नहीं है, तो सर्वर शुरू करने के लिए, mcp-toolbox फ़ोल्डर में जाकर यह कमांड चलाएं:
./toolbox --config "tools.yaml"
आपको ऐसा आउटपुट दिखेगा जिसमें यह बताया गया हो कि सर्वर, हमारे डेटा सोर्स से कनेक्ट हो गया है. साथ ही, टूलसेट और टूल लोड हो गए हैं.
एमसीपी सर्वर के चालू होने के बाद, दूसरे टर्मिनल में नीचे दी गई adk run (my-agents फ़ोल्डर से) कमांड का इस्तेमाल करके एजेंट लॉन्च करें. अगर आपको पसंद है, तो adk web कमांड का भी इस्तेमाल किया जा सकता है.
$ adk run gcp_releasenotes_agent_app/
Running agent gcp_releasenotes_agent, type exit to exit.
[user]: Hello
[gcp_releasenotes_agent]: Hello! I'm here to help you with Google Cloud Release Notes. What would you like to know today?
[user]: get me the google cloud release notes
[gcp_releasenotes_agent]: Here are the Google Cloud Release Notes:
* **Cloud Asset Inventory** (Published: 2026-04-28)
The following resource types are publicly available through the ExportAssets, ListAssets, BatchGetAssetsHistory, QueryAssets, Feed, SearchAllResources, and SearchAllIamPolicies APIs.
* App Lifecycle Manager
* `saasservicemgmt.googleapis.com/Saas`
* `saasservicemgmt.googleapis.com/Tenant`
* `saasservicemgmt.googleapis.com/UnitKind`
* `saasservicemgmt.googleapis.com/Unit`
* `saasservicemgmt.googleapis.com/Release`
* Backup and DR
* `backupdr.googleapis.com/BackupPlanRevision`
* Parallelstore
* `parallelstore.googleapis.com/Instance`
* Vertex AI
* `aiplatform.googleapis.com/DeploymentResourcePool`
* **Google Cloud Contact Center as a Service** (Published: 2026-04-27)
**Call scheduling improvements**
We've made the following improvements to call scheduling for web SDK v3 and the headless web SDK:
* **Configurable time slots**. You can configure the length of call-scheduling time slots.
* **Day-based time slot selection**. End-users can browse available time slots organized by day.
* **Rescheduling**. If an end-user reopens the web SDK and has an existing scheduled call, they're prompted to manage that appointment (reschedule or cancel) before starting a new flow.
* **Cancellation**. End-users can cancel a previously scheduled call.
* **Queue-level configuration**. You can configure call scheduling at the queue level.
**Note:** Headless web SDK users must specify `useAdvancedCallScheduling: true` with calls to the `getTimeSlots` method to access these call scheduling improvements.
Administrators:
* There's a new **Scheduled Calls** pane on the **Settings > Calls** page.
* There's a new **Scheduled Calls** section in the **Settings > Queue > Web > SELECT_QUEUE** pane.
* We moved **Scheduled Call Countdown** and **Scheduled Call Expiration** from **Settings > Calls > Call Details** to **Settings > Calls > Scheduled Calls**.
* We've added the following settings to the **Settings > Calls > Scheduled Calls** pane:
* **Consumers can schedule calls up to SELECT_INTEGER day(s) in the future**
* **Static > Maximum calls per time slot**
User experience changes:
* For **Scheduled Calls**, if you select **Consumers can schedule calls up to SELECT_INTEGER day(s) in the future**, a new **Select a day** screen appears to end-users who reschedule a call.
* **Compute Engine** (Published: 2026-04-27)
**Generally available**: Compute Engine now offers support for AI zones. To learn more, see AI zones.
* **Cloud Storage** (Published: 2026-04-27)
Cloud Storage now offers support for AI zones. To learn more, see AI zones.
* **Apigee hybrid** (Published: 2026-04-27)
**Sidecar authentication for Workload Identity Federation on non-GKE platforms**
Starting in version v1.14.4, you can now use a sidecar along with Workload Identity Federation on non-GKE platforms to mount security tokens from your preferred identity provider (IDP) for service account authentication. See Use sidecar authentication for Workload Identity Federation on non-GKE platforms.
* **Cloud Workstations** (Published: 2026-04-27)
The preconfigured base images include a notification when the `running_timeout` for the workstation is close to being reached.
* **Cloud Trace** (Published: 2026-04-27)
Cloud Trace is a service covered by the Cloud Obse
......
......
ध्यान दें कि एजेंट, डेटाबेस के लिए MCP Toolbox (search_release_notes_bq) में कॉन्फ़िगर किए गए टूल का इस्तेमाल कर रहा है. साथ ही, BigQuery डेटासेट से डेटा को वापस पा रहा है और जवाब को उसी के मुताबिक फ़ॉर्मैट कर रहा है.
11. बधाई हो
बधाई हो, आपने डेटाबेस के लिए एमसीपी टूलबॉक्स को कॉन्फ़िगर कर लिया है. साथ ही, एमसीपी क्लाइंट में ऐक्सेस करने के लिए BigQuery डेटासेट को कॉन्फ़िगर कर लिया है.