Files
microsoft--agent-framework/dotnet/samples/02-agents/AgentProviders/foundry/Agent_Step26_FoundryToolboxMcpSkills
wehub-resource-sync db620d33df
dotnet-build-and-test / dotnet-test-functions (push) Has been cancelled
dotnet-build-and-test / paths-filter (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Debug, windows-latest, net9.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net8.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-foundry-hosted-it (push) Has been cancelled
dotnet-build-and-test / dotnet-build-and-test-check (push) Has been cancelled
dotnet-build-and-test / Integration Test Report (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:39:25 +08:00
..

Foundry Toolbox MCP Skills

This sample uses AgentSkillsProviderBuilder to discover MCP-based skills from a Foundry Toolbox endpoint and inject them as AIContextProviders so the agent can discover and use them at runtime.

What this sample demonstrates

  • Connecting to a Foundry toolbox's MCP endpoint via Streamable HTTP transport
  • Injecting a fresh Azure AI bearer token (https://ai.azure.com/.default) on every MCP request
  • Using AgentSkillsProviderBuilder.UseMcpSkills(client) to discover skills from the toolbox
  • Injecting the discovered skills into AIProjectClient.AsAIAgent(...) via AIContextProviders

Prerequisites

  • A Microsoft Foundry project with a toolbox already configured
  • The toolbox MCP endpoint must expose skill://index.json with skill-md entries (SEP-2640). If the resource is absent, the sample runs but the skills provider will be empty.
  • An authenticated Azure identity (for example, sign in with az login)

Set the following environment variables:

$env:FOUNDRY_PROJECT_ENDPOINT="https://your-foundry-service.services.ai.azure.com/api/projects/your-foundry-project"
$env:FOUNDRY_MODEL="gpt-5.4-mini"
$env:FOUNDRY_TOOLBOX_MCP_SERVER_URL="https://your-foundry-service.services.ai.azure.com/api/projects/your-project/toolboxes/your-toolbox/mcp?api-version=v1"

Run the sample

dotnet run