/ 目录 / 演练场 / Microsoft Learn MCP
● 官方 MicrosoftDocs ⚡ 即开即用

Microsoft Learn MCP

作者 MicrosoftDocs · MicrosoftDocs/mcp

微软官方 Learn MCP——搜索并获取当前 Azure/.NET/M365/Windows 文档和代码示例,并附带引用链接。

Microsoft Learn MCP 是微软文档团队托管在 learn.microsoft.com/api/mcp 的远程 MCP 端点。它提供基于 Microsoft Learn 内容库的搜索和获取工具——Claude 可以获取整个微软技术栈的最新文档、API 参考和代码示例,并提供正确的引用链接,无需抓取网页,也不存在快照过时的问题。

为什么要用

核心特性

实时演示

实际使用效果

microsoft-learn-mcp.replay ▶ 就绪
0/0

安装

选择你的客户端

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "microsoft-learn-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://learn.microsoft.com/api/mcp"
      ]
    }
  }
}

打开 Claude Desktop → Settings → Developer → Edit Config。保存后重启应用。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "microsoft-learn-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://learn.microsoft.com/api/mcp"
      ]
    }
  }
}

Cursor 使用与 Claude Desktop 相同的 mcpServers 格式。项目级配置优先于全局。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "microsoft-learn-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://learn.microsoft.com/api/mcp"
      ]
    }
  }
}

点击 Cline 侧栏中的 MCP Servers 图标,然后选 "Edit Configuration"。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "microsoft-learn-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://learn.microsoft.com/api/mcp"
      ]
    }
  }
}

格式与 Claude Desktop 相同。重启 Windsurf 生效。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "microsoft-learn-mcp",
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://learn.microsoft.com/api/mcp"
      ]
    }
  ]
}

Continue 使用服务器对象数组,而非映射。

~/.config/zed/settings.json
{
  "context_servers": {
    "microsoft-learn-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "mcp-remote",
          "https://learn.microsoft.com/api/mcp"
        ]
      }
    }
  }
}

加入 context_servers。Zed 保存后热重载。

claude mcp add microsoft-learn-mcp -- npx -y mcp-remote https://learn.microsoft.com/api/mcp

一行命令搞定。用 claude mcp list 验证,claude mcp remove 卸载。

使用场景

实战用法: Microsoft Learn MCP

根据最新文档实现 Azure 资源模式

👤 Azure 上的云工程师 ⏱ ~20 min intermediate

何时使用: Claude 总是用已废弃的属性名写 Bicep/Terraform,你想让它使用当前 API。

步骤
  1. 搜索文档
    Microsoft Learn MCP:搜索「Azure Container Apps managed identity」,拉取当前文档。✓ 已复制
    → 搜索返回带 URL 的 Learn 页面
  2. 获取并引用
    获取「分配用户分配身份」的章节,直接引用当前 Bicep schema,不要意译。✓ 已复制
    → 带属性名的精确 Bicep 片段
  3. 应用
    现在为我的 container app 编写 Bicep,使用已有的 identity id-prod-app,与你引用的 schema 保持一致。✓ 已复制
    → Bicep 能在当前 Microsoft.App API 下正常部署

结果: Bicep 第一次部署就成功,因为 schema 与当前 Azure API 一致。

注意事项
  • 搜索到的文档页面是旧 API 版本的 — 始终检查 URL 中是否有「latest」或正确的 api-version
搭配使用: filesystem · github

不离开 Claude 就能查到 .NET API

👤 C#/.NET 开发者 ⏱ ~10 min beginner

何时使用: 你需要 System.Threading.Channels.Channel.CreateBounded 的精确签名。

步骤
  1. 搜索
    Microsoft Learn:.NET 9 中 Channel.CreateBounded 的签名。✓ 已复制
    → 返回带重载的 API 参考页面
  2. 直接使用
    用 BoundedChannelOptions(capacity 100,FullMode=Wait)编写一个生产者/消费者,与文档精确匹配。✓ 已复制
    → 代码与当前 API 面一致

结果: 不需要切换文档页面就能写出正确的 C# 代码。

注意事项
  • .NET Framework 和 .NET(Core)文档混用 — 始终指定版本;Learn 会同时返回两者

编写带引用链接的 Microsoft Graph PowerShell 脚本

👤 M365 管理员 ⏱ ~25 min intermediate

何时使用: 你想批量更新许可证分配,需要当前 Graph cmdlet 语法。

步骤
  1. 查找 cmdlet
    Learn:Microsoft.Graph PowerShell SDK 中 Set-MgUserLicense 的当前语法。✓ 已复制
    → 带参数集的 cmdlet 文档
  2. 编写脚本
    编写一个脚本,读取 users.csv(UPN, SkuPartNumber)并分配许可证,引用你使用的 Learn URL。✓ 已复制
    → 可运行的 PowerShell 脚本,注释块中包含引用链接

结果: 带引用链接的可审计脚本,便于审阅。

注意事项
  • 使用了旧 AzureAD 模块语法 — AzureAD 已废弃;在 prompt 中明确要求 Microsoft.Graph
搭配使用: filesystem

组合

与其他 MCP 搭配,撬动十倍杠杆

microsoft-learn-mcp + github

在 Learn 找到当前 Azure 模式后提 IaC 变更 PR

Learn:拉取 Container Apps + identity。GitHub:提 PR 更新我的 Bicep。✓ 已复制
microsoft-learn-mcp + filesystem

将引用片段保存为 runbook

拉取 M365 许可证 cmdlet 文档,将带引用链接的 runbook 保存到 /runbooks/m365-license.md。✓ 已复制
microsoft-learn-mcp + context7

交叉对比微软文档与更广泛的库文档

比较 Microsoft Learn 推荐的模式与 context7 对同一 SDK 的说法。✓ 已复制

工具

此 MCP 暴露的能力

工具输入参数何时调用成本
microsoft_docs_search query: str 第一步 免费
microsoft_docs_fetch url: str 拉取某个特定页面 免费

成本与限制

运行它的成本

API 配额
微软托管;合理的每 IP 公平使用限制
每次调用 Token 数
300–5000
费用
免费
提示
先搜索,再只获取最相关的 1–2 个 URL

安全

权限、密钥、影响范围

凭据存储: 无——公开文档
数据出站: learn.microsoft.com

故障排查

常见错误与修复

结果页面是旧 API 版本的

在查询中追加「api-version=YYYY-MM」或 .NET 版本

搜索结果返回营销页面

在查询中加「docs」或「reference」;过滤 URL 中包含 '/dotnet/api/' 或 '/azure/' 的页面

mcp-remote 连接被拒绝

检查网络;端点为 https://learn.microsoft.com/api/mcp

验证: curl -I https://learn.microsoft.com/api/mcp

替代方案

Microsoft Learn MCP 对比其他方案

替代方案何时用它替代权衡
Context7你想要更广泛的库覆盖,不只是微软对微软特有文档权威性较弱
GitMCP你想要原始仓库源码而非精选文档无人工整理;获取的是仓库里的所有内容

更多

资源

📖 阅读 GitHub 上的官方 README

🐙 查看未解决的 issue

🔍 浏览全部 400+ MCP 服务器和 Skills