microsoft-code-reference
Look up Microsoft API references, find working code samples, and verify SDK code is correct. Use when working with Azure SDKs, .NET libraries, or Microsoft APIs—to find the right method, check parameters, get working examples, or troubleshoot errors. Catches hallucinated methods, wrong signatures, and deprecated patterns by querying official docs.
摘要
- 用途
- 依據官方文件與可運作的程式碼範例,確認 Microsoft API 與 SDK 的用法。
- 使用時機
- 需要確認 API 是否存在、方法簽章、套件或版本相符的用法,或排查 SDK 錯誤時使用。
- 輸出結果
- 提供相關的 Microsoft 參考資料與程式碼範例,協助正確實作。
上游變更(3 筆,最新收錄 2026-03-16)
822d040 Add Learn CLI option to microsoft-docs skills (#1003) 新增 mslearn CLI 作為 Microsoft Learn MCP 的替代方案,並提供執行與安裝範例,以及 MCP 工具與 CLI 指令的對照。 a3035a6 Add Microsoft Code Reference and Microsoft Docs skills with detailed usage instructions 新增 Microsoft Code Reference 技能,提供使用 MCP 尋找程式碼範例、查詢 API 詳情、排查錯誤及驗證 SDK 程式碼的指引。 npx skills add "lettucebo/Skills#v2.2.0@microsoft-code-reference" --full-depth ⚠ v2.2.0 發布後即可使用
Microsoft Code Reference
Tools
| Need | Tool | Example |
|---|---|---|
| API method/class lookup | microsoft_docs_search |
"BlobClient UploadAsync Azure.Storage.Blobs" |
| Working code sample | microsoft_code_sample_search |
query: "upload blob managed identity", language: "python" |
| Full API reference | microsoft_docs_fetch |
Fetch 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 Type | Query |
|---|---|
| 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" (
UploadFilevs actualUpload) - Mixing SDK versions (v11
CloudBlobClientvs v12BlobServiceClient) - 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:
- Confirm method or package exists —
microsoft_docs_search(query: "[ClassName] [MethodName] [Namespace]") - Fetch full details (for overloads/complex params) —
microsoft_docs_fetch(url: "...") - Find working sample —
microsoft_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 Tool | CLI 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.