Skip to content

Cannot use Microsoft Learn MCP anymore (reason: Eclipsed) #100

Open

Description

@fahadash

I cannot use the Microsoft Learn anymore in Github Copilot under Visual Studio 2022. It was working a few days ago. When I try to select it under MCP Resources I see the MCP missing, and the copilot output log shows the following error message:

[Conversations Information] [Conversations] MCP server 'Microsoft Learn' is marked as unavailable. Reason: Eclipsed

Full Log below:


[Conversations Error] Loading GitHub account information...
[Conversations Information] Need to get an auth token.
[HttpClientFactoryProvider Information] Environment variable COPILOT_USE_DEFAULTPROXY found: False
[Conversations Information] Status Code: 200, Reason Phrase: OK
[Conversations Information] Response Content: HasToken: True, ChatEnabled: True, ExpiresAt: 1767969187, RefreshIn: 1500, SKU: copilot_for_business_seat_quota, CopilotExclusion: False, ChatQuota: '', CompletionsQuota: '', LimitedUserResetDate: '', CanSignupForLimited: ''
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
Logging to: C:\Users\fahadash\AppData\Local\Temp\VSGitHubCopilotLogs\20260109_140308.194_VSGitHubCopilot.chat.log
[Conversations Information] Copilot chat version 17.14.1561-rc+adbfcc7e61.RR (17.14.1561.44479). VS: VisualStudio.17.Release/17.14.23+36811.4. Session: d095c728-f3cf-40dd-8ec2-9046662ed7e2. 
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] [Conversations] MCP sources changed
[Conversations Information] [Conversations] Active solution path changed to 
[Conversations Information] [Conversations] MCP sources changed
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Users\fahadash\.mcp.json": 
[Conversations Information] [Conversations] Found 1 MCP server(s) defined in "C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\2022\PROFESSIONAL\COMMON7\IDE\EXTENSIONS\MICROSOFT\COPILOT\Mcp\mcp.json": Microsoft Learn
[Conversations Information] [Conversations] Loaded cached state for MCP server 'Microsoft Learn' with 3 tools, 0 prompts, and 0 resources.
[Conversations Information] [Conversations] CopilotCustomInstructionsProvider ctor start.
[Conversations Information] [Conversations] Workspace path is null. Custom instructions will be loaded on the next query if exists.
[Conversations Information] [Conversations] Workspace path is null. Custom instructions will be loaded on the next query if exists.
[Conversations Information] [Conversations] Out-of-process service (PID: 57248) finished initializing.
[Conversations Information] [CopilotAgents] Environment variable COPILOT_USE_DEFAULTPROXY found: False
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] [GetQuota] Environment variable COPILOT_USE_DEFAULTPROXY found: False
[Conversations Information] [Conversations] MCP server availability policy changed.
[Conversations Information] [Conversations] MCP server availability policy changed.
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] [CopilotClient] Copilot Internal User response: Conversations.Abstractions.Auth.CopilotUserData
[Conversations Information] [CopilotModels] Environment variable COPILOT_USE_DEFAULTPROXY found: False
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[PersistedCopilotSessionRepository Information] Persisted sessions are stored under C:\Code\data-export\.vs\DataExportAzure\copilot-chat\7655ac02\sessions
[Conversations Information] [Conversations] Active solution path changed to C:\Code\data-export\DataExportAzure.sln
[Conversations Information] [Conversations] Active workspace path changed to C:\Code\data-export\
[Conversations Information] [Conversations] MCP sources changed
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Users\fahadash\.mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\data-export\.vs\mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\data-export\.mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\data-export\.vscode\mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\data-export\.cursor\mcp.json": 
[Conversations Information] [Conversations] Found 1 MCP server(s) defined in "C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\2022\PROFESSIONAL\COMMON7\IDE\EXTENSIONS\MICROSOFT\COPILOT\Mcp\mcp.json": Microsoft Learn
[Conversations Information] [Conversations] MCP server availability policy changed.
[Conversations Information] [Conversations] MCP server availability policy changed.
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[CopilotClientManager Information] LSP: Activated (49426807)
[CopilotClientManager Information] LSP: Debug Server: http://localhost:8180
[CopilotClientManager Information] LSP: Process 62616
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] [ChunkIndex] Index db path: C:\path\to\project\.vs\project\CopilotIndices\17.14.1561.44479\CodeChunks.db
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[Conversations Information] Copilot auth status: OK. Copilot badge status: Active
[CopilotClientManager Information] Initial auth status: OK
[CopilotClientManager Information] statusNotification: Error: You are not signed into GitHub.
[Conversations Information] [AzureDevOpsSemanticSearchAPI] Environment variable COPILOT_USE_DEFAULTPROXY found: False
[CopilotClientManager Information] CopilotClientManager: model list fetched as of 1/9/2026 9:03:36 AM.
[Conversations Information] [CopilotClient] Copilot Internal User response: Conversations.Abstractions.Auth.CopilotUserData
[Conversations Information] [Conversations] MCP sources changed
[Conversations Information] [Conversations] Found 1 MCP server(s) defined in "C:\Users\fahadash\.mcp.json": Microsoft Learn
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.vs\mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.cursor\mcp.json": 
[Conversations Information] [Conversations] Found 1 MCP server(s) defined in "C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\2022\PROFESSIONAL\COMMON7\IDE\EXTENSIONS\MICROSOFT\COPILOT\Mcp\mcp.json": Microsoft Learn
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.vscode\mcp.json": 
[Conversations Information] [Conversations] Loaded cached state for MCP server 'Microsoft Learn' with 3 tools, 0 prompts, and 0 resources.
[Conversations Information] [Conversations] Loaded cached state for MCP server 'Microsoft Learn' with 3 tools, 0 prompts, and 0 resources.
[Conversations Information] [Conversations] MCP sources changed
[Conversations Information] [Conversations] Found 1 MCP server(s) defined in "C:\Users\fahadash\.mcp.json": Microsoft Learn
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.vs\mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.vscode\mcp.json": 
[Conversations Information] [Conversations] Found 0 MCP server(s) defined in "C:\Code\project\.cursor\mcp.json": 
[Conversations Information] [Conversations] Found 1 MCP server(s) defined in "C:\PROGRAM FILES\MICROSOFT VISUAL STUDIO\2022\PROFESSIONAL\COMMON7\IDE\EXTENSIONS\MICROSOFT\COPILOT\Mcp\mcp.json": Microsoft Learn
[Conversations Information] [Conversations] MCP server availability policy changed.
[Conversations Information] [Conversations] MCP server 'Microsoft Learn' is marked as unavailable. Reason: Eclipsed
[Conversations Information] [Conversations] MCP server availability policy changed.
[Conversations Information] [Conversations] MCP server 'Microsoft Learn' is marked as unavailable. Reason: Eclipsed

Activity

  1. partychen commented on Jan 12, 2026

    @partychen
    Contributor

    Hi,

    I checked the logs and this issue is not related to our MCP server.

    It looks like there might have been some changes on the Visual Studio side recently. Even though our MCP server is public, Visual Studio / Copilot still checks whether you are signed into a GitHub account.

    From the log, Copilot license and token are OK, but VS reports: “You are not signed into GitHub.”

    Could you try to sign in to your GitHub account in Visual Studio, then restart VS and try again?

  2. AArnott commented on Jan 12, 2026

    @AArnott

    "eclipsed" means that the MCP configuration is ignored because another mcp.json file with higher precedence also defines an MCP configuration with the same server name.
    From your log it looks like you have the MS Learn MCP configuration defined in your own user-level mcp.json file, and it appears in the shipping in-box mcp.json file.

    This should break the MCP server. The log is just telling you that one file's config is ignored (while the other file is being honored).

    At least, barring a bug in the client, that's what should be going on here.

  3. fahadash commented on Jan 14, 2026

    @fahadash
    Author

    I removed my account (sign-out) and added back after restarting visual studio but I continue to see the same error. Here is one more exception that gives more visibility into the problem

    [Conversations Information] [Conversations] Operation ced73999-8bd3-48e2-b406-b388036d3cd2 Start; Starting MCP client for server 'Azure MCP Server'
    [Conversations Information] [Conversations] Operation ced73999-8bd3-48e2-b406-b388036d3cd2 End; Result: Failure; Failed to start MCP client for server 'Azure MCP Server': MCP server process exited unexpectedly (exit code: 1)
    Server's stderr tail:
    Unhandled exception: Response status code does not indicate success: 401 (Unauthorized).
    [Conversations Error] [Conversations] Transition effects failed during (Failed) for server 'Azure MCP Server': System.IO.IOException: MCP server process exited unexpectedly (exit code: 1)
    Server's stderr tail:
    Unhandled exception: Response status code does not indicate success: 401 (Unauthorized).
    at System.Threading.Channels.AsyncOperation1.GetResult(Int16 token) at System.Threading.Channels.ChannelReader1.ReadAllAsync(CancellationToken cancellationToken)+MoveNext()
    at ModelContextProtocol.McpSession.ProcessMessagesAsync(CancellationToken cancellationToken)
    at ModelContextProtocol.McpSession.ProcessMessagesAsync(CancellationToken cancellationToken)
    at ModelContextProtocol.McpEndpoint.DisposeUnsynchronizedAsync()
    at ModelContextProtocol.Client.McpClient.DisposeUnsynchronizedAsync()
    at ModelContextProtocol.Client.McpClient.DisposeUnsynchronizedAsync()
    at ModelContextProtocol.McpEndpoint.DisposeAsync()
    at ModelContextProtocol.Client.McpClient.ConnectAsync(CancellationToken cancellationToken)
    at ModelContextProtocol.Client.McpClientFactory.CreateAsync(IClientTransport clientTransport, McpClientOptions clientOptions, ILoggerFactory loggerFactory, CancellationToken cancellationToken)
    at ModelContextProtocol.Client.McpClientFactory.CreateAsync(IClientTransport clientTransport, McpClientOptions clientOptions, ILoggerFactory loggerFactory, CancellationToken cancellationToken)
    at Microsoft.VisualStudio.Conversations.Service.Mcp.Lifecycle.StartClientEffect.ExecuteAsync(LifecycleDependencies ctx, TransitionState state, CancellationToken ct)
    at Microsoft.VisualStudio.Conversations.Service.Mcp.Lifecycle.InitializeAssetsEffect.ExecuteAsync(LifecycleDependencies ctx, TransitionState state, CancellationToken ct)
    at Microsoft.VisualStudio.Conversations.Service.Mcp.Lifecycle.LifecycleExecutor.ExecuteAsync(TransitionResult transition, ServerContext serverContext, IMcpClient currentClient, LifecycleDependencies deps, CancellationToken ct)
    [Conversations Information] [Conversations] Loaded cached state for MCP server 'Microsoft Learn' with 3 tools, 0 prompts, and 0 resources.
    [CopilotClientManager Information] Initial auth status: OK
    [CopilotClientManager Information] VsHttpClientFactoryWithErrorHandling.IsFeatureEnabledAsync Starting
    [CopilotClientManager Information] VsHttpClientFactory.IsFeatureEnabledAsync Starting
    [CopilotClientManager Information] CopilotClientManager: model list fetched as of 1/14/2026 12:10:57 PM.
    [CopilotClientManager Information] statusNotification: Error: You are not signed into GitHub.
    [UI.SessionViewModel Warning] DualResponseViewModel or control request is null.
    [Conversations Information] Copilot auth status: OK. Copilot badge status: Active

  4. TianqiZhang commented on Jan 15, 2026

    @TianqiZhang
    Contributor

    fahadash (@fahadash) it seems that your Azure MCP Server failed to start due to a 401 error, could you try removing all mcp servers except Learn MCP? If that could work, then we need Andrew Arnott (@AArnott) 's help to figure out why Azure MCP failing to start will impact others.

  5. fahadash commented on Jan 15, 2026

    @fahadash
    Author

    Tianqi Zhang (@TianqiZhang) Microsoft Learn is the only MCP I have installed in the VS2026 Registries (I updated to VS2026 after my first post to see if it would fix the issue).

  6. pdebruin commented on Mar 13, 2026

    @pdebruin
    Collaborator

    fahadash (@fahadash) is this still open?

  7. pdebruin commented on Sep 2, 2026

    @pdebruin
    Collaborator

    Reopening. #144 merged a troubleshooting entry explaining what Reason: Eclipsed means and how to clear a duplicate server entry, and the squash commit inherited the PR's original Fix #100 title, which auto-closed this issue.

    That documentation does not cover the rest of what fahadash (@fahadash) reported here: the server still missing on VS 2026 with Microsoft Learn as the only configured MCP server. Per Andrew Arnott (@AArnott) above, eclipsing only means one config file is ignored while the other is honored, so it should not by itself break the server.

    fahadash (@fahadash) if you are still seeing this, it would help to know whether it persists on your current Visual Studio version.

  8. added a commit that references this issue on Sep 2, 2026
    f1fbeb3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions