Conversation
- Restore DashboardMcpConnectionInfo class in BackchannelDataTypes.cs - Restore GetDashboardMcpConnectionInfoAsync in AuxiliaryBackchannelRpcTarget.cs (returns null) - Update V1 capabilities comment to include GetDashboardMcpConnectionInfoAsync - Restore method in cli-backchannel.md V1 capabilities table
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.sh | bash -s -- 15528Or
iex "& { $(irm https://raw.githubusercontent.com/microsoft/aspire/main/eng/scripts/get-aspire-cli-pr.ps1) } 15528" |
There was a problem hiding this comment.
Pull request overview
This PR removes the Aspire Dashboard-hosted MCP (Model Context Protocol) server and its UI/config plumbing, shifting MCP responsibilities to the CLI MCP server and cleaning up related options, environment variables, templates, and tests.
Changes:
- Removes MCP endpoint/auth/UI integration from the Dashboard and associated telemetry keys/resources.
- Removes MCP-related configuration names and
ASPIRE_DASHBOARD_MCP_ENDPOINT_URLfrom templates/playgrounds and CLI templating. - Updates tests and backchannel/CLI plumbing to no longer expect or log MCP connection info.
Reviewed changes
Copilot reviewed 257 out of 259 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/Aspire.Dashboard.Tests/Integration/Playwright/Infrastructure/DashboardServerFixture.cs | Removes MCP auth-mode config from dashboard test fixture defaults. |
| tests/Aspire.Dashboard.Tests/Integration/IntegrationTestHelpers.cs | Removes MCP URL config from integration test configuration setup. |
| tests/Aspire.Dashboard.Tests/Integration/FrontendBrowserTokenAuthTests.cs | Removes MCP-specific startup log assertions from tests. |
| tests/Aspire.Dashboard.Tests/BrowserSecurityHeadersMiddlewareTests.cs | Drops MCP connection type coverage from security headers middleware tests. |
| tests/Aspire.Cli.Tests/TestServices/TestAppHostAuxiliaryBackchannel.cs | Removes MCP connection info property from test backchannel implementation. |
| tests/Aspire.Cli.Tests/Mcp/ListAppHostsToolTests.cs | Updates construction of backchannel objects after MCP info removal. |
| tests/Aspire.Cli.Tests/Mcp/AppHostConnectionSelectionLogicTests.cs | Updates helper construction after MCP info removal. |
| src/Shared/KnownConfigNames.cs | Removes the ASPIRE_DASHBOARD_MCP_ENDPOINT_URL known config name constant. |
| src/Shared/DashboardConfigNames.cs | Removes MCP-related config names and narrows API-auth comments to non-MCP usage. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/Aspire-StarterApplication.1.AppHost/Properties/launchSettings.json | Removes ASPIRE_DASHBOARD_MCP_ENDPOINT_URL from template launch settings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/template.json | Removes MCP port parameters/generators from template configuration. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/localize/templatestrings.pt-BR.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/localize/templatestrings.fr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/localize/templatestrings.en.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-ts-cs-starter/.template.config/dotnetcli.host.json | Removes MCP port symbols from dotnetcli host metadata. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/Aspire-StarterApplication.1.AppHost/Properties/launchSettings.json | Removes ASPIRE_DASHBOARD_MCP_ENDPOINT_URL from template launch settings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/template.json | Removes MCP port parameters/generators from template configuration. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.zh-Hant.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.tr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.ru.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.pt-BR.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.pl.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.ja.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.fr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.es.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.en.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/localize/templatestrings.de.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-starter/.template.config/dotnetcli.host.json | Removes MCP port symbols from dotnetcli host metadata. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/apphost.run.json | Removes ASPIRE_DASHBOARD_MCP_ENDPOINT_URL from template run settings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/template.json | Removes MCP port parameters/generators from template configuration. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.zh-Hant.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.tr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.ru.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.pt-BR.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.fr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.es.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.en.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-py-starter/.template.config/localize/templatestrings.de.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-js-frontend-starter/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-js-frontend-starter/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-js-frontend-starter/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/AspireApplication.1.AppHost/Properties/launchSettings.json | Removes ASPIRE_DASHBOARD_MCP_ENDPOINT_URL from template launch settings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/template.json | Removes MCP port parameters/generators from template configuration. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.zh-Hant.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.tr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.ru.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.pt-BR.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.pl.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.ja.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.fr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.es.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.en.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.de.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/localize/templatestrings.cs.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-empty/.template.config/dotnetcli.host.json | Removes MCP port symbols from dotnetcli host metadata. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/Properties/launchSettings.json | Removes ASPIRE_DASHBOARD_MCP_ENDPOINT_URL from template launch settings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/template.json | Removes MCP port parameters/generators from template configuration. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.zh-Hant.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.tr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.ru.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.pt-BR.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.pl.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.ja.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.fr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.es.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.en.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.de.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/localize/templatestrings.cs.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost/.template.config/dotnetcli.host.json | Removes MCP port symbols from dotnetcli host metadata. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/apphost.run.json | Removes ASPIRE_DASHBOARD_MCP_ENDPOINT_URL from template run settings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/template.json | Removes MCP port parameters/generators from template configuration. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.zh-Hant.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.zh-Hans.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.tr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.ru.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.pt-BR.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.pl.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.ko.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.ja.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.it.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.fr.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.es.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.en.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.de.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/localize/templatestrings.cs.json | Removes MCP port symbol descriptions from localized template strings. |
| src/Aspire.ProjectTemplates/templates/aspire-apphost-singlefile/.template.config/dotnetcli.host.json | Removes MCP port symbols from dotnetcli host metadata. |
| src/Aspire.Hosting/DistributedApplicationBuilder.cs | Removes MCP API key secret generation and related comments from hosting. |
| src/Aspire.Hosting/Dashboard/TransportOptionsValidator.cs | Removes validation of the MCP endpoint environment variable. |
| src/Aspire.Hosting/Dashboard/DashboardOptions.cs | Removes MCP endpoint/API key propagation from hosting dashboard options. |
| src/Aspire.Dashboard/Telemetry/TelemetryPropertyKeys.cs | Removes MCP tool-call telemetry property keys. |
| src/Aspire.Dashboard/Telemetry/TelemetryEventKeys.cs | Removes MCP tool-call telemetry event keys. |
| src/Aspire.Dashboard/Resources/xlf/Layout.zh-Hant.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.zh-Hans.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.tr.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.ru.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.pt-BR.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.pl.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.ko.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.ja.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.it.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.fr.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.es.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.de.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/xlf/Layout.cs.xlf | Removes MCP-related localized strings from XLF resources. |
| src/Aspire.Dashboard/Resources/Layout.resx | Removes MCP-related resource strings. |
| src/Aspire.Dashboard/Resources/Layout.Designer.cs | Removes MCP-related generated resource accessors. |
| src/Aspire.Dashboard/Mcp/McpConfigPropertyViewModel.cs | Deletes MCP UI/config view model file. |
| src/Aspire.Dashboard/Mcp/McpCompositeAuthenticationHandler.cs | Deletes MCP composite authentication handler and related types. |
| src/Aspire.Dashboard/DashboardEndpointsBuilder.cs | Removes MCP endpoint mapping from dashboard endpoint builder. |
| src/Aspire.Dashboard/Configuration/ValidateDashboardOptions.cs | Removes MCP options parsing and MCP-to-API backward-compat validation logic. |
| src/Aspire.Dashboard/Configuration/McpAuthMode.cs | Deletes MCP auth mode enum. |
| src/Aspire.Dashboard/Configuration/ApiAuthMode.cs | Updates API auth mode documentation to remove MCP mention. |
| src/Aspire.Dashboard/Components/Layout/MainLayout.razor | Removes MCP button/icon from the dashboard header UI. |
| src/Aspire.Dashboard/Components/Dialogs/McpServerDialog.razor.css | Deletes MCP server dialog styling (UI removal). |
| src/Aspire.Dashboard/Authentication/Connection/ConnectionTypeMiddleware.cs | Updates documentation to remove MCP references. |
| src/Aspire.Dashboard/Authentication/Connection/ConnectionTypeAuthenticationHandler.cs | Removes MCP connection auth scheme constant. |
| src/Aspire.Dashboard/Authentication/Connection/ConnectionType.cs | Removes MCP connection type enum value. |
| src/Aspire.Dashboard/Aspire.Dashboard.csproj | Removes MCP package references and shared MCP icon/resource inclusions. |
| src/Aspire.Cli/Templating/Templates/empty-apphost/aspire.config.json | Removes MCP endpoint env var from CLI template config. |
| src/Aspire.Cli/Templating/CliTemplateFactory.cs | Removes MCP token replacement and random MCP port generation. |
| src/Aspire.Cli/Projects/DotNetAppHostProject.cs | Removes MCP endpoint env var from single-file AppHost environment setup. |
| src/Aspire.Cli/Backchannel/IAppHostAuxiliaryBackchannel.cs | Removes MCP info property from auxiliary backchannel interface. |
| src/Aspire.Cli/Backchannel/BackchannelJsonSerializerContext.cs | Removes MCP connection info type from JSON source generation context. |
| src/Aspire.Cli/Backchannel/AuxiliaryBackchannelMonitor.cs | Removes MCP-related logging fields from auxiliary backchannel monitor output. |
| playground/yarp/Yarp.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/withdockerfile/WithDockerfile.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/webpubsub/WebPubSub.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/waitfor/WaitForSandbox.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/signalr/SignalR.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/seq/Seq.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/python/Python.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/publishers/Publishers.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/pipelines/Pipelines.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/orleans/Orleans.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/nats/Nats.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/mysql/MySqlDb.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/mongo/Mongo.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/milvus/MilvusPlayground.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/keycloak/Keycloak.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/kafka/KafkaBasic.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/deployers/Deployers.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/cdk/CdkSample.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/bicep/BicepSample.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/TestShop/TestShop.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/Stress/Stress.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/SqlServerScript/AppHost1/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/SqlServerEndToEnd/SqlServerEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/Redis/Redis.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/Qdrant/Qdrant.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/ProxylessEndToEnd/ProxylessEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/PostgresEndToEnd/PostgresEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/OracleEndToEnd/OracleEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/OpenAIEndToEnd/OpenAIEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/HealthChecks/HealthChecksSandbox.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/GitHubModelsEndToEnd/GitHubModelsEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/FoundryEndToEnd/FoundryEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/FoundryAgentEnterprise/FoundryAgentEnterprise.AppHost/appsettings.json | Removes MCP endpoint env var from playground app settings. |
| playground/FoundryAgentBasic/FoundryAgentBasic.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/ExternalServices/ExternalServices.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/DotnetTool/DotnetTool.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/DevTunnels/DevTunnels.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/DatabaseMigration/DatabaseMigration.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/CustomResources/CustomResources.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/CosmosEndToEnd/CosmosEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/BrowserTelemetry/BrowserTelemetry.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureVirtualNetworkEndToEnd/AzureVirtualNetworkEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureStorageEndToEnd/AzureStorageEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureServiceBus/ServiceBus.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureSearchEndToEnd/AzureSearch.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureOpenAIEndToEnd/AzureOpenAIEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureKusto/AzureKusto.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureFunctionsEndToEnd/AzureFunctionsEndToEnd.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureContainerApps/AzureContainerApps.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureAppService/AzureAppService.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AzureAppConfiguration/AzureAppConfiguration.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AspireWithNode/AspireWithNode.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AspireWithMaui/AspireWithMaui.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AspireWithJavaScript/AspireJavaScript.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
| playground/AspireEventHub/EventHubs.AppHost/Properties/launchSettings.json | Removes MCP endpoint env var from playground launch settings. |
Files not reviewed (2)
- src/Aspire.Dashboard/Resources/Dialogs.Designer.cs: Language not supported
- src/Aspire.Dashboard/Resources/Layout.Designer.cs: Language not supported
| // Validate API auth configuration | ||
| var effectiveApiAuthMode = options.Api.AuthMode; | ||
| // Also check MCP-specific AuthMode for backward compatibility | ||
| if (effectiveApiAuthMode is null && options.Mcp.AuthMode is not null) | ||
| { | ||
| effectiveApiAuthMode = options.Mcp.AuthMode switch | ||
| { | ||
| McpAuthMode.ApiKey => ApiAuthMode.ApiKey, | ||
| McpAuthMode.Unsecured => ApiAuthMode.Unsecured, | ||
| _ => null | ||
| }; | ||
| } | ||
|
|
||
| if (effectiveApiAuthMode is ApiAuthMode.ApiKey) | ||
| { | ||
| // Check if any API key is configured (either in Api or Mcp section) | ||
| var hasApiKey = !string.IsNullOrEmpty(options.Api.PrimaryApiKey) || !string.IsNullOrEmpty(options.Mcp.PrimaryApiKey); | ||
| // Check if any API key is configured | ||
| var hasApiKey = !string.IsNullOrEmpty(options.Api.PrimaryApiKey); | ||
| if (!hasApiKey) | ||
| { | ||
| errorMessages.Add($"PrimaryApiKey is required when API authentication mode is ApiKey. Specify Dashboard:Api:PrimaryApiKey or Dashboard:Mcp:PrimaryApiKey."); | ||
| errorMessages.Add($"PrimaryApiKey is required when API authentication mode is ApiKey. Specify Dashboard:Api:PrimaryApiKey."); | ||
| } |
There was a problem hiding this comment.
Removing the fallback from legacy Dashboard:Mcp:* auth settings means existing configurations that previously relied on Dashboard:Mcp:AuthMode / Dashboard:Mcp:PrimaryApiKey to secure the dashboard API will now be ignored, and Api.AuthMode will default based only on Dashboard:Api:* (potentially becoming Unsecured). To avoid an accidental security regression during upgrades, consider preserving backward compatibility by reading the legacy Dashboard:Mcp:* keys (if present) and mapping them onto options.Api.*, or at least emitting a clear startup warning/error when legacy keys are detected.
|
This PR completely removes the MCP UI from the dashboard. I don't know whether we still want something that mentions |
|
rip |
That would be nice |
|
🎬 CLI E2E Test Recordings — 49 recordings uploaded (commit View recordings
📹 Recordings uploaded automatically from CI run #23493731547 |
Description
Remove the MCP (Model Context Protocol) server and UI from the Aspire Dashboard. The dashboard MCP server is being replaced by the CLI MCP server, so the dashboard-hosted MCP endpoint, its configuration, authentication, UI dialog, and all related infrastructure are no longer needed.
What's removed
Dashboard MCP server & UI:
AspireResourceMcpTools,AspireTelemetryMcpTools), and extensions (McpExtensions)McpApiKeyAuthenticationHandler,McpCompositeAuthenticationHandler)McpServerDialog.razor/.cs/.css)McpAuthMode, MCP options inDashboardOptions,PostConfigureDashboardOptions,ValidateDashboardOptions)ConnectionTypeenumDashboardEndpointsBuilderandDashboardWebApplicationMainLayoutModelContextProtocolandModelContextProtocol.AspNetCoreNuGet package referencesDialogs.resx,Layout.resx, and their xlf translationsHosting MCP propagation:
DashboardUrlsHelper,DashboardEventHandlers,DashboardOptions)DistributedApplicationBuilderTransportOptionsValidatorCLI backchannel:
IAppHostAuxiliaryBackchannelandAppHostAuxiliaryBackchannelEnvironment variable & templates:
ASPIRE_DASHBOARD_MCP_ENDPOINT_URLremoved from all playgroundlaunchSettings.json(56 files), project templates, CLI templates,KnownConfigNames, andDashboardConfigNamesTests:
McpConfigurationTests,McpServiceTests,AspireResourceMcpToolsTests,AspireTelemetryMcpToolsTests,McpConfigModelTests,McpIconHelperTestsDashboardResourceTests,StartupTests,TelemetryApiTests,AuxiliaryBackchannelTests,FrontendBrowserTokenAuthTestsWhat's preserved for backwards compatibility
DashboardMcpConnectionInfoclass inBackchannelDataTypes.cs(kept for older CLI versions)GetDashboardMcpConnectionInfoAsyncRPC method inAuxiliaryBackchannelRpcTarget.cs(returns null)cli-backchannel.mdChecklist
aspire.devissue: