mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
b1b79d5cca
Implement Agent Skills discovery over MCP following the SEP-2640 convention: - McpSkillsSource: reads skill://index.json to discover skills served by an MCP server - McpSkill: lazily fetches SKILL.md content via resources/read on demand - McpSkillResource: wraps MCP resource results (text and binary) - Path traversal protection in get_resource for defense in depth - Samples for Foundry Toolbox and standalone MCP skills server - Comprehensive unit tests (514 lines) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
b1b79d5cca
·
2026-05-28 19:35:34 +01:00
History
MCP-Based Agent Skills Sample
This sample demonstrates how to discover Agent Skills served over MCP with an Agent.
What it demonstrates
- Connecting to a remote MCP server (over streamable HTTP) that exposes skill resources following the SEP-2640 convention.
- Building a
SkillsProviderfrom anMcpSkillsSource, which readsskill://index.json(SEP-2640 canonical discovery) and constructs skills from the index entries. - The progressive disclosure pattern across MCP: advertise → load → read resources, exactly as for filesystem-backed skills.
Running the Sample
Prerequisites
- Python 3.10+
- An Azure AI Foundry project with a deployed model
- Azure CLI authentication (
az login) - A running MCP server that hosts SEP-2640 skill resources (see "Providing an MCP server" below)
Setup
Set the following environment variables (in a .env file or your shell):
$env:FOUNDRY_PROJECT_ENDPOINT="https://your-endpoint.services.ai.azure.com/api/projects/your-project"
$env:FOUNDRY_MODEL="gpt-4o-mini"
$env:MCP_SKILLS_SERVER_URL="https://your-mcp-server.example.com/mcp"
Run
python mcp_based_skill.py
Providing an MCP server
This sample is a consumer: it does not host an MCP server itself. To try
it end-to-end you need an MCP server that exposes the SEP-2640 skill
resources (skill://index.json plus per-skill SKILL.md).
- See
samples/02-agents/mcp/agent_as_mcp_server.pyfor an example of hosting an MCP server via the Agent Framework. - The Model Context Protocol working group maintains reference MCP-skills
servers at
modelcontextprotocol/experimental-ext-skills.