背景
相も変わらずですが。
GitHub Copilot の Coding Agentと戯れ続ける日々です😎
GitHub Copilot Coding agent:
既存のAgent君に、更新され続ける、Azure SDKの詳細やら、Python SDKの詳細やらを伝え続けるのは辛いわけです。
また、ちょっと調べないと実装できない機能もあるでしょう。例えばアプリへの認証設定はどうでしょうか? キー認証ではなく、EntraIDでのManaged ID認証に出来ればしたいわけです。これはそう簡単ではない。
Microsoftの公式ドキュメントには、それらが詰まっています。そして、それがMCP Serverとして公開され使えるようになっています。素晴らしい点が認証が不要です😊
Microsoft Docs MCP Server:
(2025/7/10更新)
GitHub Copilot Coding agent はRemote MCP Serverを使えます。そのまま設定をすればいけます!
前提条件
- GitHub Copilot Coding agentが使えること
手順
1. Repository 作成
これは、説明不要かと。
一応、Private で作成するのをお忘れなく。GitHub Copilot Coding agentはPrivate Repositoryのみで動作します。
2. MCP Server の設定
Repositoryの[Settings] - [Copilot] - [Coding agent] から、設定の画面に移動します。
そのまま、先ほどのMicroft Docs MCP ServerのLocal MCP Serverの設定を使います。ところが、これはエラーになります😅
- typeとtoolsの指定が必須
以下の様に修正して使用します。
{
"mcpServers": {
"MicrosoftDocs": {
"type": "http",
"url": "https://learn.microsoft.com/api/mcp",
"tools": ["*"]
}
}
}
3. 動作確認
まずは動くかどうかのため、MCP Serverの利用や、MCP Server名の指定などを明記します。
GitHubのIssueのタイトル例:
[REST API] Expense Submit - Azure Functions初期実装
内容の例:
SDK、実装手順などMicrosoftの公式ドキュメントを参照して、Azure Functionsの最新バージョンで動作するAPIを実装してください。
MCP Serverを呼び出した場合、そのソースドキュメントの情報を「参考情報」としてREADME.mdに追記
# 作成フォルダ
- /api/expense-submit
# 環境
- HTTP Trigger
- Entra ID 認証
- Python
# 動作
- REST APIとして、場所と金額を受け取って、経費精算の関数を呼び出す
- 経費精算の関数はスタブのため、実際には実装しなくてもよい
- 処理が成功したら、「Complete」という文字列を返す
- 処理が失敗したら以下の情報を返す
- 「エラーが発生しました」
- 詳細なエラーメッセージ
# Microsoft 公式ドキュメントを参照するMCP Server
- MicrosoftDocsMcp
# README.md ファイル
- 処理実装の概要を説明
- 起動方法の手順を作成
PRの途中ですが。タスクとして定義されていますね!
Researched Microsoft official documentation for Python v2 model, HTTP triggers, and Entra ID authentication
そして、現在、唯一のToolsであるmicrosoft_docs_searchが呼び出されているのがわかりますね!
Issueの中で、参照した公式ドキュメントのURLをまとめるように指示しました。
これもバッチリです!
後は、Pull Requestの内容を精査して。ここ大事。
Merge しましょう。
まとめ
未来が開けた感じがしますね。でも、これもすぐに日常になると思います。
Microsoftの公式ドキュメントの範囲は広いです。私たちがより狭く具体的にやりたいコトや参照してもらいたいことを指定しないと、検索があやふやになります。
Prompt同様、Issueにも、より具体的に。もっと言えば、コーディングに近い感覚で文章作成するのが大事になってきます。
そのうち、PromptのRe-writeの機能も付与されるかもしれませんね。Deep Research系は、それらが実装されることが多いですので。