microsoft-code-reference

microsoft-code-reference

热门

查找 Microsoft API 参考文档、获取可用的代码示例,并验证 SDK 代码的正确性。适用于使用 Azure SDK、.NET 库或 Microsoft API 时,查找正确的方法、检查参数、获取工作示例或排查错误。通过查询官方文档,捕获虚构的方法、错误的签名和已弃用的模式。

3.6万Star
4464Fork
更新于 2026/7/2
SKILL.md
readonly只读
name
microsoft-code-reference
description

查找 Microsoft API 参考文档、获取可用的代码示例,并验证 SDK 代码的正确性。适用于使用 Azure SDK、.NET 库或 Microsoft API 时,查找正确的方法、检查参数、获取工作示例或排查错误。通过查询官方文档,捕获虚构的方法、错误的签名和已弃用的模式。

Microsoft Code Reference

工具

需求 工具 示例
API 方法/类查找 microsoft_docs_search "BlobClient UploadAsync Azure.Storage.Blobs"
可用的代码示例 microsoft_code_sample_search query: "upload blob managed identity", language: "python"
完整 API 参考 microsoft_docs_fetch microsoft_docs_search 获取 URL(用于重载、完整签名)

查找代码示例

使用 microsoft_code_sample_search 获取官方、可用的示例:

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")

何时使用:

  • 编写代码前——查找可遵循的工作模式
  • 出现错误后——将你的代码与已知正确的示例进行比较
  • 不确定初始化/设置——示例展示了完整的上下文

API 查找

# 验证方法是否存在(包含命名空间以提高精度)
"BlobClient UploadAsync Azure.Storage.Blobs"
"GraphServiceClient Users Microsoft.Graph"

# 查找类/接口
"DefaultAzureCredential class Azure.Identity"

# 查找正确的包
"Azure Blob Storage NuGet package"
"azure-storage-blob pip package"

当方法有多个重载或需要完整的参数详情时,获取完整页面。

错误排查

使用 microsoft_code_sample_search 查找可用的代码示例,并与你的实现进行比较。对于特定错误,使用 microsoft_docs_searchmicrosoft_docs_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. 确认方法或包存在microsoft_docs_search(query: "[ClassName] [MethodName] [Namespace]")
  2. 获取完整详情(用于重载/复杂参数)— microsoft_docs_fetch(url: "...")
  3. 查找工作示例microsoft_code_sample_search(query: "[task]", language: "[lang]")

对于简单查找,仅步骤 1 可能就足够。对于复杂的 API 使用,请完成所有三个步骤。

CLI 备选方案

如果 Learn MCP 服务器不可用,请使用终端或 shell(例如 Bash、PowerShell 或 cmd)中的 mslearn CLI 作为替代:

# 直接运行(无需安装)
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 命令
microsoft_docs_search(query: "...") mslearn search "..."
microsoft_code_sample_search(query: "...", language: "...") mslearn code-search "..." --language ...
microsoft_docs_fetch(url: "...") mslearn fetch "..."

searchcode-search 传递 --json 以获取原始 JSON 输出,便于进一步处理。