डेटाबेस के लिए MCP टूलबॉक्स: MCP क्लाइंट के लिए BigQuery डेटासेट उपलब्ध कराना

1. परिचय

इस कोडलैब में, डेटाबेस के लिए एमसीपी टूलबॉक्स का इस्तेमाल करके, अपने BigQuery डेटासेट उपलब्ध कराए जाएंगे.

इस कोडलैब में, आपको एक-एक करके ये काम करने होंगे:

  1. BigQuery के सार्वजनिक डेटासेट प्रोग्राम से, किसी खास BigQuery डेटासेट ("Google Cloud के रिलीज़ नोट") की पहचान करें.
  2. डेटाबेस के लिए एमसीपी टूलबॉक्स सेट अप करें, जो BigQuery डेटासेट से कनेक्ट होता है.
  3. Agent Development Kit (ADK) का इस्तेमाल करके एक एजेंट डेवलप करना. यह एजेंट, MCP टूलबॉक्स का इस्तेमाल करके Google Cloud के रिलीज़ नोट के बारे में उपयोगकर्ता की क्वेरी के जवाब देगा

आपको क्या करना होगा

  • डेटाबेस के लिए एमसीपी टूलबॉक्स को सेट अप करें, ताकि Google Cloud के रिलीज़ नोट और सार्वजनिक BigQuery डेटासेट को एमसीपी इंटरफ़ेस के तौर पर, अन्य एमसीपी क्लाइंट (आईडीई, टूल वगैरह) के लिए उपलब्ध कराया जा सके.

आपको क्या सीखने को मिलेगा

  • BigQuery के सार्वजनिक डेटासेट एक्सप्लोर करें और कोई डेटासेट चुनें.
  • हमें एमसीपी क्लाइंट के लिए BigQuery का जो सार्वजनिक डेटासेट उपलब्ध कराना है उसके लिए, डेटाबेस के लिए एमसीपी टूलबॉक्स सेट अप करें.
  • लोगों की क्वेरी के जवाब देने के लिए, Agent Development Kit (ADK) का इस्तेमाल करके एजेंट को डिज़ाइन और डेवलप करें.
  • लोकल एनवायरमेंट में, एजेंट और डेटाबेस के लिए MCP Toolbox को आज़माएं.

आपको इन चीज़ों की ज़रूरत होगी

  • Chrome वेब ब्राउज़र.
  • लोकल Python डेवलपमेंट एनवायरमेंट.

2. शुरू करने से पहले

प्रोजेक्ट बनाना

  1. Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर जाकर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
  2. पक्का करें कि आपके क्लाउड प्रोजेक्ट के लिए बिलिंग की सुविधा चालू हो. किसी प्रोजेक्ट के लिए बिलिंग की सुविधा चालू है या नहीं, यह देखने का तरीका जानें .
  3. आपको Cloud Shell का इस्तेमाल करना होगा. यह Google Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है. इसमें bq पहले से लोड होता है. Google Cloud Console में सबसे ऊपर मौजूद, Cloud Shell चालू करें पर क्लिक करें.

Cloud Shell बटन की इमेज चालू करें

  1. Cloud Shell से कनेक्ट होने के बाद, यह देखने के लिए कि आपकी पुष्टि हो चुकी है और प्रोजेक्ट को आपके प्रोजेक्ट आईडी पर सेट किया गया है, यहां दिए गए कमांड का इस्तेमाल करें:
gcloud auth list
  1. यह पुष्टि करने के लिए कि gcloud कमांड को आपके प्रोजेक्ट के बारे में पता है, Cloud Shell में यहां दिया गया कमांड चलाएं.
gcloud config list project
  1. अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए इस निर्देश का इस्तेमाल करें:
gcloud config set project <YOUR_PROJECT_ID>
  1. यहां दिए गए निर्देश का इस्तेमाल करके, ज़रूरी एपीआई चालू करें. इसमें कुछ मिनट लग सकते हैं. इसलिए, कृपया इंतज़ार करें.
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 के रिलीज़ नोट वाले आधिकारिक वेबपेज पर नियमित रूप से अपडेट किया जाता है. इसका स्क्रीनशॉट यहां दिया गया है:

b0776edf14594ef4.png

आपके पास फ़ीड यूआरएल की सदस्यता लेने का विकल्प होता है. हालांकि, अगर हम एजेंट चैट में रिलीज़ नोट के बारे में पूछ सकें, तो क्या होगा. जैसे, "मुझे Google Cloud के रिलीज़ नोट के बारे में अपडेट करो".

4. डेटाबेस के लिए एमसीपी टूलबॉक्स

डेटाबेस के लिए एमसीपी टूलबॉक्स, डेटाबेस के लिए एक ओपन सोर्स एमसीपी सर्वर है. इसे एंटरप्राइज़-ग्रेड और प्रोडक्शन-क्वालिटी को ध्यान में रखकर डिज़ाइन किया गया है. यह आपको टूल को आसानी से, तेज़ी से, और ज़्यादा सुरक्षित तरीके से डेवलप करने की सुविधा देता है. यह कनेक्शन पूलिंग, पुष्टि करने की प्रोसेस वगैरह जैसी मुश्किलों को मैनेज करता है.

टूलबॉक्स की मदद से, जेन एआई टूल बनाए जा सकते हैं. इससे आपके एजेंट, डेटाबेस में मौजूद डेटा को ऐक्सेस कर पाते हैं. टूलबॉक्स में ये सुविधाएं मिलती हैं:

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

टूलबॉक्स, आपके ऐप्लिकेशन के ऑर्केस्ट्रेशन फ़्रेमवर्क और आपके डेटाबेस के बीच काम करता है. यह एक कंट्रोल प्लेन उपलब्ध कराता है, जिसका इस्तेमाल टूल में बदलाव करने, उन्हें डिस्ट्रिब्यूट करने या उन्हें शुरू करने के लिए किया जाता है. यह आपके टूल को मैनेज करने की प्रोसेस को आसान बनाता है. इसके लिए, यह टूल को सेव करने और अपडेट करने के लिए एक जगह उपलब्ध कराता है. इससे एजेंट और ऐप्लिकेशन के बीच टूल शेयर किए जा सकते हैं. साथ ही, ऐप्लिकेशन को फिर से डिप्लॉय किए बिना उन टूल को अपडेट किया जा सकता है.

c23b0d5042e239fb.png

आसान शब्दों में खास जानकारी पाने के लिए:

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

इस ब्लॉग पोस्ट में, हमारा फ़ोकस यहां हाइलाइट की गई चीज़ों पर होगा:

f1df59a67e5c668e.png

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

5. Google Cloud की रिलीज़ से जुड़ी जानकारी के लिए BigQuery डेटासेट

Google Cloud Public Dataset Program एक ऐसा प्रोग्राम है जो आपके ऐप्लिकेशन के लिए कई तरह के डेटासेट उपलब्ध कराता है. ऐसा ही एक डेटासेट, Google Cloud की रिलीज़ नोट का डेटाबेस है. इस डेटासेट में वही जानकारी मिलती है जो Google Cloud के आधिकारिक रिलीज़ नोट वाले वेबपेज पर मिलती है. यह सार्वजनिक तौर पर क्वेरी किया जा सकने वाला डेटासेट है.

adb5593504dbb71d.png

टेस्ट के तौर पर, मैंने नीचे दी गई आसान क्वेरी चलाकर डेटासेट की पुष्टि की है:

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.13.1
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 tools.yaml".

YOUR_PROJECT_ID की वैल्यू को अपने Google Cloud प्रोजेक्ट आईडी से बदलना न भूलें.

kind: source
name: my-bq-source
type: bigquery
project: YOUR_PROJECT_ID
---
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

आइए, फ़ाइल के बारे में कम शब्दों में जानते हैं:

  1. सोर्स, आपके अलग-अलग डेटा सोर्स को दिखाते हैं. कोई टूल इन डेटा सोर्स के साथ इंटरैक्ट कर सकता है. सोर्स, एक ऐसे डेटा सोर्स को दिखाता है जिससे कोई टूल इंटरैक्ट कर सकता है. अपने tools.yaml फ़ाइल के सोर्स सेक्शन में, सोर्स को मैप के तौर पर तय किया जा सकता है. आम तौर पर, सोर्स कॉन्फ़िगरेशन में डेटाबेस से कनेक्ट करने और उससे इंटरैक्ट करने के लिए ज़रूरी जानकारी होती है. इस उदाहरण में, हमने BigQuery सोर्स my-bq-source को तय किया है. आपको अपना Google Cloud प्रोजेक्ट आईडी देना होगा. ज़्यादा जानकारी के लिए, सोर्स का रेफ़रंस देखें.
  2. टूल से यह तय होता है कि कोई एजेंट कौनसी कार्रवाइयाँ कर सकता है. जैसे, किसी सोर्स से डेटा पढ़ना और उसमें डेटा लिखना. टूल, एक ऐसी कार्रवाई को दिखाता है जो आपका एजेंट कर सकता है. जैसे, एसक्यूएल स्टेटमेंट चलाना. tools.yaml फ़ाइल के टूल सेक्शन में, टूल को मैप के तौर पर तय किया जा सकता है. आम तौर पर, किसी टूल को कार्रवाई करने के लिए सोर्स की ज़रूरत होती है. हमारे मामले में, हम एक टूल search_release_notes_bq तय करते हैं. यह BigQuery के उस सोर्स my-bq-source को रेफ़र करता है जिसे हमने पहले चरण में तय किया था. इसमें वह स्टेटमेंट और निर्देश भी शामिल है जिसका इस्तेमाल एआई एजेंट के क्लाइंट करेंगे. ज़्यादा जानकारी के लिए, टूल का रेफ़रंस देखें.
  3. आखिर में, हमारे पास टूलसेट है. इसकी मदद से, टूल के ऐसे ग्रुप बनाए जा सकते हैं जिन्हें एक साथ लोड किया जा सकता है. इसका इस्तेमाल, एजेंट या ऐप्लिकेशन के आधार पर अलग-अलग ग्रुप तय करने के लिए किया जा सकता है. हमारे मामले में, हमारे पास टूलसेट की परिभाषा है. इसमें हमने फ़िलहाल सिर्फ़ एक मौजूदा टूल search_release_notes_bq को परिभाषित किया है. आपके पास एक से ज़्यादा टूलसेट हो सकते हैं. इनमें अलग-अलग टूल का कॉम्बिनेशन होता है.

इसलिए, फ़िलहाल हमने सिर्फ़ एक टूल तय किया है. यह टूल, क्वेरी के मुताबिक पिछले सात दिनों के रिलीज़ नोट दिखाता है. हालांकि, पैरामीटर के साथ अलग-अलग कॉम्बिनेशन भी बनाए जा सकते हैं.

डेटाबेस के लिए एमसीपी टूलबॉक्स में, BigQuery डेटा सोर्स कॉन्फ़िगरेशन में कॉन्फ़िगरेशन से जुड़ी कुछ और जानकारी देखें.

8. डेटाबेस के लिए MCP Toolbox की टेस्टिंग

हमने mcp-toolbox फ़ोल्डर में मौजूद tools.yaml फ़ाइल का इस्तेमाल करके, Toolbox को डाउनलोड और कॉन्फ़िगर किया है. आइए, इसे पहले लोकल तौर पर चलाकर देखते हैं.

यह कमांड चलाएं:

./toolbox --config "tools.yaml"

सही तरीके से लागू होने पर, आपको सर्वर स्टार्टअप दिखेगा. साथ ही, आपको यहां दिए गए उदाहरण की तरह सैंपल आउटपुट दिखेगा:

2026-09-26T12:58:14.590825+05:30 INFO "Starting MCP Toolbox for Databases version 1.13.1+binary.darwin.arm64.e14cda6" 
2026-09-26T12:58:14.59319+05:30 INFO "Initialized 1 sources: my-bq-source" 
2026-09-26T12:58:14.593198+05:30 INFO "Initialized 0 authServices: " 
2026-09-26T12:58:14.593201+05:30 INFO "Initialized 0 embeddingModels: " 
2026-09-26T12:58:14.59323+05:30 INFO "Initialized 1 tools: search_release_notes_bq" 
2026-09-26T12:58:14.593235+05:30 INFO "Initialized 0 prompts: " 
2026-09-26T12:58:14.593236+05:30 INFO "Initialized 0 resources: " 
2026-09-26T12:58:14.593238+05:30 INFO "Initialized 0 resource templates: " 
2026-09-26T12:58:14.593244+05:30 INFO "Initialized 2 groups: my_bq_toolset, default" 
2026-09-26T12:58:14.593259+05:30 WARN "wildcard (*) allows any website to access the primitives. This creates a security risk regardless of whether you are in a production or local development environment. Recommended to use --allowed-origins with specific local addresses." 
2026-09-26T12:58:14.593266+05:30 WARN "wildcard (*) hosts allow any domain to access this resource, making it vulnerable to DNS rebinding attacks regardless of whether you are in a production or local development environment. For improved security, use the --allowed-hosts flag to specify trusted domains." 
2026-09-26T12:58:14.593365+05:30 INFO "Server ready to serve!"  

MCP Toolbox सर्वर, डिफ़ॉल्ट रूप से पोर्ट 5000 पर चलता है. अगर आपको पता चलता है कि पोर्ट 5000 का इस्तेमाल पहले से ही किया जा रहा है, तो नीचे दिए गए कमांड के मुताबिक, किसी दूसरे पोर्ट (जैसे कि 7000) का इस्तेमाल करें. इसलिए, बाद के निर्देशों में 5000 पोर्ट के बजाय 7000 का इस्तेमाल करें.

./toolbox --config "tools.yaml" --port 7000

आइए, Cloud Shell का इस्तेमाल करके इसे आज़माएं.

Cloud Shell में, यहां दिखाई गई इमेज में दिए गए तरीके से वेब प्रीव्यू पर क्लिक करें:

b8a52769f092e5d0.png

पोर्ट बदलें पर क्लिक करें और पोर्ट को 5000 पर सेट करें. इसके बाद, बदलें और झलक देखें पर क्लिक करें.

3ccac41b1f8996c5.png

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

e2a7d3ddaac0c3be.png

डेटाबेस के लिए एमसीपी टूलबॉक्स के यूज़र इंटरफ़ेस (यूआई) के ज़रिए टूल की जांच करना

टूलबॉक्स, टूल के साथ सीधे तौर पर इंटरैक्ट करने के लिए विज़ुअल इंटरफ़ेस (टूलबॉक्स यूज़र इंटरफ़ेस) उपलब्ध कराता है. इसमें पैरामीटर में बदलाव किया जा सकता है, हेडर मैनेज किए जा सकते हैं, और कॉल किए जा सकते हैं. यह सब एक सामान्य वेब यूज़र इंटरफ़ेस में किया जा सकता है.

अगर आपको इसकी जांच करनी है, तो Toolbox Server को लॉन्च करने के लिए इस्तेमाल किए गए पिछले कमांड को --ui विकल्प के साथ चलाएं.

इसके लिए, डेटाबेस के लिए एमसीपी टूलबॉक्स सर्वर के पिछले इंस्टेंस को बंद करें. इसके बाद, यह निर्देश दें:

./toolbox --tools-file "tools.yaml" --ui

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

Flag --tools-file has been deprecated, please use --config instead
2026-09-26T12:59:21.662102+05:30 INFO "Starting MCP Toolbox for Databases version 1.13.1+binary.darwin.arm64.e14cda6" 
2026-09-26T12:59:21.663076+05:30 INFO "Initialized 1 sources: my-bq-source" 
2026-09-26T12:59:21.663084+05:30 INFO "Initialized 0 authServices: " 
2026-09-26T12:59:21.663087+05:30 INFO "Initialized 0 embeddingModels: " 
2026-09-26T12:59:21.663101+05:30 INFO "Initialized 1 tools: search_release_notes_bq" 
2026-09-26T12:59:21.663104+05:30 INFO "Initialized 0 prompts: " 
2026-09-26T12:59:21.663107+05:30 INFO "Initialized 0 resources: " 
2026-09-26T12:59:21.663109+05:30 INFO "Initialized 0 resource templates: " 
2026-09-26T12:59:21.663116+05:30 INFO "Initialized 2 groups: default, my_bq_toolset" 
2026-09-26T12:59:21.663124+05:30 WARN "wildcard (*) allows any website to access the primitives. This creates a security risk regardless of whether you are in a production or local development environment. Recommended to use --allowed-origins with specific local addresses." 
2026-09-26T12:59:21.663132+05:30 WARN "wildcard (*) hosts allow any domain to access this resource, making it vulnerable to DNS rebinding attacks regardless of whether you are in a production or local development environment. For improved security, use the --allowed-hosts flag to specify trusted domains." 
2026-09-26T12:59:21.663242+05:30 INFO "Server ready to serve!" 
2026-09-26T12:59:21.663249+05:30 INFO "Toolbox UI is up and running at: http://127.0.0.1:5000/ui" 

यूज़र इंटरफ़ेस (यूआई) यूआरएल पर क्लिक करें और पक्का करें कि यूआरएल के आखिर में /ui मौजूद हो. इससे आपको नीचे दिखाया गया यूज़र इंटरफ़ेस (यूआई) दिखेगा:

cfad8321357e4322.png

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

a315a6613e9e38ea.png

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

6632c2e2045b7330.png

9. Agent Development Kit (ADK) की मदद से एजेंट लिखना

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:
  --version  Show the version and exit.
  --help     Show this message and exit.
Commands:
  api_server   Starts a FastAPI server for agents.
  conformance  Conformance testing tools for ADK.
  create       Creates a new app in the current folder with prepopulated...
  deploy       Deploys agent to hosted environments.
  eval         Evaluates an agent given the eval sets.
  eval_set     Manage Eval Sets.
  migrate      ADK migration commands.
  optimize     Optimizes the root agent instructions using the GEPA...
  run          Runs an agent.
  telemetry    Manage telemetry settings.
  test         Runs pytest on agent test JSON files under the specified...
  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-3.8-flash मॉडल चुनें.
  • बैकएंड के लिए Vertex AI चुनें.
  • आपको अपना डिफ़ॉल्ट Google प्रोजेक्ट आईडी दिखेगा. उसे चुनें.
  • Google Cloud प्रोजेक्ट का मौजूदा क्षेत्र दिखेगा. पक्का करें कि आपने global टाइप किया हो.
Choose a model for the root agent:
1. gemini-3.5-flash
2. gemini-3.8-flash
3. Other models (fill later)
Choose model (1, 2, 3): 2

1. Google AI
2. Vertex AI
3. Login with Google
Choose a backend (1, 2, 3): 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_PROJECT_ID]: 
Enter Google Cloud region [us-central1]: global
Agent created in /Users/romin/my-agents/gcp_releasenotes_agent_app:
- .env
- .gitignore
- __init__.py
- agent.py

उस फ़ोल्डर को देखें जिसमें एजेंट के लिए डिफ़ॉल्ट टेंप्लेट और ज़रूरी फ़ाइलें बनाई गई हैं.

सबसे पहले, .env फ़ाइल के बारे में जानकारी दी गई है. जिसका कॉन्टेंट यहां दिखाया गया है:

GOOGLE_GENAI_USE_ENTERPRISE=1
GOOGLE_CLOUD_PROJECT=YOUR_GOOGLE_PROJECT_ID
GOOGLE_CLOUD_LOCATION=YOUR_GOOGLE_PROJECT_REGION

इन वैल्यू से पता चलता है कि हम Gemini का इस्तेमाल Gemini Enterprise के ज़रिए करेंगे. साथ ही, Google Cloud प्रोजेक्ट आईडी और जगह की जानकारी के लिए, इनसे जुड़ी वैल्यू का इस्तेमाल करेंगे.

इसके बाद, हमारे पास __init__.py फ़ाइल है. यह फ़ोल्डर को मॉड्यूल के तौर पर मार्क करती है. इसमें एक ऐसा स्टेटमेंट होता है जो agent.py फ़ाइल से एजेंट को इंपोर्ट करता है.

from . import agent

आखिर में, आइए agent.py फ़ाइल पर एक नज़र डालते हैं. कॉन्टेंट यहां दिया गया है:

from google.adk.agents.llm_agent import Agent
root_agent = Agent(
    model='gemini-3.8-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-3.8-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 am your Google Cloud Release Notes assistant. How can I help you today? Feel free to ask about recent updates, feature releases, deprecations, or announcements across Google Cloud products.
[user]: get me the google cloud release notes
[gcp_releasenotes_agent]: Here are the latest highlights from the Google Cloud Release Notes:
---

### **AI & Machine Learning**
* **Gemini Enterprise**: 
  * **Gemini 3.8 Flash** is now Generally Available (GA) and enabled by default in `global`, `us`, and `eu` regions.
* **Gemini Enterprise Agent Platform**: 
  * **Gemini 3.8 Live** is now GA, bringing improved voice quality, model reliability, and agent orchestration.
  * **Meta's Muse Spark 1.3** is in Preview (reasoning model with tool calling, MCP support, and 1M context window).
* **CX Agent Studio**: 
  * **Agent as a tool** is now GA.
  * Added **Composite models** for enterprise voice agents.
  * Introduced **Supervisor agents** to monitor active agent performance.
  * Added **Agent-to-agent (A2A) protocol tools** and integrations for WhatsApp, Instagram, and SecureCo.
* **Model Armor**: Prompt injection, jailbreak detection, and Responsible AI filters are now supported in Melbourne (`australia-southeast2`).
---

### **Compute & Infrastructure**
* **Compute Engine**: Standard snapshots deleted accidentally or maliciously are now retained in the **Recycle Bin for 3 days** before permanent erasure (Preview).
* **Confidential VM**: Support for **Intel TDX on `c4-standard-*`** machine types is now GA.
* **SAP on Google Cloud**: Certified the **X5 series** of memory-optimized bare metal machine types (Intel Granite Rapids CPU platform) for SAP HANA and SAP NetWeaver.
* **Cloud Workstations**: Cloud Workstations is now a covered product under the Google Cloud HIPAA BAA.
---

### **Containers & Networking**
* **Google Kubernetes Engine (GKE)**: **GKE ambient networking** is now in Preview (allowlist), providing a sidecarless, Layer 4 service mesh using Gateway API on GKE Dataplane V2.
* **Cloud Service Mesh**: Maintenance and security patch releases available for in-cluster versions `1.30.4-asm.14`, `1.29.7-asm.18`, and `1.28.10-asm.40`.
---

### **Data Analytics & Databases**
* **BigQuery**: In BigQuery Studio, the query editor results table now freezes row numbers on the left during horizontal scrolling (GA).
* **Memorystore for Valkey**: Valkey version 9.1 is now GA.
* **Looker**: Deployment of version 26.16; includes a long-polling concurrency guard, tile-level filter controls (Preview), and an OAuth authorization warning dialog.
* **Data Studio / Looker Studio**: 
  * Added private IP connectivity for Cloud SQL PostgreSQL databases.
..
..
..

ध्यान दें कि एजेंट, डेटाबेस के लिए MCP Toolbox (search_release_notes_bq) में कॉन्फ़िगर किए गए टूल का इस्तेमाल कर रहा है. साथ ही, BigQuery डेटासेट से डेटा को वापस पा रहा है और जवाब को उसी के मुताबिक फ़ॉर्मैट कर रहा है.

11. बधाई हो

बधाई हो, आपने डेटाबेस के लिए एमसीपी टूलबॉक्स को कॉन्फ़िगर कर लिया है. साथ ही, एमसीपी क्लाइंट में ऐक्सेस करने के लिए BigQuery डेटासेट को कॉन्फ़िगर कर लिया है.

रेफ़रंस दस्तावेज़