Microsoft Code Reference
Tools
| Need | Tool | Example |
|---|
| API method/class lookup | INLINECODE0 | INLINECODE1 |
| 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:
CODEBLOCK0
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
CODEBLOCK1
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 | INLINECODE10 |
| 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 exists — INLINECODE22
- Fetch full details (for overloads/complex params) — INLINECODE23
- Find working sample — INLINECODE24
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 the command line instead:
CODEBLOCK2
| MCP Tool | CLI Command |
|---|
| INLINECODE26 | INLINECODE27 |
| INLINECODE28 |
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.
Microsoft 代码参考
工具
| 需求 | 工具 | 示例 |
|---|
| API 方法/类查找 | microsoftdocssearch | BlobClient UploadAsync Azure.Storage.Blobs |
| 可运行代码示例 |
microsoft
codesample_search | query: upload blob managed identity, language: python |
| 完整 API 参考 | microsoft
docsfetch | 从 microsoft
docssearch 获取 URL(用于重载、完整签名) |
查找代码示例
使用 microsoftcodesample_search 获取官方可运行示例:
microsoftcodesample_search(query: upload file to blob storage, language: csharp)
microsoftcodesample_search(query: authenticate with managed identity, language: python)
microsoftcodesample_search(query: send message service bus, language: javascript)
使用时机:
- - 编写代码前——查找可遵循的可运行模式
- 出现错误后——将你的代码与已知正确的示例进行对比
- 不确定初始化/设置方式——示例展示了完整的上下文
API 查找
验证方法是否存在(包含命名空间以提高精确度)
BlobClient UploadAsync Azure.Storage.Blobs
GraphServiceClient Users Microsoft.Graph
查找类/接口
DefaultAzureCredential class Azure.Identity
查找正确的包
Azure Blob Storage NuGet package
azure-storage-blob pip package
当方法有多个重载或需要完整的参数详情时,获取完整页面。
错误排查
使用 microsoftcodesamplesearch 查找可运行代码示例并与你的实现进行对比。针对特定错误,使用 microsoftdocssearch 和 microsoftdocs_fetch:
| 错误类型 | 查询 |
|---|
| 方法未找到 | [ClassName] methods [Namespace] |
| 类型未找到 |
[TypeName] NuGet package namespace |
| 签名错误 | [ClassName] [MethodName] overloads → 获取完整页面 |
| 弃用警告 | [OldType] migration v12 |
| 身份验证失败 | DefaultAzureCredential troubleshooting |
| 403 禁止访问 | [ServiceName] RBAC permissions |
何时需要验证
在以下情况始终进行验证:
- - 方法名看起来过于方便(UploadFile 与实际 Upload)
- 混合使用 SDK 版本(v11 CloudBlobClient 与 v12 BlobServiceClient)
- 包名不符合约定(.NET 的 Azure.,Python 的 azure-)
- 首次使用某个 API
验证工作流
在使用 Microsoft SDK 生成代码之前,验证其正确性:
- 1. 确认方法或包存在 — microsoftdocssearch(query: [ClassName] [MethodName] [Namespace])
- 获取完整详情(针对重载/复杂参数)— microsoftdocsfetch(url: ...)
- 查找可运行示例 — microsoftcodesample_search(query: [task], language: [lang])
对于简单查找,仅步骤 1 可能就足够了。对于复杂 API 使用,请完成所有三个步骤。
CLI 替代方案
如果 Learn MCP 服务器不可用,请改用命令行的 mslearn CLI:
sh
直接运行(无需安装)
npx @microsoft/learn-cli search BlobClient UploadAsync Azure.Storage.Blobs
或全局安装后运行
npm install -g @microsoft/learn-cli
mslearn search BlobClient UploadAsync Azure.Storage.Blobs
| MCP 工具 | CLI 命令 |
|---|
| microsoftdocssearch(query: ...) | mslearn search ... |
| microsoftcodesample_search(query: ..., language: ...) |
mslearn code-search ... --language ... |
| microsoft
docsfetch(url: ...) | mslearn fetch ... |
向 search 或 code-search 传递 --json 参数以获取原始 JSON 输出,便于进一步处理。