Skip to content

Misleading "Server failed to connect" error and policy denial for active Copilot Pro Trial accounts #2686

@kyleluc

Description

@kyleluc

Describe the bug

I am currently on an active Copilot Pro Trial. On the GitHub billing page, my status is shown as: "You currently have an active Copilot Pro subscription."
However, when I try to use the Copilot CLI, it fails to load models and connect to the MCP server. The main UI shows a misleading network-like error (Tools: Server failed to connect). After inspecting the MCP logs, I discovered my request was actually being blocked at the API level with the message: "Copilot Pro trials have been temporarily paused. Please upgrade your account or revert to Copilot Free."
Furthermore, when I actually try to follow the instruction to upgrade, I am completely stuck in a dead-end due to a broken upgrade flow.
There are three major UX/logic bugs here:
Broken Upgrade Flow (Dead End): The API error prompts me to upgrade to a paid account. But when I click "Get started" under the Pro plan to pay/subscribe, there are no subscription or payment buttons. Instead, I am redirected to a page that simply says: "Access denied. You do not have permission to view this."
Inconsistent State: The Web UI says my subscription is "Active", but the API blocks me saying trials are paused.
Poor Error Surfacing: The CLI abstracts a clear 403 Forbidden API message into a generic "Server failed to connect" error, causing users to waste time troubleshooting network/proxy settings.

Affected version

1.0.25

Steps to reproduce the behavior

1.Log into Copilot CLI with an account currently on a Copilot Pro Trial.
2.Run a standard copilot cli command or /models.
3.Observe the error: ✗ Failed to load models: access denied by Copilot policy.
4.The CLI shows: Tools: Server failed to connect.
5.Run /mcp show github-mcp-server to inspect logs.

Expected behavior
Upgrading: Clicking "Get started" to upgrade should redirect to a functional billing/payment page, allowing the user to seamlessly transition from Trial to Paid, rather than throwing an "Access denied" error.
Error Handling: If Trial accounts are restricted from using the CLI/MCP server, the CLI should surface the actual API message directly in the terminal, rather than saying "Server failed to connect".
State Consistency: The GitHub Billing/Settings page should reflect these feature limitations for Trial accounts to prevent confusion.

Actual behavior / Logs
When executing /models:
✗ Failed to load models: access denied by Copilot policy. (Request ID: 07B1:A0B8A:65A6F3:765F5E:69DDA592)

Main UI prompt:
! Failed to connect to MCP server 'github-mcp-server'. Execute '/mcp show github-mcp-server' to inspect or check the logs. Tools: Server failed to connect

Log from /mcp show github-mcp-server:

MCP Server: github-mcp-server
Type:     http
URL:      https://api.individual.githubcopilot.com/mcp/readonly
Status:   ✗ Failed
Error:   Streamable HTTP error: Error POSTing to endpoint: Copilot Pro trials have been temporarily paused. Please upgrade your account or revert to Copilot Free.

Additional context

Environment
OS:Windows 10
Copilot CLI version:1.0.25
Account Tier: Copilot Pro (Trial)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No fields configured for Bug.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions