Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, Azure İşlevleri'ne uzak Model Bağlam Protokolü (MCP) sunucularını barındırma işlemi gösterilmektedir. Ayrıca, sunucu uç noktası yetkilendirmesini yapılandırmak ve yapay zeka araçlarınızın güvenliğini daha iyi sağlamak için yerleşik kimlik doğrulamasını kullanmayı da öğrenirsiniz.
Azure İşlevleri'nde uzak bir MCP sunucusunu barındırmanın iki yolu vardır:
| MCP sunucusu seçeneği | Description | En iyi... |
|---|---|---|
| MCP uzantı sunucusu | Azure İşlevleri MCP uzantısını kullanarak özel MCP sunucuları oluşturur ve burada uzantı tetikleyicisi araç uç noktalarınızı tanımlamanıza olanak tanır. Bu sunucular tüm İşlevler dillerinde desteklenir ve başka bir işlev uygulaması olarak geliştirilir, dağıtılır ve yönetilir. | İşlevler ve bağlama tabanlı programlama modeli hakkında bilgi sahibi olduğunuzda. |
| Kendi kendine barındırılan sunucu | İşlevler, standart MCP SDK'ları kullanılarak oluşturulan bir MCP sunucu projesini barındırabilir. | Sunucunuzu zaten resmi MCP SDK'larını kullanarak derlediyseniz ve Azure'da olay odaklı, sunucusuz ve ölçeklenebilir barındırmayı arıyorsanız. |
Uyarı
Resmi MCP SDK'larını kullanarak oluşturduğunuz Azure İşlevleri'nin MCP sunucularını barındırma özelliği şu anda önizleme aşamasındadır.
Bu öğretici, İşlevler tarafından desteklenen her iki MCP sunucusu seçeneğini de kapsar. Senaryonuza en uygun sekmeyi seçin.
Bu öğreticide, Visual Studio Code kullanarak şunları kullanacaksınız:
- MCP uzantısını kullanarak bir MCP sunucu projesi oluşturun.
- MCP sunucunuzu yerel olarak çalıştırın ve doğrulayın.
- Azure'da bir işlev uygulaması oluşturun.
- MCP sunucu projenizi dağıtın.
- Yerleşik kimlik doğrulamasını etkinleştirin.
Önemli
Bu makale şu anda yalnızca C#, Python ve TypeScript'i desteklemektedir. Hızlı başlangıcı tamamlamak için makalenin üst kısmındaki desteklenen dillerden birini seçin.
Bu makale, Azure İşlevleri için Node.js programlama modelinin 4. sürümünü destekler.
Bu makale, Azure İşlevleri için Python programlama modelinin 2. sürümünü destekler.
Önkoşullar
Şu uzantılara sahip Visual Studio Code:
Azure İşlevleri uzantısı. Bu uzantı , Azure İşlevleri Temel Araçları gerektirir ve kullanılabilir olmadığında yüklemeyi dener.
Azure CLI. Azure Cloud Shell'de Azure CLI komutlarını da çalıştırabilirsiniz.
Aktif bir aboneliğe sahip bir Azure hesabı. Ücretsiz bir hesap oluşturun.
MCP sunucu projenizi oluşturma
Tercih ettiğiniz dilde yerel olarak bir MCP sunucu projesi oluşturmak için Visual Studio Code'u kullanın.
Visual Studio Code'da F1 tuşuna basarak komut paletini açın. komutunu
Azure Functions: Create New Project...arayın ve çalıştırın.Proje çalışma alanınız için dizin konumunu seçin ve Seç'i seçin. Yeni bir klasör oluşturmanız veya proje çalışma alanı için boş bir klasör seçmeniz gerekir. Zaten bir çalışma alanının parçası olan bir proje klasörünü seçmeyin.
Aşağıdaki bilgileri istenen yerde sağlayın.
Uyarı Seleksiyon Proje türü seçme öğesini C#seçin..NET çalışma zamanı seçme öğesini .NET 8.0 LTSseçin.Projenizin ilk işlevi için bir şablon seçin öğesini MCP Tool triggerseçin.İşlev adı belirtin McpTriggeryazın.Ad alanı sağlama My.Functionsyazın.Yetkilendirme düzeyi Uzak MCP sunucusuna bağlanırken erişim anahtarı gerektiren öğesini seçin FUNCTION.Projenizi nasıl açmak istediğinizi seçin öğesini Open in current windowseçin.
Aşağıdaki bilgileri istenen yerde sağlayın.
Uyarı Seleksiyon Proje türü seçme öğesini TypeScriptseçin.Projenizin ilk işlevi için bir şablon seçin öğesini MCP Tool triggerseçin.İşlev adı belirtin mcpToolTriggeryazın.Yetkilendirme düzeyi Uzak MCP sunucusuna bağlanırken erişim anahtarı gerektiren öğesini seçin FUNCTION.Projenizi nasıl açmak istediğinizi seçin öğesini Open in current windowseçin.
Aşağıdaki bilgileri istenen yerde sağlayın.
Uyarı Seleksiyon Proje türü seçme öğesini Pythonseçin.Sanal ortam oluşturmak için Python yorumlayıcısını seçme Tercih ettiğiniz Python yorumlayıcıyı seçin. Bir seçenek gösterilmiyorsa Python ikili dosyanızın tam yolunu yazın. Projenizin ilk işlevi için bir şablon seçin öğesini MCP Tool triggerseçin.Oluşturmak istediğiniz işlevin adı mcp_triggergirin.Yetkilendirme düzeyi Uzak MCP sunucusuna bağlanırken erişim anahtarı gerektiren öğesini seçin FUNCTION.Projenizi nasıl açmak istediğinizi seçin öğesini Open in current windowseçin.
Visual Studio Code, bu bilgileri kullanarak BIR MCP sunucu tetikleyicisi için bir kod projesi oluşturur. Yerel proje dosyalarını Gezgin'de görüntüleyebilirsiniz.
MCP sunucusunu yerel olarak başlatma
İşlev uygulamalarının çalışması için bir depolama bileşeni gerekir. Sunucuyu başlatmadan önce yerel depolama öykünücüsİnİ başlatın:
local.setting.jsoniçinde, sahip
"AzureWebJobsStorage": "UseDevelopmentStorage=true"olduğunuzdan emin olun.Visual Studio Code'da F1 tuşuna basarak komut paletini açın. Komut paletinde
Azurite: Startiçin arama yapın ve seçin.Alt çubuğu denetleyin ve Azurite öykünme hizmetlerinin çalıştığını doğrulayın. Öyleyse, artık sunucuyu yerel olarak çalıştırabilirsiniz.
Yerel olarak çalışmaya başlamak için F5 tuşuna basın.
İşlev uygulamalarının çalışması için bir depolama bileşeni gerekir. Sunucuyu başlatmadan önce yerel depolama öykünücüsİnİ başlatın:
local.setting.json içinde,
"AzureWebJobsStorage": "UseDevelopmentStorage=true"sahip olduğunuzdan emin olun.Visual Studio Code'da F1 tuşuna basarak komut paletini açın. Komut paletinde
Azurite: Startiçin arama yapın ve seçin.Alt çubuğu denetleyin ve Azurite öykünme hizmetlerinin çalıştığını doğrulayın. Öyleyse, artık sunucuyu yerel olarak çalıştırabilirsiniz.
Yerel olarak çalışmaya başlamak için F5 tuşuna basın.
İşlev uygulamalarının çalışması için bir depolama bileşeni gerekir. Sunucuyu başlatmadan önce yerel depolama öykünücüsİnİ başlatın:
local.setting.json içinde,
"AzureWebJobsStorage": "UseDevelopmentStorage=true"sahip olduğunuzdan emin olun.Visual Studio Code'da F1 tuşuna basarak komut paletini açın. Komut paletinde
Azurite: Startiçin arama yapın ve seçin.Alt çubuğu denetleyin ve Azurite öykünme hizmetlerinin çalıştığını doğrulayın. Öyleyse, artık sunucuyu yerel olarak çalıştırabilirsiniz.
Yerel olarak çalışmaya başlamak için F5 tuşuna basın.
Sunucuyu test edin
.vscodedizinini bulun vemcp.jsonaçın. Düzenleyici sunucunun bağlantı bilgilerini eklemelidir.Sunucu adının üstündeki Başlat düğmesini seçerek sunucuyu başlatın.
Sunucuya bağlandığınızda, sunucu adının üzerinde kullanılabilen araç sayısını görürsünüz.
Aracı modunda Visual Studio Code Copilot sohbeti açın ve bir soru sorun. Örneğin, "#your-local-server-name ile selamla". Bu soru Copilot'un soruyu yanıtlamaya yardımcı olması için sunucuyu kullanmasını sağlar.
Copilot yerel MCP sunucusundan bir araç çalıştırmayı istediğinde İzin Ver'i seçin.
Durdur'u seçerek testi bitirdiğinizde sunucunun bağlantısını kesin ve
Cntrl+Cyerel olarak çalıştırmayı durdurun.
Tip
Copilot sohbet penceresinde, sohbet için kullanılabilen sunucuların ve araçların listesini görmek için alttaki araç simgesini seçin. Test sırasında yerel MCP sunucusunun denetlendiğinden emin olun.
Uzak MCP sunucusu yetkilendirmesi
Uzak MCP sunucu uç noktalarınızın yetkisiz kullanımını azaltmanın veya önlemenin iki yolu vardır:
| Yöntem | Description |
|---|---|
| Yerleşik sunucu kimlik doğrulaması (önizleme) | İşlevler, MCP yetkilendirme belirtimi protokolünün OAuth gereksinimlerini uygulayan yerleşik App Service kimlik doğrulamasını ve yetkilendirmesini içerir. Sunucuya erişmeye çalışan istemciler, bağlanmaya izin verilmeden önce kimlik doğrulaması için Microsoft Entra Id gibi yapılandırılmış bir kimlik sağlayıcısına yönlendirilir. Bu yöntem, araç uç noktalarınız için en yüksek güvenlik düzeyini sağlar. |
| Anahtar tabanlı kimlik doğrulaması | Varsayılan olarak İşlevler, MCP sunucu araçlarını kullanmaya çalışan istemcilerin istek üst bilgisinde paylaşılan bir gizli anahtar değeri sunması için bir erişim anahtarı gereksinimi uygular. OAuth tabanlı kimlik doğrulamasıyla aynı güvenlik düzeyini sağlamasa da, erişim anahtarları ortak araçlara erişmeyi zorlaştırır. OAuth tabanlı kimlik doğrulaması kullanırken sunucunuzdaki erişim anahtarlarını devre dışı bırakmak için erişim Anonymous düzeyini kullanın. |
Uyarı
Bu öğretici, diğer makalelerde App Service Kimlik Doğrulaması olarak da adlandırılan yerleşik sunucu yetkilendirme ve kimlik doğrulama özelliği için ayrıntılı yapılandırma yönergeleri içerir. Özelliğe genel bir bakış ve bazı kullanım kılavuzlarını Yerleşik sunucu yetkilendirmesini yapılandırma (önizleme) makalesinde bulabilirsiniz.
Anahtar tabanlı kimlik doğrulamayı devre dışı bırakma
Yerleşik sunucu yetkilendirme özelliği, Azure İşlevleri'nden ayrı bir bileşendir. Sunucu kimlik doğrulaması kullanırken, önce anonim erişime izin vererek anahtar tabanlı kimlik doğrulamasını devre dışı bırakmak en iyisidir.
MCP sunucunuzda konak tabanlı kimlik doğrulamasını devre dışı bırakmak için host.json dosyasında system.webhookAuthorizationLevel öğesini Anonymous olarak ayarlayın.
{
"version": "2.0",
"extensions": {
"mcp": {
...
"system": {
"webhookAuthorizationLevel": "Anonymous"
}
}
}
}
Azure'da işlev uygulamasını oluşturma
Azure'daki Flex Consumption planında MCP sunucunuzu barındıran bir işlev uygulaması oluşturun.
Azure portalında, menüden veya Giriş sayfasında Kaynak oluştur'u seçin.
Başlarken'i ve ardından İşlev Uygulaması'nın altında Oluştur'useçin.
Barındırma seçeneği belirleyin'in altında Esnek Tüketim
Temel Bilgiler sayfasında, aşağıdaki tabloda belirtilen işlev uygulaması ayarlarını kullanın:
Setting Önerilen değer Description Subscription Aboneliğiniz Yeni işlev uygulamanızı oluşturduğunuz abonelik. Kaynak Grubu myResourceGroup İşlev uygulamanızı oluşturduğunuz yeni kaynak grubunun adı. İşlev Uygulamasının adı Genel olarak benzersiz bir ad Yeni işlev uygulamanızı tanımlayan ad. Geçerli karakterler şunlardır: a-z(büyük/küçük harf duyarsız),0-9ve-.Region Tercih edilen bölge Size yakın veya işlevlerinizin erişebileceği diğer hizmetlere yakın bir bölge seçin. Desteklenmeyen bölgeler görüntülenmez. Daha fazla bilgi için bkz . Şu anda desteklenen bölgeleri görüntüleme. Çalışma zamanı yığını Tercih edilen dil Desteklenen dil çalışma zamanı yığınlarından birini seçin. Web için Visual Studio Code kullanılarak portal içi düzenleme şu anda yalnızca Node.js, PowerShell ve Python uygulamalarında kullanılabilir. C# sınıf kitaplığı ve Java işlevleri yerel olarak geliştirilmelidir. Sürüm Dil sürümü Dil çalışma zamanı yığınınızın desteklenen bir sürümünü seçin. Örnek boyutu Varsayılan Uygulamanızın her örneği için ayrılan örnek belleği miktarını belirler. Daha fazla bilgi için Örnek boyutlarını inceleyin. Depolama sayfasında, yeni bir varsayılan konak depolama hesabı oluşturmanın varsayılan davranışını kabul edin veya mevcut bir depolama hesabını kullanmayı seçin.
İzleme sayfasında Application Insights'ı Etkinleştir'in seçili olduğundan emin olun. Yeni bir Application Insights örneği oluşturmak için varsayılanı kabul edin veya var olan bir örneği kullanmayı seçin. Application Insights örneği oluşturduğunuzda bir Log Analytics Çalışma Alanı seçmeniz de istenir.
Kimlik Doğrulaması sayfasında, tüm kaynaklar için Kimlik doğrulama türünüYönetilen kimlik olarak değiştirin. Bu seçenekle, uygulamanızın Microsoft Entra Id kimlik doğrulamasını kullanarak bu Azure kaynaklarına erişmek için kullandığı kullanıcı tarafından atanan yönetilen kimlik de oluşturulur. Microsoft Entra Id ile yönetilen kimlikler, Azure kaynaklarına bağlanmak için en yüksek güvenlik düzeyini sağlar.
Kalan sekmelerdeki varsayılan seçenekleri kabul edin ve ardından gözden geçir + oluştur'u seçerek seçtiğiniz uygulama yapılandırmasını gözden geçirin.
Memnun olduğunuzda oluştur'u seçerek işlev uygulamasını ve ilgili kaynakları sağlayın ve dağıtın.
Portalın sağ üst köşesindeki Bildirimler simgesini seçin ve Dağıtım başarılı iletisini izleyin.
Yeni işlev uygulamanızı görüntülemek için Kaynağa git’i seçin. Panoya sabitle'yi de seçebilirsiniz. Sabitleme, gösterge tablonuzdan bu işlev uygulaması kaynak bilgisine geri dönmeyi daha kolay hale getirir.
MCP sunucu projesini dağıtma
Önemli
Mevcut bir işlev uygulamasına dağıtılması her zaman Azure'da bu uygulamanın içeriğinin üzerine yazılır.
Komut paletine girin ve Azure İşlevleri: İşlev Uygulamasına Dağıt'ı seçin.
Yeni oluşturduğunuz işlev uygulamasını seçin. Önceki dağıtımların üzerine yazmanız istendiğinde, işlev kodunuzu yeni işlev uygulaması kaynağına dağıtmak için Dağıt'ı seçin.
Dağıtım tamamlandığında, oluşturduğunuz Azure kaynakları da dahil olmak üzere oluşturma ve dağıtım sonuçlarını görüntülemek için Çıkışı Görüntüle'yi seçin. Bildirimi kaçırırsanız, yeniden görmek için sağ alt köşedeki zil simgesini seçin.
Python uygulamaları bu uygulama ayarını eklemenizi de gerektirir:
PYTHONPATH=/home/site/wwwroot/.python_packages/lib/site-packages.
Şimdi sunucu projesini dağıtabilirsiniz:
Önemli
Mevcut bir işlev uygulamasına dağıtılması her zaman Azure'da bu uygulamanın içeriğinin üzerine yazılır.
Komut paletine girin ve Azure İşlevleri: İşlev Uygulamasına Dağıt'ı seçin.
Yeni oluşturduğunuz işlev uygulamasını seçin. Önceki dağıtımların üzerine yazmanız istendiğinde, işlev kodunuzu yeni işlev uygulaması kaynağına dağıtmak için Dağıt'ı seçin.
Dağıtım tamamlandığında, oluşturduğunuz Azure kaynakları da dahil olmak üzere oluşturma ve dağıtım sonuçlarını görüntülemek için Çıkışı Görüntüle'yi seçin. Bildirimi kaçırırsanız, yeniden görmek için sağ alt köşedeki zil simgesini seçin.
Dağıtım tamamlandığında, Visual Studio Code'da sunucuya bağlanma hakkında bir bildirim görmeniz gerekir. Düzenleyicinin içinde sunucu bağlantı bilgilerini ayarlamasını sağlamak için mcp.json düğmesini seçin.
Yerleşik sunucu yetkilendirmesini ve kimlik doğrulamasını etkinleştirme
Aşağıdaki yönerge, sunucu uygulamasında yerleşik yetkilendirme ve kimlik doğrulama özelliğinin nasıl etkinleştirileceği gösterilir ve Microsoft Entra Id'yi kimlik sağlayıcısı olarak yapılandırılır. İşiniz bittiğinde, Visual Studio Code'da sunucuya bağlanarak test yapar ve bağlanmadan önce kimlik doğrulaması yapmanız istendiğini görürsünüz.
Sunucu uygulamasında kimlik doğrulamayı yapılandırma
Azure portalında sunucu uygulamasını açın ve soldaki menüden Ayarlar>Kimlik Doğrulaması'nı seçin.
Kimlik sağlayıcısı olarak>Microsoft'u ekle'yi seçin.
Uygulamanız ve kullanıcıları için bir kiracı seçin alanındaİş gücü yapılandırması (geçerli kiracı) seçeneğini belirleyin.
Uygulama kaydı: altında şu ayarları kullanın:
Setting Seleksiyon Uygulama kayıt türü Yeni uygulama kaydı oluşturma İsim Uygulamanız için açıklayıcı bir ad girin İstemci gizli anahtar süresi dolma Önerilen: 180 gün Desteklenen hesap türleri Geçerli kiracı - Tek kiracı Ek denetimler: altında, İstemci uygulaması gereksinimi için Belirli istemci uygulamalarından gelen isteklere izin ver'i seçin, kalem simgesini seçin, Visual Studio Code istemci kimliğini
aebc6443-996d-45c2-90f0-388ff96faa56ekleyin ve Tamam'ı seçin. Diğer bölümleri olduğu gibi bırakın.App Service kimlik doğrulama ayarları altında şu ayarları kullanın:
Setting Seleksiyon Erişimi kısıtla Kimlik doğrulaması gerektir Kimliği doğrulanmamış istekler HTTP 401 Yetkisiz: API'ler için önerilir Belirteç deposu Belirteç yenilemesine izin veren kutuyu işaretleyin Add (Ekle) seçeneğini belirleyin. Ayarlar yayıldıktan sonra aşağıdaki sonucu görmeniz gerekir:
Visual Studio Code'u istemci olarak önceden yetkilendirme
Microsoft'un yanındaki Entra uygulamasının adını seçin. Bu eylem sizi Entra uygulama kaynağına Genel Bakış'a götürür.
Soldaki menüde Yönet -> API'yi kullanıma sunma'yı bulun.
Yetkili istemci uygulamaları'nın altında +İstemci uygulaması ekle'yi seçin.
Visual Studio Code'un istemci kimliğini girin:
aebc6443-996d-45c2-90f0-388ff96faa56.Kapsamın önünde
api://abcd123-efg456-hijk-7890123/user_impersonationgibi görünen kutuyu seçin.Uygulama ekle'yi seçin.
Korumalı kaynak meta verilerini yapılandırma (önizleme)
Aynı API'yi kullanıma sunma görünümünde Kapsamlar bölümünü bulun ve yöneticilerin ve kullanıcıların Entra uygulamasını onaylamasına izin veren kapsamı kopyalayın. Bu değer şuna benzer:
api://abcd123-efg456-hijk-7890123/user_impersonation.ayarını
WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPESeklemek için öncekiyle aynı komutu çalıştırın:az functionapp config appsettings set --name <function-app-name> --resource-group <resource-group-name> --settings "WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPES=<scope>"Ayrıca API'yi kullanıma sunma görünümünde, en üstte Uygulama Kimliği URI'sini (gibi
api://abcd123-efg456-hijk-7890123görünür) bulun ve sonraki adım için kaydedin.
Sunucuya bağlanma
mcp.json dizininde .vscode açın.
Dağıtımdan sonra açılan pencerede Bağlan'ı seçtiğinizde, Visual Studio Code dosyayı sunucu bağlantı bilgileriyle doldurur.
Bu adımı kaçırırsanız, dağıtım günlüklerinin sonunda satır içi bağlantı düğmesini bulmak için Çıkış 'ı (Ctrl/Cmd+Shift+U) da açabilirsiniz.
Ayrıca bağlantı bilgilerini el ile de ekleyebilirsiniz:
Aşağıdaki komutu çalıştırarak sunucu etki alanını alın:
az functionapp show --name <FUNCTION_APP_NAME> --resource-group <RESOURCE_GROUP_NAME> --query "defaultHostName" --output tsvVisual Studio Code'da komut paletini açın, MCP: Sunucu Ekle... komutunu arayıp çalıştırın ve ardından şu istemleri izleyin:
Uyarı Öneri Eklenecek sunucu türü HTTP MCP sunucunuzun URL'si https://<FUNCTION_APP_NAME>.azurewebsites.azurewebsites.net/runtime/webhooks/mcpSunucu adı remote-mcp-server Sunucunun yükleneceği yer Workspace Visual Studio Code sizin için ayar dosyasını açar
mcp.json.
Kimlik doğrulamasını nasıl yapılandırdığınıza bağlı olarak sunucuya bağlanmak için sonraki bölümdeki yönergeleri izleyin.
Yerleşik kimlik doğrulaması ve yetkilendirme ile
Sunucu adının üstündeki Başlat düğmesini seçerek uzak sunucuyu başlatın.
Microsoft ile kimlik doğrulaması sorulduğunda İzin Ver'i seçin, ardından e-postanızla (Azure portalında oturum açmak için kullanılan) oturum açın.
Sunucuya başarıyla bağlandığınızda, sunucu adının üzerinde kullanılabilir araç sayısını görürsünüz.
Aracı modunda Visual Studio Code Copilot sohbeti açın ve bir soru sorun. Örneğin,
Greet with #your-remote-mcp-server-name.Testi bitirdiğinizde sunucuyu durdurun.
Visual Studio Code uzak MCP sunucusuna bağlanmaya çalıştığında ne olduğunu ayrıntılı olarak anlamak için bkz. Sunucu yetkilendirme protokolü.
Erişim anahtarı ile
Yerleşik kimlik doğrulama ve yetkilendirmeyi etkinleştirmediyseniz ve bunun yerine bir erişim anahtarı kullanarak MCP sunucunuza bağlanmak istiyorsanız, mcp.json sunucu kaydının istek üst bilgilerinde İşlevler erişim anahtarı bulunmalıdır.
Sunucuyu başlattığınızda Visual Studio erişim anahtarını otomatik olarak doldurur.
Dosya mcp.json aşağıdaki örnekteki gibi görünmelidir:
{
"servers": {
"remote-mcp-server": {
"type": "http",
"url": "https://${input:functionapp-domain}/runtime/webhooks/mcp",
"headers": {
"x-functions-key": "${input:functions-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "functions-key",
"description": "Functions App Key",
"password": true
},
{
"type": "promptString",
"id": "functionapp-domain",
"description": "The domain of the function app.",
"password": false
}
]
}
Erişim anahtarını kendiniz bulmak istiyorsanız Azure portalında İşlev uygulamasına gidin. Soldaki menüde İşlevler -> Uygulama anahtarları'nı bulun. Sistem anahtarları bölümünde mcp_extension adlı bir anahtar bulun.
Tip
Bağlantı günlüklerini görmek için sunucu adına gidin ve Ardından Diğer>Çıkışı Göster'i seçin. İstemci (Visual Studio Code) ile uzak MCP sunucusu arasındaki etkileşim hakkında daha fazla bilgi için dişli simgesini seçin ve İzleme'yi tercih edin.
Azure AI Foundry aracısını araçlarınızı kullanacak şekilde yapılandırma
Azure AI Foundry'de aracıyı, Azure İşlevleri üzerinde barındırılan MCP sunucuları tarafından kullanıma sunulan araçları kullanacak şekilde yapılandırabilirsiniz.
Foundry portalında, İşlevler'de barındırılan MCP sunucularıyla yapılandırmak istediğiniz aracıyı bulun.
Araçlar'ın altında Ekle düğmesini ve ardından + Yeni araç ekle'yi seçin.
Özel sekmesini ve ardından Model Bağlam Protokolü (MCP) ve Oluştur düğmesini seçin.
Aşağıdaki bilgileri girin:
- Ad: Sunucunun adı
- Uzak MCP Sunucusu uç noktası:
- MCP uzantı sunucusu:
https://<server domain>/runtime/webhooks/mcp - Kendi kendine barındırılan sunucu:
https://<server domain>/mcp
- MCP uzantı sunucusu:
- Kimlik doğrulaması: "Microsoft Entra" seçeneğini belirleyin
- Tür: "Proje Yönetilen Kimliği"ni seçin
- Hedef Kitle: Bu, Korumalı kaynak meta verilerini yapılandırma bölümünden Entra Uygulama Kimliği URI'sidir
Örneğin:
Bağlan seçeneğini seçin.
Sohbet penceresinde bir sunucu aracının yardımıyla yanıtlanabilir bir soru sorarak test edin.
Sunucu yetkilendirme protokolü
Visual Studio Code'un hata ayıklama çıkışında, MCP istemcisi ve sunucusu etkileşim kurarken bir dizi istek ve yanıt görürsünüz. Yerleşik MCP sunucu yetkilendirmesini kullandığınızda aşağıdaki olay dizisini görürsünüz:
- Düzenleyici, MCP sunucusuna bir başlatma isteği gönderir.
- MCP sunucusu yetkilendirme gerektiğini belirten bir hatayla yanıt verir. Yanıt, uygulama için korumalı kaynak meta verilerine (PRM) yönelik bir işaretçi içerir. Yerleşik yetkilendirme özelliği, sunucu uygulaması için PRM'yi oluşturur.
- Düzenleyici PRM'yi getirir ve yetkilendirme sunucusunu tanımlamak için kullanır.
- Düzenleyici, yetkilendirme sunucusundaki iyi bilinen bir uç noktadan yetkilendirme sunucusu meta verilerini (ASM) almayı dener.
- Microsoft Entra ID iyi bilinen uç noktada ASM'yi desteklemediğinden düzenleyici, ASM'yi almak için OpenID Connect meta veri uç noktasını kullanmaya geri döner. Diğer yol bilgilerden önce iyi bilinen uç noktayı ekleyerek bunu keşfetmeye çalışır.
- OpenID Connect belirtimleri aslında iyi bilinen uç noktayı yol bilgileri sonrasında olarak tanımlar ve Microsoft Entra ID onu burada barındırmaktadır. Böylece düzenleyici bu biçimle yeniden dener.
- Düzenleyici ASM'yi başarıyla alır. Daha sonra oturum açmak için bu bilgileri kendi istemci kimliğiyle kullanır. Bu noktada düzenleyici sizden oturum açmanızı ve uygulamayı onaylamanızı ister.
- Başarıyla oturum açıp onay verdiğinizi varsayarsak düzenleyici kimlik doğrulamasını tamamlar. Bu sefer başlatma isteğini MCP sunucusuna yetkilendirme belirteci içeren bir şekilde yeniden gönderir. Bu yeniden deneme hata ayıklama çıkış düzeyinde görünmez, ancak bunu İzleme çıktısı düzeyinde görebilirsiniz.
- MCP sunucusu belirteci doğrular ve başlatma isteğine başarılı bir yanıt verir. Standart MCP akışı bu noktadan devam eder ve sonuçta bu örnekte tanımlanan MCP aracının bulunmasıyla sonuçlanır.
Sorun giderme
Sorunla karşılaşırsanız GitHub Copilot'dan yardım isteyin. Sorun gidermeye yönelik bazı belirli fikirler şunlardır:
Şu anda başka fikir yok. Copilot sohbetine oluşan hataları sormayı unutmayın.
Sonraki Adımlar
Azure İşlevleri tarafından barındırılan MCP sunucularını Azure API Center'a kaydetmeyi öğrenin.