|
| 1 | +--- |
| 2 | +title: GitHub Copilot app modernization for .NET (Preview) FAQ |
| 3 | +description: Discover answers to common questions about GitHub Copilot app modernization for .NET |
| 4 | +ms.topic: concept-article |
| 5 | +ms.custom: devx-track-dotnet |
| 6 | +ms.date: 7/15/2025 |
| 7 | +author: alexwolfmsft |
| 8 | +ms.author: alexwolf |
| 9 | +--- |
| 10 | + |
| 11 | +# Frequently Asked Questions for GitHub Copilot app modernization for .NET (Preview) |
| 12 | + |
| 13 | +This page answers common questions about [GitHub Copilot app modernization for .NET (Preview)](overview.md). |
| 14 | + |
| 15 | +## Which version of Visual Studio should I use? |
| 16 | + |
| 17 | +Upgrade to Visual Studio 2022 version 17.14.7 or later for the best experience with both GitHub Copilot and App Modernization for .NET (Preview). |
| 18 | + |
| 19 | +## Which model should I use in GitHub Copilot agent mode? |
| 20 | + |
| 21 | +Based on our experience, GitHub Copilot and App Modernization for .NET work best with Claude Sonnet 3.7 and Claude Sonnet 4.0. |
| 22 | + |
| 23 | +## What is the MCP Server, and why is there sometimes an initial delay when running a command? |
| 24 | + |
| 25 | +The GitHub Copilot app modernization for .NET (Preview) extension uses an MCP Server to provide Azure-related knowledge bases as tools. |
| 26 | + |
| 27 | +- **Automatic setup:** |
| 28 | + On the first invocation of any App Modernization command, the extension checks for a configuration file at `%USERPROFILE%\.mcp.json`. If it's missing or the server isn't running, the extension writes the default settings and launches the MCP Server automatically. |
| 29 | + |
| 30 | +- **First-run delay:** |
| 31 | + Starting and initializing the MCP Server can take anywhere from a few milliseconds up to about 20 seconds. |
| 32 | + |
| 33 | +- **Subsequent invocations:** |
| 34 | + Once the MCP Server is running locally, you should not see that startup delay again. |
| 35 | + |
| 36 | +- **Using MCP tools in the VS Copilot Agent (outside the extension):** |
| 37 | + You can also access the same MCP-based knowledge tools inside the built-in VS Copilot Agent. Just run **Configure MCP Server**, and the full suite of MCP tools appears under the Copilot agent's tools dropdown. |
| 38 | + |
| 39 | +## What should I do if configuring the MCP Server fails? |
| 40 | + |
| 41 | +If the MCP Server doesn't start correctly, try the following steps: |
| 42 | + |
| 43 | +1. Retry the **Configure MCP Server** command. |
| 44 | +2. If it still fails, manually restart the MCP Server: |
| 45 | + 1. Switch GitHub Copilot to **Agent** mode. |
| 46 | + 2. Click the **Tools** icon in the pane. |
| 47 | + 3. Expand the **appModernization** section by clicking the arrow icon next to it. |
| 48 | + 4. Click **Restart** to relaunch the MCP Server. |
| 49 | + |
| 50 | +## Why is there an error in the "appModernization" group under Tools in GitHub Copilot Agent mode after uninstalling the extension, and how can I fix it? |
| 51 | + |
| 52 | +When the extension is installed, it adds a configuration entry to `%USERPROFILE%\.mcp.json` to register the `appModernization` tool with GitHub Copilot Agent in Visual Studio. This enables the `Tools → appModernization` group within Copilot Agent mode. |
| 53 | +After the extension is uninstalled, this configuration remains. Since the associated command no longer exists, GitHub Copilot Agent mode displays a red error indicator next to the `appModernization` group. |
| 54 | + |
| 55 | +To resolve this: |
| 56 | + |
| 57 | +- **Edit `%USERPROFILE%\.mcp.json`** |
| 58 | + |
| 59 | + Open the file in a text editor and remove the `"appModernization"` entry from the `"servers"` section. |
| 60 | + Save the file after removing this block. |
| 61 | +- **Or delete the file entirely** |
| 62 | + |
| 63 | + If `.mcp.json` contains no other important configuration, you may simply delete the file. |
| 64 | + |
| 65 | +Once cleaned up, the error in the `Tools → appModernization` group will no longer appear. |
| 66 | + |
| 67 | +## How can I monitor assessment progress? |
| 68 | + |
| 69 | +While the assessment is running, you can monitor its progress by viewing the command-line output: |
| 70 | + |
| 71 | +1. In Visual Studio, go to **View** > **Output** to open the Output window. |
| 72 | +2. In the Output window, find the **Show output from:** dropdown. |
| 73 | +3. Select **AppModernizationExtension** from the dropdown list. |
| 74 | +4. The command-line output from the assessment tool appears here, showing real-time progress. |
| 75 | + |
| 76 | +You can also access the Output window using the keyboard shortcut **Ctrl+Alt+O**. |
| 77 | + |
| 78 | +## What should I do if Visual Studio fails to install AppCAT? |
| 79 | + |
| 80 | +If you see an AppCAT installation failure in the command-line output when the extension tries to install it automatically, you can install AppCAT manually: |
| 81 | + |
| 82 | +1. Open a command prompt or PowerShell as Administrator. |
| 83 | +2. Run the appropriate command based on your shell: |
| 84 | + |
| 85 | + **For Command Prompt:** |
| 86 | + |
| 87 | + ```cmd |
| 88 | + dotnet tool install dotnet-appcat --tool-path "%LOCALAPPDATA%\Microsoft\VisualStudio\AppModernizationExtension\Tools" |
| 89 | + ``` |
| 90 | + |
| 91 | + **For PowerShell:** |
| 92 | + |
| 93 | + ```powershell |
| 94 | + dotnet tool install dotnet-appcat --tool-path "$env:LOCALAPPDATA\Microsoft\VisualStudio\AppModernizationExtension\Tools" |
| 95 | + ``` |
| 96 | + |
| 97 | +3. After successful installation, run the assessment again. |
| 98 | + |
| 99 | +> [!IMPORTANT] |
| 100 | +> Installing this tool may fail if you've configured additional NuGet feed sources. Use the `--ignore-failed-sources` parameter to treat those failures as warnings instead of errors. |
| 101 | +
|
| 102 | +### What should I do if Visual Studio fails to upgrade AppCAT? |
| 103 | + |
| 104 | +If Visual Studio fails to automatically upgrade AppCAT when a new version is available, you can upgrade it manually: |
| 105 | + |
| 106 | +1. Open a command prompt or PowerShell as Administrator. |
| 107 | +2. Run the appropriate command based on your shell: |
| 108 | + |
| 109 | + **For Command Prompt:** |
| 110 | + |
| 111 | + ```cmd |
| 112 | + dotnet tool update dotnet-appcat --tool-path "%LOCALAPPDATA%\Microsoft\VisualStudio\AppModernizationExtension\Tools" |
| 113 | + ``` |
| 114 | + |
| 115 | + **For PowerShell:** |
| 116 | + |
| 117 | + ```powershell |
| 118 | + dotnet tool update dotnet-appcat --tool-path "$env:LOCALAPPDATA\Microsoft\VisualStudio\AppModernizationExtension\Tools" |
| 119 | + ``` |
| 120 | + |
| 121 | +3. After successful upgrade, run the assessment again. |
| 122 | + |
| 123 | +## What should I do if I see "Command failed: No .NET SDKs were found" errors? |
| 124 | + |
| 125 | +This error occurs when AppCAT cannot find a compatible .NET SDK, even if you have other .NET SDKs installed. AppCAT requires the .NET 8.0 SDK to run properly. |
| 126 | + |
| 127 | +To fix this error: |
| 128 | + |
| 129 | +1. Download and install the .NET 8 SDK from <https://dotnet.microsoft.com/download/dotnet/8.0>. |
| 130 | +2. Restart Visual Studio. |
| 131 | +3. Run the assessment again. |
| 132 | + |
| 133 | +## Does the tool store my source code? |
| 134 | + |
| 135 | +No. The tool uses GitHub Copilot in the same way you use it to modify code, and doesn't retain code snippets beyond the immediate session. Telemetry metrics are collected and analyzed to track feature usage and effectiveness. |
| 136 | + |
| 137 | +For more information, see the [Microsoft Privacy Statement](https://go.microsoft.com/fwlink/?LinkId=521839). |
| 138 | + |
| 139 | +## What are the intended uses of GitHub Copilot app modernization for .NET (Preview)? |
| 140 | + |
| 141 | +GitHub Copilot app modernization for .NET (Preview) is designed to help enterprises migrate their .NET applications to Azure. It assesses application code issues that need to be addressed for migration and provides code remediation patterns that can be applied with AI. |
| 142 | + |
| 143 | +## How was GitHub Copilot app modernization for .NET (Preview) evaluated? What metrics are used to measure performance? |
| 144 | + |
| 145 | +GitHub Copilot app modernization for .NET (Preview) was evaluated through extensive manual and automated testing. Additional evaluation was performed using custom datasets for offensive and malicious prompts (user questions) and responses. The tool is also continuously evaluated with user feedback. |
| 146 | + |
| 147 | +## What are the limitations of GitHub Copilot app modernization for .NET (Preview)? |
| 148 | + |
| 149 | +GitHub Copilot app modernization for .NET (Preview) can be used on application source code written in .NET Framework or .NET Core. Applications in other languages are not supported. |
| 150 | + |
| 151 | +## What operational factors and settings allow for effective and responsible use of GitHub Copilot app modernization for .NET (Preview)? |
| 152 | + |
| 153 | +You can choose the model to make code changes at the bottom of the GitHub Copilot chat box. Different models may produce different results and have varying token consumption. For more information, see [Manage Copilot usage and models](/visualstudio/ide/copilot-usage-and-models). |
| 154 | + |
| 155 | +## How do I provide feedback on GitHub Copilot app modernization for .NET (Preview)? |
| 156 | + |
| 157 | +We value your feedback—share [your thoughts here](https://aka.ms/AM4DFeedback) to help us continue improving the product. |
0 commit comments