Eski DMS MCP (alibabacloud-dms-mcp-server), Agent Data Gateway MCP'ye yükseltilmiş ve Alibaba Cloud Model Studio MCP Marketplace'te yayınlanmıştır. Yeni MCP; veri kaynağı ekleme süreçlerini, araç adlarını, kaynak tanımlayıcılarını ve çağrı parametrelerini değiştirir. Bu konuda, eski DMS MCP'den Agent Data Gateway MCP'ye nasıl geçiş yapacağınız açıklanmaktadır.
ve Alibaba Cloud Model Studio MCP Marketplace'te yayınlandı
Genel Bilgiler
Eski DMS MCP, Agent Data Gateway MCP. Yeni MCP; veri varlığı keşfi, izin sorguları, bilgi erişimi ve SQL çalıştırma işlemlerini standart MCP araçları halinde sunar. Tüm işlemler, Agent Data Gateway'in mevcut kimlik, izin, güvenlik ilkesi ve denetim kısıtlamalarına uygun olarak gerçekleştirilir.
Yeni sürüm, eski sürüme kıyasla aşağıdaki değişiklikleri içerir. Yükseltme işlemine başlamadan önce bu değişiklikleri gözden geçirin:
Veri kaynağı kaydı: Yeni MCP üzerinden verilere erişmeden önce DMS veri kaynaklarını Agent Data Gateway ile senkronize edin.
Araç adları:
executeScriptvegetDatabasegibi eski araçların yeriniexec_sqlvemeta_database_searchalmıştır.Kaynak tanımlayıcıları: Eski
db_id,database_idvetable_guidtanımlayıcılarının yerinicatalogUuid,databaseUuidvequalifiedNamealmıştır.Kimlik doğrulama: Eski MCP'nin erişim belirteci yalnızca kullanıcı izinlerini takip edebilir. Yeni MCP'nin belirteci aracılar için tasarlanmıştır ve daha ayrıntılı, esnek izin kontrollerini destekler.
Yordam
DMS Veri Kaynaklarını Senkronize Etme
Yeni MCP'yi kullanmaya başlamadan önce ilgili DMS veri kaynaklarını Agent Data Gateway ile senkronize edin. DMS, mevcut ilgili veri kaynaklarını 30 Kasım 2026 tarihinden önce Agent Data Gateway ile otomatik olarak senkronize etmeyi planlamaktadır. Bu tarihten önce yeni MCP'yi kullanmak istiyorsanız DMS veri kaynaklarını aşağıdaki adımları izleyerek manuel olarak senkronize edin:
Agent Data Gateway konsolu üzerinde oturum açın.
Sol gezinme bölmesinde seçeneğini seçin.
-
Connection Management sayfasında DMS Instance Sync düğmesini tıklayın.
NotAlternatif olarak, Agent Data Gateway konsolu içindeki Overview sayfasında Get Started öğesini tıklayın ve ardından Select Datasource bölümündeki DMS data source sync seçeneğine gidin.
DMS tarafından barındırılan örnekler arasından kullanmak istediğiniz veri kaynaklarını seçin ve senkronizasyonu tamamlayın. Yalnızca güvenli bir şekilde barındırılan DMS örnekleri senkronize edilebilir.
Bir veri kaynağını senkronize etmek, sadece kaynağın ağ geçidine bağlı olduğunu gösterir. Bu durum, mevcut aracının SQL yürütme izinlerine sahip olduğu anlamına gelmez. Bir veri kaynağı görünür ancak çalıştırma işlemi ACCESS_DENIED hatası döndürüyorsa konsoldan aracı kimliğini ve örnek izinlerini kontrol edin.
Aracı Kimliği Oluşturma
MCP'ye bağlanıp kullanmaya başlamadan önce aşağıdaki adımları izleyerek bir aracı kimliği oluşturun:
Agent Data Gateway konsolu üzerinde oturum açın.
Sol gezinme bölmesinde seçeneğini seçin ve ardından Create Agent Identity düğmesine tıklayın.
-
Açılan iletişim kutusunda aşağıdaki aracı kimliği parametrelerini yapılandırın ve Submit düğmesini tıklayın:
Parametre
Açıklama
Name
Aracı kimliği için bir ad girin.
AccessToken Expiration Time
Aracı erişim belirtecinin sona erme süresini ayarlayın. Boş bırakılması durumunda belirteç süresiz olarak geçerli kalır.
Permission Mode
Aracı kimliğinin izin modunu seçin:
-
Permissions Follow User: Aracı, mevcut kullanıcı izinlerini gerçek zamanlı olarak devralır.
-
Permission Narrowing Mode: Kullanıcı izinleri kapsamı dahilinde ihtiyaç duyulan aracı izinlerini seçin.
-
Independent permissions: Aracı, mevcut kullanıcı izinlerini devralmaz. Kimlik oluşturulduktan sonra aracı, veri izinlerini izin istekleri aracılığıyla elde eder.
-
İletişim kutusunda oluşturulan erişim belirtecini kopyalayın ve güvenli bir yerde saklayın, ardından Close düğmesini tıklayın. Erişim belirteci yalnızca oluşturma sırasında bir kez görüntülenir ve iletişim kutusunu kapattıktan sonra tekrar görülemez.
Agent Data Gateway MCP'ye Bağlanma
Veri kaynaklarını senkronize ettikten sonra yeni MCP'ye aşağıdaki yöntemlerden birini kullanarak bağlanın.
Doğrudan Bir MCP Uç Noktasına Bağlanma
-
Erişim belirtecinizin bulunduğu bölgeye karşılık gelen uç noktayı aşağıdaki tablodan seçin:
Bölge
MCP uç noktası
China (Hangzhou)https://dgate-mcp-cn-hangzhou.aliyuncs.com/mcp/dgate
China (Shanghai)https://dgate-mcp-cn-shanghai.aliyuncs.com/mcp/dgate
China (Beijing)https://dgate-mcp-cn-beijing.aliyuncs.com/mcp/dgate
China (Shenzhen)https://dgate-mcp-cn-shenzhen.aliyuncs.com/mcp/dgate
China (Zhangjiakou)https://dgate-mcp-cn-zhangjiakou.aliyuncs.com/mcp/dgate
China (Hong Kong)https://dgate-mcp-cn-hongkong.aliyuncs.com/mcp/dgate
Singaporehttps://dgate-mcp-ap-southeast-1.aliyuncs.com/mcp/dgate
Malaysia (Kuala Lumpur)https://dgate-mcp-ap-southeast-3.aliyuncs.com/mcp/dgate
Japan (Tokyo)https://dgate-mcp-ap-northeast-1.aliyuncs.com/mcp/dgate -
Aşağıdaki içeriği MCP istemci yapılandırmanıza ekleyin.
urldeğerini önceki adımda belirlediğiniz uç nokta ile değiştirin veAuthorizationdeğeriniBearer <ACCESS_TOKEN>şeklinde güncelleyin; burada<ACCESS_TOKEN>, Aracı kimliği oluşturma adımında kaydettiğiniz erişim belirtecidir.{ "mcpServers": { "dgate": { "url": "https://dgate-mcp-cn-hangzhou.aliyuncs.com/mcp/dgate", "headers": { "Authorization": "Bearer <ACCESS_TOKEN>" } } } }Yapılandırma dosyasının konumu ve arayüz girişi istemcilere göre farklılık gösterebilir. Ancak
urlveAuthorizationdeğerleri doğru yapılandırıldığı sürece hizmete bağlanabilirsiniz. Yapılandırmayı kaydettikten sonra MCP hizmetini yeniden yükleyin. Bazı istemciler araç listesini yenilemek için istemciyi yeniden başlatmanızı veya yeni bir oturum oluşturmanızı gerektirebilir.
MCP Araçlarını Değiştirme
Yeni MCP'ye bağlandıktan sonra uygulamalarınızdaki eski MCP araçlarını yenileriyle değiştirin. Aşağıdaki tabloda ana eski DMS MCP araçları ile yeni MCP araçları arasındaki eşleme ve açıklamalar listelenmiştir.
|
|
|
|
|
|
|
Eski Bu aracı yükseltirken dikkate alınması gereken hususlar için bkz. executeScript değiştirmeye ilişkin hususlar. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Eski Bu aracı yükseltirken dikkate alınması gereken hususlar ve örnekler için bkz. meta_table_list değiştirme örneği. |
|
|
|
|
Yeni sürümdeki kaynak keşif zinciri aşağıdaki gibi tekilleştirilmiştir:
catalogUuid
→ databaseUuid
→ table qualifiedName
→ columns, indexes, or SQL execution
Eski db_id, database_id ve table_guid değerleri yeni MCP ile doğrudan kullanılamaz. catalogUuid, databaseUuid ve qualifiedName değerlerini almak için yeni meta veri araçlarını yeniden kullanın.
Aracı Yükseltmesi
Aracınızın yeni MCP'ye sorunsuz bir şekilde geçiş yapmasına yardımcı olmak amacıyla sistem isteminize veya yükseltme isteminize aşağıdaki içeriği ekleyin:
You are using Agent Data Gateway MCP. Follow these call rules:
1. Do not call legacy DMS MCP tools such as executeScript, getDatabase,
getInstance, getTableDetailInfo, listTables, or searchDatabase.
2. The legacy instance is called a catalog in the new version:
Use meta_catalog_search to locate the instance and obtain the catalogUuid;
call meta_catalog_get when you need the details.
3. When you query databases:
- If the catalogUuid is known, call meta_database_list;
- If only the database name is known, call meta_database_search;
- After you obtain the databaseUuid, call meta_database_get for the details.
4. When you query tables, use meta_table_list and save the returned qualifiedName.
To query full table details, call meta_table_columns and
meta_table_indexes separately.
5. When you execute SQL, use exec_sql:
- Pass databaseUuid first;
- Submit only one SQL statement per call;
- Split multiple SQL statements into multiple sequential calls;
- If any statement fails, stop the subsequent calls and report the failure;
- Do not claim that multiple calls have transaction atomicity or are automatically rolled back.
6. When exec_sql returns NEEDS_CONFIRMATION, the user must review it first,
and then retry with the confirm reason; do not skip confirmation by default.
7. List tools use NextToken cursor-based pagination. When hasMore=true,
pass the returned NextToken as-is to get the next page instead of using legacy page-number pagination.
8. A visible data source does not mean that execution permission is granted. When ACCESS_DENIED occurs,
remind the user to check the agent identity and instance authorization, and do not retry the SQL repeatedly.
Ek
**executeScript Değiştirmeye İlişkin Hususlar**
Fiziksel veritabanı senaryolarında eski executeScript aracı birden fazla SQL deyimi alabilir ve bunları sırayla çalıştırabilir ancak tüm betik için işlem atomikliğini garanti etmez. Mantıksal veritabanı senaryolarında ise yalnızca tek bir SQL deyimine izin verilir. Yeni exec_sql aracı şu anda yalnızca tek bir SQL deyimi destekler ve toplu çoklu deyim çalıştırmayı desteklemez. Yükseltme sırasında aşağıdaki kurallara uyun:
Birden fazla SQL deyimini birden çok
exec_sqlçağrısına bölün.Deyimleri özgün betik sırasına göre tek tek çalıştırın.
Herhangi bir deyim başarısız olursa sonraki çağrıları durdurun ve hatayı bildirin.
Birden çok çağrının otomatik olarak geri alındığını veya işlem atomikliğine sahip olduğunu iddia etmeyin.
NEEDS_CONFIRMATIONdöndürüldüğünde manuel bir inceleme tamamlayın ve ardındanconfirmnedeni ile yeniden deneyin.Eski
logicparametresi yeni bir parametreyle eşleşmez. Hedef kaynak yenidatabaseUuidile ifade edilir. Ağ geçidine henüz bağlanmamış mantıksal veritabanları doğrudan yükseltilemez.
Tek SQL deyimi çağrı örneği:
{
"name": "exec_sql",
"arguments": {
"databaseUuid": "<database-uuid>",
"statement": "SELECT id, status FROM orders LIMIT 20",
"maxRows": 100,
"waitSeconds": 110
}
}
**meta_table_list Değiştirme Örneği**
Eski getTableDetailInfo aracının yerini meta_table_columns ve meta_table_indexes olmak üzere iki sorgu almıştır. Önce meta_table_list aracını kullanarak tablonun qualifiedName değerini alın, ardından sütunları ve dizinleri ayrı ayrı sorgulayın:
{"name":"meta_table_columns","arguments":{"databaseUuid":"<database-uuid>","tableQualifiedName":"trade.orders"}}
{"name":"meta_table_indexes","arguments":{"databaseUuid":"<database-uuid>","tableQualifiedName":"trade.orders"}}
Bu iki sonuç birlikte eski getTableDetailInfo aracının iş sonucu niteliğindedir.