microsoft-code-reference

от github

Проверяет методы Microsoft SDK, находит рабочие примеры кода и выявляет вымышленные API на основе официальной документации. Три основных инструмента: microsoft_docs_search для поиска API, microsoft_code_sample_search для поиска рабочих примеров на C#/Python/JavaScript и microsoft_docs_fetch для получения полных справочных страниц с перегрузками. Выявляет типичные ошибки: неверные сигнатуры методов, устаревшие шаблоны, несоответствие версий SDK (v11 vs v12) и неправильные имена пакетов. Работает с Azure SDK, библиотеками .NET и...

npx skills add https://github.com/github/awesome-copilot --skill microsoft-code-reference

Microsoft Code Reference

Tools

NeedToolExample
API method/class lookupmicrosoft_docs_search"BlobClient UploadAsync Azure.Storage.Blobs"
Working code samplemicrosoft_code_sample_searchquery: "upload blob managed identity", language: "python"
Full API referencemicrosoft_docs_fetchFetch URL from microsoft_docs_search (for overloads, full signatures)

Finding Code Samples

Use microsoft_code_sample_search to get official, working examples:

microsoft_code_sample_search(query: "upload file to blob storage", language: "csharp")
microsoft_code_sample_search(query: "authenticate with managed identity", language: "python")
microsoft_code_sample_search(query: "send message service bus", language: "javascript")

When to use:

  • Before writing code—find a working pattern to follow
  • After errors—compare your code against a known-good sample
  • Unsure of initialization/setup—samples show complete context

API Lookups

# Verify method exists (include namespace for precision)
"BlobClient UploadAsync Azure.Storage.Blobs"
"GraphServiceClient Users Microsoft.Graph"

# Find class/interface
"DefaultAzureCredential class Azure.Identity"

# Find correct package
"Azure Blob Storage NuGet package"
"azure-storage-blob pip package"

Fetch full page when method has multiple overloads or you need complete parameter details.

Error Troubleshooting

Use microsoft_code_sample_search to find working code samples and compare with your implementation. For specific errors, use microsoft_docs_search and microsoft_docs_fetch:

Error TypeQuery
Method not found"[ClassName] methods [Namespace]"
Type not found"[TypeName] NuGet package namespace"
Wrong signature"[ClassName] [MethodName] overloads" → fetch full page
Deprecated warning"[OldType] migration v12"
Auth failure"DefaultAzureCredential troubleshooting"
403 Forbidden"[ServiceName] RBAC permissions"

When to Verify

Always verify when:

  • Method name seems "too convenient" (UploadFile vs actual Upload)
  • Mixing SDK versions (v11 CloudBlobClient vs v12 BlobServiceClient)
  • Package name doesn't follow conventions (Azure.* for .NET, azure-* for Python)
  • Using an API for the first time

Validation Workflow

Before generating code using Microsoft SDKs, verify it's correct:

  1. Confirm method or package existsmicrosoft_docs_search(query: "[ClassName] [MethodName] [Namespace]")
  2. Fetch full details (for overloads/complex params) — microsoft_docs_fetch(url: "...")
  3. Find working samplemicrosoft_code_sample_search(query: "[task]", language: "[lang]")

For simple lookups, step 1 alone may suffice. For complex API usage, complete all three steps.

CLI Alternative

If the Learn MCP server is not available, use the mslearn CLI from a terminal or shell (for example, Bash, PowerShell, or cmd) instead:

# Run directly (no install needed)
npx @microsoft/learn-cli search "BlobClient UploadAsync Azure.Storage.Blobs"

# Or install globally, then run
npm install -g @microsoft/learn-cli
mslearn search "BlobClient UploadAsync Azure.Storage.Blobs"
MCP ToolCLI Command
microsoft_docs_search(query: "...")mslearn search "..."
microsoft_code_sample_search(query: "...", language: "...")mslearn code-search "..." --language ...
microsoft_docs_fetch(url: "...")mslearn fetch "..."

Pass --json to search or code-search to get raw JSON output for further processing.

Больше skills от github

console-rendering
github
Инструкции по использованию системы консольного рендеринга на основе тегов структур в Go
official
acquire-codebase-knowledge
github
Используйте этот навык, когда пользователь явно просит составить карту, задокументировать или ознакомиться с существующей кодовой базой. Активируйте по запросам вроде "составь карту этой кодовой базы", "задокументируй…
official
acreadiness-assess
github
Run the AgentRC readiness assessment on the current repository and produce a static HTML dashboard at reports/index.html. Wraps `npx github:microsoft/agentrc…
official
acreadiness-generate-instructions
github
Генерирует настраиваемые файлы инструкций для ИИ-агентов через команду инструкций AgentRC. Создаёт .github/copilot-instructions.md (по умолчанию, рекомендуется для Copilot в VS…
official
acreadiness-policy
github
Помочь пользователю выбрать, написать или применить политику AgentRC. Политики настраивают оценку готовности, отключая нерелевантные проверки, переопределяя влияние/уровень, задавая…
official
add-educational-comments
github
Добавляет учебные комментарии в файлы с кодом, превращая их в эффективные учебные ресурсы. Адаптирует глубину и тон объяснений под три настраиваемых уровня знаний: начальный, средний и продвинутый. Автоматически запрашивает файл, если он не предоставлен, с нумерованным списком для быстрого выбора. Расширяет файлы до 125% только за счёт учебных комментариев (жёсткое ограничение: 400 новых строк; 300 для файлов длиннее 1000 строк). Сохраняет кодировку файла, стиль отступов, синтаксическую корректность и...
official
adobe-illustrator-scripting
github
Пишите, отлаживайте и оптимизируйте скрипты автоматизации Adobe Illustrator с помощью ExtendScript (JavaScript/JSX). Используйте при создании или изменении скриптов, которые управляют…
official
agent-governance
github
Декларативные политики, классификация намерений и журналы аудита для контроля доступа и поведения инструментов ИИ-агентов. Компонуемые политики управления определяют разрешённые/заблокированные инструменты, фильтры контента, ограничения скорости и требования к утверждению — хранятся как конфигурация, а не код. Семантическая классификация намерений обнаруживает опасные запросы (утечка данных, повышение привилегий, инъекция подсказок) до выполнения инструмента с помощью сигналов на основе шаблонов. Декоратор управления на уровне инструмента применяет политики на функции...
official