Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .openpublishing.redirection.ai.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
{
"redirections": [
{
"source_path_from_root": "/docs/ai/azure-ai-for-dotnet-developers.md",
"redirect_url": "/dotnet/ai/resources/azure-ai"
},
{
"source_path_from_root": "/docs/ai/ai-extensions.md",
"redirect_url": "/dotnet/ai/microsoft-extensions-ai",
Expand Down
12 changes: 0 additions & 12 deletions docs/ai/azure-ai-for-dotnet-developers.md

This file was deleted.

46 changes: 23 additions & 23 deletions docs/ai/index.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ metadata:
author: alexwolfmsft
ms.author: alexwolf

# linkListType: architecture | concept | deploy | download | get-started | how-to-guide | tutorial | overview | quickstart | reference | sample | tutorial | video | whats-new
# linkListType: architecture | concept | deploy | download | get-started | how-to-guide | tutorial | overview | quickstart | reference | sample | training | tutorial | video | whats-new

landingContent:
# Cards and links should be based on top customer tasks or top subjects
Expand Down Expand Up @@ -70,20 +70,6 @@ landingContent:
- text: Work with content filtering
url: how-to/work-with-local-models.md

# Card
- title: Tutorials
linkLists:
- linkListType: tutorial
links:
- text: Scale Azure OpenAI with Azure Container Apps
url: get-started-app-chat-scaling-with-azure-container-apps.md
- text: .NET enterprise chat sample using RAG
url: get-started-app-chat-template.md
- text: Implement RAG using vector search
url: tutorials/tutorial-ai-vector-search.md
- text: Evaluate a model's response
url: tutorials/evaluate-with-reporting.md

# Card
- title: Training
linkLists:
Expand All @@ -99,13 +85,27 @@ landingContent:
url: /training/paths/develop-ai-agents-azure-open-ai-semantic-kernel-sdk

# Card
- title: API reference
- title: Tutorials
linkLists:
- linkListType: tutorial
links:
- text: Scale Azure OpenAI with Azure Container Apps
url: get-started-app-chat-scaling-with-azure-container-apps.md
- text: .NET enterprise chat sample using RAG
url: get-started-app-chat-template.md
- text: Implement RAG using vector search
url: tutorials/tutorial-ai-vector-search.md
- text: Evaluate a model's response
url: tutorials/evaluate-with-reporting.md

# Card
- title: External resources
linkLists:
- linkListType: reference
- linkListType: sample
links:
- text: ChatClientBuilder
url: /dotnet/api/microsoft.extensions.ai.chatclientbuilder
- text: IChatClient
url: /dotnet/api/microsoft.extensions.ai.ichatclient
- text: IEmbeddingGenerator
url: /dotnet/api/microsoft.extensions.ai.iembeddinggenerator
- text: Get started resources
url: resources/get-started.md
- text: Azure AI resources
url: resources/azure-ai.md
- text: MCP server resources
url: resources/mcp-servers.md
12 changes: 12 additions & 0 deletions docs/ai/resources/azure-ai.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
title: Azure AI learning resources
description: This article provides a list of resources about Azure AI scenarios for .NET developers, including documentation and code samples.
ms.date: 09/04/2025
ms.topic: reference
---

# Azure AI learning resources

This article contains an organized list of the best learning resources for .NET developers who are building AI apps using Azure services. Resources include popular quickstart articles, reference samples, documentation, and training courses.

[!INCLUDE [include-file-from-azure-dev-docs-pr](~/azure-dev-docs-pr/articles/ai/includes/azure-ai-for-developers-dotnet.md)]
23 changes: 23 additions & 0 deletions docs/ai/resources/get-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: Learning resources to get started with AI in .NET
description: This article provides a list of resources for .NET developers who are starting to build AI apps with .NET.
ms.date: 09/04/2025
ms.topic: reference
---

# Learning resources to get started with AI in .NET

This article contains an organized list of the best learning resources for .NET developers who are starting to build AI apps with .NET. Resources include samples, documentation, videos, and workshops.

## Tutorials

- [Generative AI for beginners](https://github.com/microsoft/Generative-AI-for-beginners-dotnet)

## Workshops

- [AI workshop](https://github.com/dotnet-presentations/ai-workshop)
- [Steve Sanderson's AI workshop](https://github.com/SteveSandersonMS/dotnet-ai-workshop)

## Sample apps

- [AI samples for .NET](https://github.com/dotnet/ai-samples)
60 changes: 60 additions & 0 deletions docs/ai/resources/mcp-servers.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
title: MCP server learning resources
description: This article provides a list of resources for .NET developers who are building MCP servers.
ms.date: 09/04/2025
ms.topic: reference
---

# MCP server learning resources

This article contains an organized list of the best learning resources for .NET developers who are building Model Context Protocol (MCP) servers. Resources include samples, documentation, videos, and workshops.

## Getting started

| Link | Description |
|------|-------------|
|[Anthropic - Getting Started with MCP](https://modelcontextprotocol.io/docs/getting-started/intro)|Anthropic's official guide to the Model Context Protocol (MCP) and overview on how to get started writing or using an MCP server.|
|[Create a minimal MCP server using C# and publish to NuGet](../quickstarts/build-mcp-server.md)|A quick guide to writing an MCP server in VS Code and publishing it to NuGet.|
|[MCP for Beginners GitHub repo](https://github.com/microsoft/mcp-for-beginners)|A Microsoft-official GitHub repository with a full, hands-on curriculum for developing MCP servers in .NET, Java, TypeScript, JavaScript, Rust, and Python.|
|[Build agents using MCP on Azure](/azure/developer/ai/build-openai-mcp-server-dotnet)| A walkthrough on how to connect an MCP client using Azure OpenAI and MCP server to Azure Container Apps. |

## Libraries

| Link | Description |
|------------------------------------------------------------------|-------------|
| [MCP C# SDK](https://github.com/modelcontextprotocol/csharp-sdk) | Microsoft and Anthropic's official C# SDK for MCP servers and clients. |

## Samples

| Link | Description |
|------|-------------|
|[MCP Workshop GitHub repo](https://github.com/Azure-Samples/mcp-workshop-dotnet)|A sample MCP server and client with corresponding, step-by-step walkthroughs on how to implement them and how MCP works.|

## Documentation

| Link | Description |
|------|-------------|
|[MCP C# SDK Documentation](https://modelcontextprotocol.github.io/csharp-sdk/index.html)|Anthropic's official guide to the Model Context Protocol (MCP) and overview on how to get started writing or using an MCP server.|
|[VS Code MCP Developer Guide](https://code.visualstudio.com/api/extension-guides/ai/mcp)| Official documentation for building, debugging, and registering an MCP server in VS Code.|

## Additional resources

| Link | Description |
|------|-------------|
|[MCP Inspector Tool](https://github.com/modelcontextprotocol/inspector)|The Anthropic-official GitHub repo for the MCP Inspector tool, a visual testing and debugging tool for MCP servers.|
|[MCP servers for VS Code](https://code.visualstudio.com/mcp)|A hub for quickly installing first-party and third-party MCP servers in VS Code.|
|[Third party MCP servers](https://github.com/modelcontextprotocol/servers?tab=readme-ov-file#-third-party-servers)|A GitHub repo containing a comprehensive list of publicly available MCP servers.|

## Videos

| Link | Description |
|------|-------------|
|[MCP Dev Days (Microsoft Reactor)](https://developer.microsoft.com/reactor/series/S-1563/)|A 2-day virtual event and video series showing how to use and write MCP servers.|
|[ASP.NET Community Standup - Build MCP servers with ASP.NET Core](https://www.youtube.com/live/x_6iUhdHnhc?si=J8QQuirYWk0JXC_V)|A roundtable discussion and demo on building an MCP server with ASP.NET Core and the MCP C# SDK.|

## Communities

| Link | Description |
|------|-------------|
|[Anthropic MCP Discussions](https://github.com/orgs/modelcontextprotocol/discussions)|An open forum for discussing MCP in Anthropic's official MCP GitHub repo.|
|[Azure AI Foundry Discord](https://discord.com/invite/ByRwuEEgH4)|A Discord discussion space for developers looking to build with Microsoft AI tooling.|
8 changes: 6 additions & 2 deletions docs/ai/toc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,12 @@ items:
href: advanced/sample-implementations.md
- name: Resources
items:
- name: Get started resources
href: resources/get-started.md
- name: Azure AI resources
href: resources/azure-ai.md
- name: MCP server resources
href: resources/mcp-servers.md
- name: API reference
items:
- name: ChatClientBuilder
Expand All @@ -109,5 +115,3 @@ items:
href: /dotnet/api/microsoft.extensions.ai.ichatclient
- name: IEmbeddingGenerator
href: /dotnet/api/microsoft.extensions.ai.iembeddinggenerator
- name: Azure AI samples and docs
href: azure-ai-for-dotnet-developers.md
6 changes: 3 additions & 3 deletions docs/azure/includes/dotnet-all.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@
| Core - Client - Core | NuGet [1.48.0](https://www.nuget.org/packages/Azure.Core/1.48.0) | [docs](/dotnet/api/overview/azure/Core-readme) | GitHub [1.48.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Core_1.48.0/sdk/core/Azure.Core/) |
| Core Newtonsoft Json | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.Core.NewtonsoftJson/2.0.0) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.Core.NewtonsoftJson-readme) | GitHub [2.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Core.NewtonsoftJson_2.0.0/sdk/core/Microsoft.Azure.Core.NewtonsoftJson/) |
| Core WCF Storage Queues | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Microsoft.CoreWCF.Azure.StorageQueues/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Microsoft.CoreWCF.Azure.StorageQueues-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.CoreWCF.Azure.StorageQueues_1.0.0-beta.1/sdk/extension-wcf/Microsoft.CoreWCF.Azure.StorageQueues/) |
| Data Movement | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement/12.2.2) | [docs](/dotnet/api/overview/azure/Storage.DataMovement-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement_12.2.2/sdk/storage/Azure.Storage.DataMovement/) |
| Data Movement - Blobs | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Blobs/12.2.2) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Blobs-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Blobs_12.2.2/sdk/storage/Azure.Storage.DataMovement.Blobs/) |
| Data Movement - Files Shares | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Files.Shares/12.2.2) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Files.Shares-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Files.Shares_12.2.2/sdk/storage/Azure.Storage.DataMovement.Files.Shares/) |
| Data Movement | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement/12.2.2)<br>NuGet [12.3.0-beta.1](https://www.nuget.org/packages/Azure.Storage.DataMovement/12.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.DataMovement-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement_12.2.2/sdk/storage/Azure.Storage.DataMovement/)<br>GitHub [12.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement_12.3.0-beta.1/sdk/storage/Azure.Storage.DataMovement/) |
| Data Movement - Blobs | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Blobs/12.2.2)<br>NuGet [12.3.0-beta.1](https://www.nuget.org/packages/Azure.Storage.DataMovement.Blobs/12.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Blobs-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Blobs_12.2.2/sdk/storage/Azure.Storage.DataMovement.Blobs/)<br>GitHub [12.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Blobs_12.3.0-beta.1/sdk/storage/Azure.Storage.DataMovement.Blobs/) |
| Data Movement - Files Shares | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Files.Shares/12.2.2)<br>NuGet [12.3.0-beta.1](https://www.nuget.org/packages/Azure.Storage.DataMovement.Files.Shares/12.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Files.Shares-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Files.Shares_12.2.2/sdk/storage/Azure.Storage.DataMovement.Files.Shares/)<br>GitHub [12.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Files.Shares_12.3.0-beta.1/sdk/storage/Azure.Storage.DataMovement.Files.Shares/) |
| Defender EASM | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Analytics.Defender.Easm/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Analytics.Defender.Easm-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Defender.Easm_1.0.0-beta.1/sdk/easm/Azure.Analytics.Defender.Easm/) |
| Dev Center | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Developer.DevCenter/1.0.0) | [docs](/dotnet/api/overview/azure/Developer.DevCenter-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Developer.DevCenter_1.0.0/sdk/devcenter/Azure.Developer.DevCenter/) |
| Device Update | NuGet [1.0.0](https://www.nuget.org/packages/Azure.IoT.DeviceUpdate/1.0.0) | [docs](/dotnet/api/overview/azure/IoT.DeviceUpdate-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.IoT.DeviceUpdate_1.0.0/sdk/deviceupdate/Azure.IoT.DeviceUpdate/) |
Expand Down
6 changes: 3 additions & 3 deletions docs/azure/includes/dotnet-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,9 @@
| Core - Client - Core | NuGet [1.48.0](https://www.nuget.org/packages/Azure.Core/1.48.0) | [docs](/dotnet/api/overview/azure/Core-readme) | GitHub [1.48.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Core_1.48.0/sdk/core/Azure.Core/) |
| Core Newtonsoft Json | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.Core.NewtonsoftJson/2.0.0) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.Core.NewtonsoftJson-readme) | GitHub [2.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Core.NewtonsoftJson_2.0.0/sdk/core/Microsoft.Azure.Core.NewtonsoftJson/) |
| Core WCF Storage Queues | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Microsoft.CoreWCF.Azure.StorageQueues/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Microsoft.CoreWCF.Azure.StorageQueues-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.CoreWCF.Azure.StorageQueues_1.0.0-beta.1/sdk/extension-wcf/Microsoft.CoreWCF.Azure.StorageQueues/) |
| Data Movement | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement/12.2.2) | [docs](/dotnet/api/overview/azure/Storage.DataMovement-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement_12.2.2/sdk/storage/Azure.Storage.DataMovement/) |
| Data Movement - Blobs | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Blobs/12.2.2) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Blobs-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Blobs_12.2.2/sdk/storage/Azure.Storage.DataMovement.Blobs/) |
| Data Movement - Files Shares | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Files.Shares/12.2.2) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Files.Shares-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Files.Shares_12.2.2/sdk/storage/Azure.Storage.DataMovement.Files.Shares/) |
| Data Movement | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement/12.2.2)<br>NuGet [12.3.0-beta.1](https://www.nuget.org/packages/Azure.Storage.DataMovement/12.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.DataMovement-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement_12.2.2/sdk/storage/Azure.Storage.DataMovement/)<br>GitHub [12.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement_12.3.0-beta.1/sdk/storage/Azure.Storage.DataMovement/) |
| Data Movement - Blobs | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Blobs/12.2.2)<br>NuGet [12.3.0-beta.1](https://www.nuget.org/packages/Azure.Storage.DataMovement.Blobs/12.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Blobs-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Blobs_12.2.2/sdk/storage/Azure.Storage.DataMovement.Blobs/)<br>GitHub [12.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Blobs_12.3.0-beta.1/sdk/storage/Azure.Storage.DataMovement.Blobs/) |
| Data Movement - Files Shares | NuGet [12.2.2](https://www.nuget.org/packages/Azure.Storage.DataMovement.Files.Shares/12.2.2)<br>NuGet [12.3.0-beta.1](https://www.nuget.org/packages/Azure.Storage.DataMovement.Files.Shares/12.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.DataMovement.Files.Shares-readme) | GitHub [12.2.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Files.Shares_12.2.2/sdk/storage/Azure.Storage.DataMovement.Files.Shares/)<br>GitHub [12.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.DataMovement.Files.Shares_12.3.0-beta.1/sdk/storage/Azure.Storage.DataMovement.Files.Shares/) |
| Defender EASM | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Analytics.Defender.Easm/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Analytics.Defender.Easm-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Defender.Easm_1.0.0-beta.1/sdk/easm/Azure.Analytics.Defender.Easm/) |
| Dev Center | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Developer.DevCenter/1.0.0) | [docs](/dotnet/api/overview/azure/Developer.DevCenter-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Developer.DevCenter_1.0.0/sdk/devcenter/Azure.Developer.DevCenter/) |
| Device Update | NuGet [1.0.0](https://www.nuget.org/packages/Azure.IoT.DeviceUpdate/1.0.0) | [docs](/dotnet/api/overview/azure/IoT.DeviceUpdate-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.IoT.DeviceUpdate_1.0.0/sdk/deviceupdate/Azure.IoT.DeviceUpdate/) |
Expand Down
2 changes: 1 addition & 1 deletion docs/azure/index.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ conceptualContent:
url: ../ai/get-started-app-chat-template.md
- itemType: overview
text: Learning resources and samples
url: ../ai/azure-ai-for-dotnet-developers.md
url: ../ai/resources/azure-ai.md
- title: Create mobile apps
links:
- itemType: learn
Expand Down
Loading