<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Azure-Sdk | The .NET Blog</title><link>https://thedotnetblog.com/id/tags/azure-sdk/</link><description>Articles, tutorials and insights from the .NET community.</description><generator>Hugo</generator><language>id</language><managingEditor>@thedotnetblog (The .NET Blog)</managingEditor><webMaster>@thedotnetblog</webMaster><lastBuildDate>Sat, 25 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://thedotnetblog.com/id/tags/azure-sdk/index.xml" rel="self" type="application/rss+xml"/><item><title>Azure MCP Server Kini .mcpb — Instal Tanpa Runtime Apapun</title><link>https://thedotnetblog.com/id/posts/emiliano-montesdeoca/azure-mcp-server-mcpb-no-runtime-install/</link><pubDate>Sat, 25 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/id/posts/emiliano-montesdeoca/azure-mcp-server-mcpb-no-runtime-install/</guid><description>Azure MCP Server kini tersedia sebagai MCP Bundle (.mcpb) — unduh, seret ke Claude Desktop, selesai. Tidak perlu Node.js, Python, atau .NET.</description><content:encoded>&lt;p&gt;&lt;em&gt;Posting ini diterjemahkan secara otomatis. Untuk versi aslinya, &lt;a href="https://thedotnetblog.com/id/posts/emiliano-montesdeoca/azure-mcp-server-mcpb-no-runtime-install/"&gt;klik di sini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Tahu apa yang menjengkelkan dari pengaturan server MCP? Anda memerlukan runtime. Node.js untuk versi npm, Python untuk pip/uvx, .NET SDK untuk varian dotnet.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://devblogs.microsoft.com/azure-sdk/azure-mcp-server-mcpb-support/"&gt;Azure MCP Server baru saja mengubah itu&lt;/a&gt;. Kini tersedia sebagai &lt;code&gt;.mcpb&lt;/code&gt; — MCP Bundle — dan pengaturannya adalah seret-dan-lepas.&lt;/p&gt;
&lt;h2 id="apa-itu-mcp-bundle"&gt;Apa itu MCP Bundle?&lt;/h2&gt;
&lt;p&gt;Bayangkan seperti ekstensi VS Code (&lt;code&gt;.vsix&lt;/code&gt;) atau ekstensi browser (&lt;code&gt;.crx&lt;/code&gt;), tetapi untuk server MCP. File &lt;code&gt;.mcpb&lt;/code&gt; adalah arsip ZIP mandiri yang menyertakan biner server dan semua dependensinya.&lt;/p&gt;
&lt;h2 id="cara-menginstal"&gt;Cara Menginstal&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;1. Unduh bundle untuk platform Anda&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Buka &lt;a href="https://github.com/microsoft/mcp/releases?q=Azure.Mcp.Server"&gt;halaman GitHub Releases&lt;/a&gt; dan unduh file &lt;code&gt;.mcpb&lt;/code&gt; untuk OS dan arsitektur Anda.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;2. Instal di Claude Desktop&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Cara termudah: seret dan lepas file &lt;code&gt;.mcpb&lt;/code&gt; ke jendela Claude Desktop saat Anda berada di halaman pengaturan Extensions (&lt;code&gt;☰ → File → Settings → Extensions&lt;/code&gt;). Tinjau detail server, klik Install, konfirmasi.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;3. Autentikasi ke Azure&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;az login
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Selesai. Azure MCP Server menggunakan kredensial Azure Anda yang ada.&lt;/p&gt;
&lt;h2 id="untuk-memulai"&gt;Untuk Memulai&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Unduhan&lt;/strong&gt;: &lt;a href="https://github.com/microsoft/mcp/releases?q=Azure.Mcp.Server-"&gt;GitHub Releases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Repo&lt;/strong&gt;: &lt;a href="https://aka.ms/azmcp"&gt;aka.ms/azmcp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Docs&lt;/strong&gt;: &lt;a href="https://aka.ms/azmcp/docs"&gt;aka.ms/azmcp/docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Baca &lt;a href="https://devblogs.microsoft.com/azure-sdk/azure-mcp-server-mcpb-support/"&gt;posting lengkap&lt;/a&gt;.&lt;/p&gt;</content:encoded></item><item><title>Azure MCP Server 2.0 Baru Dirilis — Otomasi Cloud Agentic Self-Hosted Sudah Ada</title><link>https://thedotnetblog.com/id/posts/emiliano-montesdeoca/azure-mcp-server-2-self-hosted-agentic-cloud/</link><pubDate>Sat, 11 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/id/posts/emiliano-montesdeoca/azure-mcp-server-2-self-hosted-agentic-cloud/</guid><description>Azure MCP Server 2.0 mencapai stabilitas dengan deployment remote self-hosted, 276 alat di 57 layanan Azure, dan keamanan tingkat enterprise.</description><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Postingan ini diterjemahkan secara otomatis. Untuk versi aslinya, &lt;a href="https://thedotnetblog.com/id/posts/emiliano-montesdeoca/azure-mcp-server-2-self-hosted-agentic-cloud/"&gt;klik di sini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Jika Anda baru-baru ini membangun sesuatu dengan MCP dan Azure, Anda mungkin sudah tahu bahwa pengalaman lokal bekerja dengan baik. Tapi ketika Anda perlu berbagi pengaturan itu ke seluruh tim? Di situlah hal-hal menjadi rumit.&lt;/p&gt;
&lt;p&gt;Tidak lagi. Azure MCP Server &lt;a href="https://devblogs.microsoft.com/azure-sdk/announcing-azure-mcp-server-2-0-stable-release/"&gt;baru saja mencapai 2.0 stabil&lt;/a&gt;, dan fitur utamanya adalah persis yang telah diminta tim enterprise: &lt;strong&gt;dukungan server MCP remote self-hosted&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="apa-itu-azure-mcp-server"&gt;Apa itu Azure MCP Server?&lt;/h2&gt;
&lt;p&gt;Azure MCP Server mengimplementasikan spesifikasi &lt;a href="https://modelcontextprotocol.io/docs/getting-started/intro"&gt;Model Context Protocol&lt;/a&gt; dan mengekspos kemampuan Azure sebagai alat terstruktur dan dapat ditemukan. Angkanya berbicara sendiri: &lt;strong&gt;276 alat MCP di 57 layanan Azure&lt;/strong&gt;.&lt;/p&gt;
&lt;h2 id="hal-besar-deployment-remote-self-hosted"&gt;Hal besar: deployment remote self-hosted&lt;/h2&gt;
&lt;p&gt;Dalam skenario tim nyata, Anda membutuhkan:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Akses bersama untuk developer dan sistem agen internal&lt;/li&gt;
&lt;li&gt;Konfigurasi terpusat&lt;/li&gt;
&lt;li&gt;Batas jaringan dan kebijakan enterprise&lt;/li&gt;
&lt;li&gt;Integrasi ke pipeline CI/CD&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Azure MCP Server 2.0 mengatasi semua ini. Untuk autentikasi, ada dua opsi:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Managed Identity&lt;/strong&gt; — saat berjalan bersama &lt;a href="https://aka.ms/azmcp/self-host/foundry"&gt;Microsoft Foundry&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Alur On-Behalf-Of (OBO)&lt;/strong&gt; — delegasi OpenID Connect dengan izin pengguna yang sebenarnya&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="pengerasan-keamanan"&gt;Pengerasan keamanan&lt;/h2&gt;
&lt;p&gt;Rilis 2.0 menambahkan validasi endpoint yang lebih kuat, perlindungan terhadap pola injection, dan kontrol isolasi yang lebih ketat.&lt;/p&gt;
&lt;h2 id="memulai"&gt;Memulai&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://aka.ms/azmcp"&gt;GitHub Repo&lt;/a&gt;&lt;/strong&gt; — kode sumber, dokumentasi&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://aka.ms/azmcp/download/docker"&gt;Docker Image&lt;/a&gt;&lt;/strong&gt; — deployment dalam container&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://aka.ms/azmcp/download/vscode"&gt;Ekstensi VS Code&lt;/a&gt;&lt;/strong&gt; — integrasi IDE&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://aka.ms/azmcp/self-host"&gt;Panduan self-hosting&lt;/a&gt;&lt;/strong&gt; — fitur unggulan 2.0&lt;/li&gt;
&lt;/ul&gt;</content:encoded></item><item><title>Aplikasi MCP Mendapatkan Fluent API — Buat UI Alat AI Kaya di .NET dalam Tiga Langkah</title><link>https://thedotnetblog.com/id/posts/emiliano-montesdeoca/mcp-fluent-api-azure-functions-dotnet/</link><pubDate>Fri, 10 Apr 2026 00:00:00 +0000</pubDate><author>Emiliano Montesdeoca</author><guid>https://thedotnetblog.com/id/posts/emiliano-montesdeoca/mcp-fluent-api-azure-functions-dotnet/</guid><description>API konfigurasi fluent baru untuk Aplikasi MCP di Azure Functions memungkinkan Anda mengubah alat MCP .NET mana pun menjadi aplikasi lengkap dengan tampilan, izin, dan kebijakan CSP.</description><content:encoded>&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;Postingan ini diterjemahkan secara otomatis. Untuk versi aslinya, &lt;a href="https://thedotnetblog.com/id/posts/emiliano-montesdeoca/mcp-fluent-api-azure-functions-dotnet/"&gt;klik di sini&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Alat MCP sangat bagus untuk memberikan kemampuan kepada agen AI. Tapi bagaimana jika alat Anda perlu menampilkan sesuatu kepada pengguna?&lt;/p&gt;
&lt;p&gt;Lilian Kasem dari tim Azure SDK &lt;a href="https://devblogs.microsoft.com/azure-sdk/mcp-as-easy-as-1-2-3-introducing-the-fluent-api-for-mcp-apps/"&gt;memperkenalkan API konfigurasi fluent baru&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id="fluent-api-dalam-tiga-langkah"&gt;Fluent API dalam tiga langkah&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Langkah 1: Definisikan fungsi Anda:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-csharp" data-lang="csharp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt;[Function(nameof(HelloApp))]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="kd"&gt;public&lt;/span&gt; &lt;span class="kt"&gt;string&lt;/span&gt; &lt;span class="n"&gt;HelloApp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="na"&gt; [McpToolTrigger(&amp;#34;HelloApp&amp;#34;, &amp;#34;A simple MCP App that says hello.&amp;#34;)]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;ToolInvocationContext&lt;/span&gt; &lt;span class="n"&gt;context&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="s"&gt;&amp;#34;Hello from app&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Langkah 2: Promosikan ke Aplikasi MCP:&lt;/strong&gt;&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-csharp" data-lang="csharp"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="n"&gt;builder&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ConfigureMcpTool&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;HelloApp&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;AsMcpApp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;app&lt;/span&gt; &lt;span class="p"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="n"&gt;app&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WithView&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;assets/hello-app.html&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WithTitle&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;Hello App&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WithPermissions&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;McpAppPermissions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ClipboardWrite&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; &lt;span class="n"&gt;McpAppPermissions&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ClipboardRead&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;WithCsp&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;csp&lt;/span&gt; &lt;span class="p"&gt;=&amp;gt;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="n"&gt;csp&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;AllowBaseUri&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;https://www.microsoft.com&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;ConnectTo&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="s"&gt;&amp;#34;https://www.microsoft.com&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}));&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;strong&gt;Langkah 3: Tambahkan tampilan HTML Anda.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Tambahkan paket:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;dotnet add package Microsoft.Azure.Functions.Worker.Extensions.Mcp --version 1.5.0-preview.1
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Baca &lt;a href="https://devblogs.microsoft.com/azure-sdk/mcp-as-easy-as-1-2-3-introducing-the-fluent-api-for-mcp-apps/"&gt;posting lengkap&lt;/a&gt;.&lt;/p&gt;</content:encoded></item></channel></rss>