AI WorkshopBLOCK
Building GenAI Apps in C#: Microsoft Extensions for AI, Templates, Microsoft Foundry & More
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
Get up to speed quickly with AI app building in .NET. This workshop covers AI application development (Parts 1-4), MCP server development (Parts 5-7), a short agent bridge module (Part 8), an applied capstone that adds AI to an existing app (Part 9), and deployment preparation and Azure deployment (Parts 10-11). The AI track uses Microsoft Foundry (Azure OpenAI) as the cloud provider, with local-model options covered in the provider module.
Prerequisites
AI Web Chat Application Requirements (Parts 1-4, 10, and 11)
- Visual Studio 2026 or VS Code
- .NET AI Web Chatbot template installed (
dotnet new install Microsoft.Extensions.AI.Templates; walked through in Part 4) - MCP Server template (
mcpserver; included in .NET 10.0.9+ SDK, walked through in Part 5) - .NET 10.0.9 SDK or later
- Docker Desktop or Podman (recommended for the full Qdrant + Aspire path in Part 4)
- Azure subscription with access to Microsoft Foundry (Azure OpenAI), the primary AI provider
- Permission to create Azure AI Search resources and role assignments for the recommended Parts 10-11 deployment path; otherwise, keep the documented Qdrant fallback
When Docker is required
Docker Desktop or Podman is required when you run the workshop's Qdrant container locally. This is the recommended path in Part 4 because it demonstrates a persistent vector database, Aspire orchestration, the Aspire dashboard, and service telemetry.
33066d5c1f92OBSERVED · 2026-10-08Trust audit
BLOCKgrade D · trust 69/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | FAIL |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (1 observation(s))
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (17)
atob( ... new Function(
background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaW
background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaW
background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaW
{{export function init(elem) {// The following logic provides auto-scroll behavior for the chat messages list.
import DOMPurify from './lib/dompurify/dist/purify.es.mjs';
.markdown-link-check.json
.markdownlint.json
curl http://127.0.0.1:PORT/v1/models
dotnet user-secrets set "LocalModel:Endpoint" "http://127.0.0.1:PORT/v1"
-Uri "http://127.0.0.1:PORT/v1/chat/completions" `
var baseUrl = "http://127.0.0.1:PORT/v1"; // replace PORT with the URL exposed by the local service
Part 11 - Deployment/GenAiLab/GenAiLab.Web/wwwroot/lib/pdfjs-dist/dist/build/pdf.worker.min.mjs
Gates applied: critical_finding, no_behavioural_pass.
33066d5c1f92full audit observations/trust-audit/mcp-server/dotnet-presentations__ai-workshop.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 33066d5c1f92 | BLOCK | D | 69 | first audit |
Questions
What is the AI Workshop MCP server?
Building GenAI Apps in C#: Microsoft Extensions for AI, Templates, Microsoft Foundry & More
Is AI Workshop safe to connect to an agent?
No — not without reading the findings first. The audit graded it D (69/100) and found 1 critical or high issue in the source. Each one is listed on this page with the file and line it is on.
What credentials does AI Workshop need?
No credential environment variables were found in its source, so it appears to need none.
How does AI Workshop run?
It speaks stdio, so it runs as a local process your client starts.
How current is this page?
The grade is for one exact copy of the source (33066d5c1f92), read on 2026-10-08. The repository is watched and re-audited when it changes.