﻿---
title: "连接 Microsoft Learn 文档 MCP"
summary: "通过 learn.microsoft.com/api/mcp 查询公开文档，无需登录或密钥。该服务与 Azure 资源管理 MCP 分别配置。"
category: mcp
level: starter
surfaces: [cli, app, ide]
tags: ["MCP", "Microsoft Learn", "文档"]
canonical: /tips/microsoft-learn-codex-mcp/
---

# 连接 Microsoft Learn 文档 MCP

通过 learn.microsoft.com/api/mcp 查询公开文档，无需登录或密钥。该服务与 Azure 资源管理 MCP 分别配置。

Microsoft Learn MCP 是远程 Streamable HTTP，读公开文档，无需密钥。仓库 README 给 Codex 的一行是：

```bash
codex mcp add microsoft-learn --url https://learn.microsoft.com/api/mcp
```

```toml
[mcp_servers.microsoft-learn]
url = "https://learn.microsoft.com/api/mcp"
enabled = true
```

入口是 `/api/mcp`，**不要**再叠一层 `/mcp`。**microsoft-learn 远程无鉴权无需 OAuth 登录**。不要 `--bearer-token-env-var`，也浏览器打开这支 URL 常回 405，那是给 MCP 客户端的，不是网页。

Deep Research 才用 `https://learn.microsoft.com/api/mcp/openai-compatible`，**不是** Codex 这张表。实验参数 `maxTokenBudget` 仅在需要时配置。

仓库里有 `.codex-plugin` 和 `.agents/plugins/marketplace.json`。清单 name 是 `microsoftdocs-local`，插件 name 是 `microsoft-docs`。README 用户表**没写** `plugin marketplace add`。想装插件再：

```bash
codex plugin marketplace add MicrosoftDocs/mcp
codex plugin add microsoft-docs@microsoftdocs-local
```

插件 `.mcp.json` 会登记同一张 `microsoft-learn` 表。**不要**和手写 `mcp add microsoft-learn` 叠成两台。Copilot 的 `/plugin install microsoftdocs/mcp` 也不是 Codex。

`mslearn setup --cli --codex` 只把 CLI 技能写到 `~/.agents/skills/`（项目层是 `.agents/skills/`），**不会**写 MCP 表。有 MCP 时技能应让模型优先走 MCP，CLI 技能只当回退。不要把 `npx @microsoft/learn-cli` 当 `codex mcp add`。

Azure Skills 使用独立的插件源和资源管理工具。那边是 `marketplace add microsoft/azure-skills`，插件 MCP 是本机 `npx @azure/mcp@latest server start`，要 `az login`，会动订阅。Learn MCP 只查文档。也不要和 Azure DevOps 本地 `@azure-devops/mcp` 写成一台。

工具会随服务变，不要把名字写进脚本。会话里用 `/mcp` 看当前列表。保持工具批准。

网页 Cloud 不读取 `~/.codex/config.toml`。配置后重新打开会话。用 `codex mcp get microsoft-learn` 看传输是 streamable_http，url 是 `https://learn.microsoft.com/api/mcp`，Auth 是 Unsupported。

## 来源

- [MicrosoftDocs/mcp](https://github.com/MicrosoftDocs/mcp)
- [Microsoft Learn MCP Server](https://learn.microsoft.com/en-us/training/support/mcp)
