Skip to content

Latest commit

 

History

History
41 lines (28 loc) · 1.6 KB

File metadata and controls

41 lines (28 loc) · 1.6 KB

Weather App Server

An MCP server that demonstrates the MCP Apps extension by serving an interactive weather forecast UI alongside weather tools.

What it shows

  • [McpAppUi] attribute — declaratively associates a UI resource with a tool
  • WithMcpApps() — builder extension that processes [McpAppUi] attributes
  • UI resource — an HTML page served via McpServerResource with MIME type text/html;profile=mcp-app
  • Structured content — tool results include StructuredContent for the UI to render

Running

dotnet run

The server starts on http://localhost:5000 by default. Connect any MCP Apps-capable client to the /mcp endpoint.

Then prompt that will cause the LLM to request the use of the "weather_ui" tool. A general prompt like "What's the weather?" will probably work, but if not you could try explicitly requesting the tool with something like "@weather_ui". This should load the Weather App UI in an iFrame that you can then interact with to get the weather forecast for a number of US cities.

UI of the Weather Forecast MCP App in VS Code

Tools

Tool Description
weather_ui Opens the weather forecast UI
weather_forecast Gets a multi-period forecast from the National Weather Service for a US city

Both tools are linked to the ui://weather-app/forecast resource via the [McpAppUi] attribute.

Resources

URI Description
ui://weather-app/forecast Interactive weather forecast HTML UI
data://weather-app/us-cities JSON list of supported US cities