Microsoft NuGet について
Microsoft NuGet は NuGet パッケージ管理向けの MCP サーバーで、.NET 開発者と AI コーディングツールを対象としています。設定済みの NuGet フィードからパッケージ情報を取得し、脆弱性の修正計画、パッケージのアップグレード計画、サプライチェーンのセキュリティ確認に対応しています。
主な機能
- 01設定済み NuGet フィードからのリアルタイムなパッケージ情報取得
- 02脆弱性のあるパッケージに対する保守的な修正計画
- 03パッケージグラフと対象フレームワークに基づくアップグレード計画
- 04Central Package Management や NuGet Audit の設定確認
- 05.NET 10 Preview 6 以降が必要
活用シーン
- 01プロジェクトの依存関係に含まれる既知の脆弱性の確認
- 02NuGet パッケージの互換バージョンへのアップグレード計画
- 03リポジトリの NuGet サプライチェーン設定のレビュー
MCP 対応
このプロジェクトは nuget.org から dnx で起動される MCP サーバーで、パッケージ検索、脆弱性修正、バージョン更新、サプライチェーン確認のツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
NuGet MCP サーバー
NuGet の Model Context Protocol(MCP)サーバーが含まれており、NuGet パッケージ管理の高度なツールや自動化のシナリオを実現します。 最新情報については、NuGet の公式 MCP ドキュメントを参照してください。
機能
- 設定済みの NuGet フィードを使用して、パッケージに関するリアルタイムの情報を取得します。
- 推移的な依存関係も含め、既知の脆弱性があるパッケージに対して、慎重な修正計画を提示します。
- プロジェクトのパッケージグラフとターゲットフレームワークに基づいて、パッケージのアップグレード計画を提示します。
- リポジトリの NuGet サプライチェーンの状態(Central Package Management、NuGet Audit、Package Source Mapping、
NuGet.Configの妥当性)を確認し、強化策を提案します。
必要条件
MCP サーバーを実行するには、**.NET 10 Preview 6 以降**がインストールされている必要があります。
このバージョンの .NET では、nuget.org から MCP サーバーをダウンロード、インストール、実行するためのコマンド dnx が追加されています。
.NET のバージョンを確認するには、ターミナルで次のコマンドを実行します。
dotnet --info
はじめに
NuGet MCP サーバーを設定するには、mcp.json ファイルなどの設定を変更する必要があります。
次の表に、各種環境で MCP サーバーを設定するためのドキュメントへのリンクを示します。
| 環境 | ドキュメント |
|---|---|
| Visual Studio | MCP 構成を自動検出するためのファイルの場所 |
| VS Code | VS Code での MCP 構成 |
| GitHub Copilot コーディングエージェント | リポジトリでの MCP サーバーの設定 |
Visual Studio 2026
NuGet MCP サーバーは Visual Studio 2026 に標準搭載されています。 GitHub Copilot のチャットツールメニューで、初回に有効にする必要があります。
Visual Studio に含まれているものより新しいバージョンの NuGet MCP サーバーを使用する場合は、次のスニペットを設定して mcp.json に含めてください。
{
"servers": {
"nuget": {
"type": "stdio",
"command": "dnx",
"args": [ "NuGet.Mcp.Server", "--source", "https://api.nuget.org/v3/index.json", "--yes" ]
}
}
}
MCP サーバーの特定のバージョンを使用する場合は、[email protected] のようにパッケージ名で指定できます。
{
"servers": {
"nuget": {
"type": "stdio",
"command": "dnx",
"args": [ "[email protected]", "--source", "https://api.nuget.org/v3/index.json", "--yes" ]
}
}
}
この方法で設定した場合、新しいリリースが公開されたらバージョンを更新する必要があります。
使用する mcp.json の場所について詳しくは、MCP 構成を自動検出するためのファイルの場所を参照してください。
Visual Studio 2022
Visual Studio 2022 で MCP サーバーを使用するには、更新プログラム 17.14 以降がインストールされていることを確認してください。
次に、以下のスニペットを使用して mcp.json に含めてください。
{
"servers": {
"nuget": {
"type": "stdio",
"command": "dnx",
"args": [ "NuGet.Mcp.Server", "--source", "https://api.nuget.org/v3/index.json", "--yes" ]
}
}
}
MCP サーバーの特定のバージョンを使用する場合は、[email protected] のようにパッケージ名で指定できます。
{
"servers": {
"nuget": {
"type": "stdio",
"command": "dnx",
"args": [ "[email protected]", "--source", "https://api.nuget.org/v3/index.json", "--yes" ]
}
}
}
この方法で設定した場合、新しいリリースが公開されたらバージョンを更新する必要があります。
使用する mcp.json の場所について詳しくは、MCP 構成を自動検出するためのファイルの場所を参照してください。
VS Code
VS Code で NuGet MCP サーバーを構成するには、以下のバッジを使って MCP サーバーをすばやくインストールできます。
Visual Studio または VS Code で使用する MCP サーバーを手動で構成するには、以下のスニペットを使用して mcp.json に追加してください。
{
"servers": {
"nuget": {
"type": "stdio",
"command": "dnx",
"args": [ "NuGet.Mcp.Server", "--source", "https://api.nuget.org/v3/index.json", "--yes" ]
}
}
}
特定のバージョンの MCP サーバーを使用する場合は、[email protected] のようにパッケージ名で指定できます。
{
"servers": {
"nuget": {
"type": "stdio",
"command": "dnx",
"args": [ "[email protected]", "--source", "https://api.nuget.org/v3/index.json", "--yes" ]
}
}
}
この方法で構成した場合、新しいリリースが利用可能になったときにバージョンを更新する必要があります。
お使いの環境で適切な mcp.json の場所については、VS Code での MCP の構成 をご覧ください。
GitHub Copilot
リポジトリ内でコーディングエージェントとして動作する GitHub Copilot と連携するように MCP サーバーを構成することもできます。
まず、Copilot コーディングエージェントに MCP サーバーの構成を追加します。
{
"mcpServers": {
"NuGet": {
"type": "local",
"command": "dnx",
"args": ["NuGet.Mcp.Server", "--yes"],
"tools": ["*"],
"env": {}
}
}
}
これにより、すべての MCP サーバーツールが利用可能になります。特定のツールを指定する場合は、"tools" パラメーターの配列に一覧を記述できます。
また、Copilot が .NET 10 Preview 6 以降をインストールするようにしてください。これにより、コマンド dnx を利用して MCP サーバーをインストールできます。
.github/workflows/copilot-setup-steps.yml
name: "Copilot Setup Steps"
# Automatically run the setup steps when they are changed to allow for easy validation, and
# allow manual testing through the repository's "Actions" tab
on:
workflow_dispatch:
push:
paths:
- .github/workflows/copilot-setup-steps.yml
pull_request:
paths:
- .github/workflows/copilot-setup-steps.yml
jobs:
# The job MUST be called `copilot-setup-steps` or it will not be picked up by Copilot.
copilot-setup-steps:
runs-on: ubuntu-latest
# Set the permissions to the lowest permissions possible needed for your steps.
# Copilot will be given its own token for its operations.
permissions:
# If you want to clone the repository as part of your setup steps, for example to install dependencies, you'll need the `contents: read` permission. If you don't clone the repository in your setup steps, Copilot will do this for you automatically after the steps complete.
contents: read
# You can define any steps you want, and they will run before the agent starts.
# If you do not check out your code, Copilot will do this for you.
steps:
- name: Install .NET 10.x
uses: actions/setup-dotnet@v5
with:
dotnet-version: |
10.x
dotnet-quality: preview
- name: dotnet --info
run: dotnet --info
現在サポートされているツール
fix_vulnerable_packages:NuGet の依存関係にある既知のセキュリティ脆弱性を、最小限の安全なバージョン変更を算出して修正します。upgrade_packages_to_latest:構成済みのパッケージソースで利用可能な、互換性のある最新バージョンに NuGet パッケージをアップグレードします。get_latest_package_version:NuGet パッケージの最新バージョンを返します。get_package_context:利用可能な場合は NuGet パッケージのAGENTS.mdコンテキストを返し、そうでない場合はパッケージの README を返します。update_package_version:依存関係グラフの互換性を保ちながら、1 つ以上の NuGet パッケージを指定したバージョンに更新します。review_supply_chain_security:リポジトリの NuGet サプライチェーンのセキュリティ態勢を確認し、強化策を提案します(例:Central Package Management、NuGet Audit、Package Source Mapping、NuGet.Config の検証)。
データ収集
本ソフトウェアは、お客様と本ソフトウェアの使用に関する情報を収集し、Microsoft に送信する場合があります。Microsoft は、この情報をサービスの提供、および製品やサービスの改善に利用する場合があります。リポジトリに記載されている方法でテレメトリを無効にできます。また、本ソフトウェアには、お客様と Microsoft がアプリケーションのユーザーからデータを収集できる機能が含まれている場合があります。これらの機能を使用する場合は、適用される法律を遵守し、アプリケーションのユーザーに適切な通知を行うとともに、Microsoft のプライバシーに関する声明のコピーを提供する必要があります。データの収集と使用について詳しくは、ヘルプドキュメントおよびプライバシーに関する声明をご覧ください。本ソフトウェアを使用することで、お客様はこれらの取り扱いに同意したものとみなされます。
テレメトリの設定
製品の改善に役立てるため、テレメトリの収集はデフォルトで有効になっています。無効にすることもできます。詳しくは、以下の「テレメトリのみを無効にする」セクションをご覧ください。
テレメトリのみを無効にする
Microsoft によるテレメトリの収集を無効にするには、環境変数 DOTNET_CLI_TELEMETRY_OPTOUT を true または 1 に設定します。
export DOTNET_CLI_TELEMETRY_OPTOUT=true
サポート
NuGet MCP サーバーで問題が発生した場合や、その他のフィードバックがある場合は、NuGet GitHub リポジトリでイシューを作成してください。 問題や提案をより適切に把握して対応できるよう、イシューテンプレートで求められている情報を記載してください。
無保証/責任の制限
このソフトウェアは、明示的か黙示的かを問わず、いかなる種類の保証または条件も伴わず、「現状有姿」で提供されます。Microsoft は、このソフトウェアの使用、誤用、または設定ミスに起因するいかなる損害についても責任を負いません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。