Dev & Engineering ✓ Microsoft · Official mcp-servercopilot-chatopenai-apps-sdkmcp-appsreactfluent-uidevtunnelsstructured-content

Copilot MCP Widget Builder

Build interactive React widgets and MCP servers for Microsoft 365 Copilot Chat.

FollowSkills review · FSRS-2.0
Use with care
49/ 100 5-point scale 2.5 / 5
1 2 3 4 5 6
1Trust13 / 25 · 2.6/5

The documentation promotes caller-supplied data, origin allowlisting, path-traversal guards, React escaping, and non-destructive tool annotations, and it discloses DevTunnel and CSP data flows. However, its RemoteMCPServer example uses auth None, the DevTunnel guidance includes anonymous access, and the automation guidance does not sufficiently define authentication, sensitive-data handling, user confirmation, isolation, or rollback. Points are deducted for those gaps.

2Reliability7 / 20 · 1.8/5

The skill covers MCP sessions, resource registration, structured output, partial-data normalization, and unknown-tool handling, making the happy path plausible. However, the main server example does not include the asset route until a later add-on snippet, while JSON parsing, dependency failures, authentication failures, network errors, and process cleanup have limited diagnostic handling. Static-review limits also require a conservative score.

3Adaptability9 / 15 · 3.0/5

Triggers, audience, scenarios, OAI Apps versus MCP Apps routing, and the boundary against general agent development are reasonably clear. Evidence is limited for language variations, client differences, offline use, and mainland-China network reachability; the core workflow depends on external DevTunnel, npm, and Copilot services. Points are deducted for those environment uncertainties.

4Convention10 / 15 · 3.3/5

The material has strong layered documentation with path selection, architecture, protocol guidance, examples, troubleshooting, dependencies, version bumping, license metadata, and official repository provenance. Maintenance ownership, changelog practice, compatibility matrices, dependency version policy, and security-update paths remain incomplete, and requirements are distributed across several references. Points are deducted accordingly.

5Effectiveness6 / 15 · 2.0/5

The skill supplies reusable patterns for MCP servers, React/Fluent UI widgets, resource-tool binding, and local tunneling, so the core task value is clear. However, there are no committed executed outputs or execution results for this skill, and the TypeScript examples still require integration and environment-specific correction. The static calibration therefore limits the score.

6Verifiability4 / 10 · 2.0/5

The files contain concrete protocol shapes, commands, checklists, reference implementations, and auditable repository CI/test signals. They do not contain executed results, committed key-path tests, or independent reproduction records for this skill, and the CI evidence does not establish coverage of the selected path. The score is therefore kept within the static-review ceiling.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • Do not use auth None or anonymous DevTunnels by default in production; define authentication, least privilege, sensitive-data boundaries, user confirmation, and revocation or rollback.
  • The primary server example and the later asset-serving snippet must be integrated and validated; no executed evidence is provided for the skill's key paths.
  • The OAI Apps description claims ChatGPT support, while the protocol examples primarily allowlist m365.cloud.microsoft origins; client-specific origins should be added and verified.
  • The workflow depends on npm, DevTunnels, remote Copilot services, and external plugin installation; mainland-China network, proxy, and offline compatibility is unverified.
Review evidence [1][2][3][4][5][6][7][8][9]
See the full review method →

What does this skill do, and when should you use it?

This skill guides development of MCP servers and rendered widgets for Microsoft 365 Copilot Chat using the OpenAI Apps SDK or MCP Apps Extension. It covers Streamable HTTP, structured content, MCP resources, CSP metadata, Fluent UI widgets, devtunnels, and mcpPlugin.json configuration. Widgets are required to use React and Fluent UI, with MCP resources connecting tool output to rendered UI. The skill does not cover general agent development, agent scaffolding, manifest lifecycle, or deployment design.

It guides creation or adaptation of MCP servers in TypeScript, Python, C#, or other MCP-capable languages; implementation of /mcp, /health, /widgets, and /assets routes; responses containing content, structuredContent, and widget metadata; registration of ui://widget/<name>.html resources; React and Fluent UI widget development using FluentProvider and window.openai.toolOutput; RemoteMCPServer configuration; MCP Inspector-based tool-definition extraction and end-to-end verification; and devtunnel setup for exposing a local server.

  1. A developer adding an MCP server and interactive widgets to an existing Microsoft 365 Copilot declarative agent.
  2. A team adapting an existing MCP server for Copilot Chat widget rendering.
  3. A frontend engineer building structured-data views with React and Fluent UI inside Copilot Chat.
  4. A developer exposing a localhost MCP server through a devtunnel for Copilot testing.
  5. A team keeping mcpPlugin.json tool definitions synchronized with a running MCP server through MCP Inspector.

What are this skill's strengths and limitations?

Pros
  • Covers the full integration path from MCP server and resources to tool metadata, React widgets, and Copilot testing.
  • Provides explicit requirements for Fluent UI, structuredContent, MCP Inspector, and end-to-end verification.
  • Supports TypeScript, Python, C#, and other languages that implement MCP.
  • Documents local devtunnel testing and the conditions for reprovisioning an agent.
Limitations
  • Scoped to MCP server and Copilot widget development rather than general agent scaffolding or deployment.
  • Requires React, React DOM, and Fluent UI by default, so it is not aimed at raw HTML widgets.
  • Requires shell access, the Node.js ecosystem, devtunnel, MCP Inspector, and network connectivity.
  • The README identifies the repository as under active development; the supplied material does not provide test coverage for this individual skill.

How do you install this skill?

In Copilot CLI, run:

  1. npx skills add microsoft/skills
  2. Select ui-widget-developer in the installation wizard.

The repository also supports installing the broader collection through the plugin marketplace with /plugin marketplace add microsoft/skills and the relevant plugin command. The source does not provide a dedicated installation command for this individual skill.

How do you use this skill?

Use a trigger such as Build an MCP server for Copilot with a React widget, Add a Copilot widget to my MCP server, or Configure structuredContent for widget rendering. Before implementation, choose between OAI Apps and the MCP Apps Extension: OAI Apps are described as battle-tested for ChatGPT and Microsoft 365 Copilot, while MCP Apps is the newer official MCP standard targeting Microsoft 365 Copilot, ChatGPT, VS Code, and more. For MCP Apps, the source gives these commands: /plugin marketplace add modelcontextprotocol/ext-apps and /plugin install mcp-apps@mcp-apps.

How does this skill compare with similar options?

The skill explicitly compares OAI Apps with the MCP Apps Extension. OAI Apps are OpenAI-specific, described as production-ready, and work in ChatGPT and Microsoft 365 Copilot. MCP Apps is described as a newer official MCP standard intended to work across Microsoft 365 Copilot, ChatGPT, VS Code, and more.

FAQ

Does this skill create a complete declarative agent?
No. It focuses on MCP servers, widgets, mcpPlugin.json, and devtunnels. Agent scaffolding, manifests, and lifecycle work should be handled by declarative-agent-developer.
Is React required?
Yes. The source requires React, react-dom, and @fluentui/react-components for widgets. A self-contained HTML-only widget is allowed only when the user explicitly requests a non-React prototype.
Does local testing require an externally reachable endpoint?
Yes. The source uses devtunnels to expose a localhost MCP server to Microsoft 365 Copilot during local testing and describes DevTunnels as intended for development and testing.
When must the agent be reprovisioned?
Only when the agent manifest changes, such as mcpPlugin.json, the MCP server URL, or declarativeAgent.json. MCP server and React widget code changes alone generally do not require reprovisioning.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Realtime Podcast Studio

Turn text into playable podcast-style audio with Azure OpenAI Realtime API.

Design & Frontend ✓ Microsoft · Official

Dark Theme React UI System

A reusable foundation for dark React interfaces with Tailwind styling, glassmorphism, and restrained motion.

Dev & Engineering ✓ Microsoft · Official

React Flow Node Builder

Create typed React Flow nodes with handles, resizing behavior, and Zustand-backed state integration.

Automation & Ops ✓ Microsoft · Official

Azure AI Gateway Governance

Use Azure API Management to govern traffic across AI models, MCP tools, and agents.

Dev & Engineering ✓ Microsoft · Official

Azure Upgrade

Assess and automate Azure plan, SKU, service, and legacy Java SDK upgrades.

Dev & Engineering ✓ Microsoft · Official

Azure AI Foundry Agent Framework

Helps Python developers build persistent Azure AI Foundry agents with hosted tools, MCP integrations, threads, and streaming.

Dev & Engineering ✓ Microsoft · Official

Microsoft 365 Agents SDK for Python

Build async, multichannel agents for Teams, Microsoft 365, and Copilot Studio.

Dev & Engineering ✓ Microsoft · Official

Azure AI Projects for TypeScript

Practical TypeScript guidance for building Azure AI Foundry applications with project clients, agents, tools, and evaluations.

Dev & Engineering ✓ Microsoft · Official

GitHub Copilot SDK Builder

Build programmable GitHub Copilot applications and agent workflows through one multi-language SDK.

Dev & Engineering ✓ Microsoft · Official

Microsoft Agent Skills

Reusable Azure SDK and Microsoft Foundry guidance for AI coding agents.

Automation & Ops ✓ Microsoft · Official

Azure Cloud Migration Assistant

Assess cross-cloud workloads and convert them for Azure services.

Dev & Engineering ✓ Microsoft · Official

Microsoft 365 Agent Evaluator

Design and run evaluation suites for Microsoft 365 Copilot declarative agents

Dev & Engineering ✓ Microsoft · Official

Azure AI Content Safety for Python

Guides Python applications in detecting harmful text and images and enforcing custom blocklists.

Dev & Engineering ✓ Microsoft · Official

Azure OpenAI Deployment Assistant

Discover capacity and deploy Azure OpenAI models through intent-based routing.

Dev & Engineering ✓ Microsoft · Official

Azure AI Content Safety for TypeScript

Add text and image harm detection with customizable blocklists to TypeScript applications.

Dev & Engineering ✓ Microsoft · Official

Azure AI Services Skill

Guides coding agents through Azure AI Search, Speech, OpenAI, and OCR workflows.

Dev & Engineering ✓ Microsoft · Official

Azure OpenAI Custom Deployment Guide

A guided Azure OpenAI deployment flow for precise version, capacity, policy, and SKU control.

Dev & Engineering ✓ Microsoft · Official

MCP Server Development Guide

A practical guide to building clear, testable MCP servers that let LLMs work with external APIs.

Dev & Engineering ✓ Microsoft · Official

Microsoft 365 Agents SDK for TypeScript

Build TypeScript enterprise agents with routing, Express hosting, streaming responses, and Copilot Studio integration.

Dev & Engineering ✓ Microsoft · Official

Azure Skill Creator

A disciplined guide for building concise, verifiable Azure SDK skills for coding agents.

Related skills