Solution entry · Developer labs

Copilot Studio + MCP Lab

A hands-on public lab for deploying a small Model Context Protocol tool server and adding it as a tool in Microsoft Copilot Studio.

Published 2026-09-14 Updated 2026-09-14 Repository created 2025-07-21 Last public push 2025-07-21 Public hands-on lab
Original state to outcome

What changed in the design.

Customer-neutral framing keeps the pattern reusable without claiming private results.

01 / Original state

Before the solution

MCP concepts can be difficult to connect to practice when the protocol, server deployment, tool definition, client configuration, and invocation path are learned separately.

02 / Delivered

What was built

The public lab uses a deliberately small TypeScript joke server to walk through MCP tools, Azure Container Apps deployment, a custom connector, and connection from Microsoft Copilot Studio.

03 / Outcome

Value enabled

The lab is designed to give builders a bounded end-to-end reference they can inspect before adapting the pattern to a real tool.

Architecture

How the public pattern fits together.

A Copilot client sends an MCP request to a bounded tool server and presents the result back to the user.

Copilot Studio + MCP Lab architecture A Copilot client sends an MCP request to a bounded tool server and presents the result back to the user. 01 Copilot Studio 02 MCP request 03 Tool server 04 User response
01 / Copilot client

A user invokes the configured tool from Microsoft Copilot Studio.

02 / MCP request

The client sends a protocol request using the published tool contract.

03 / Tool server

The deployed sample server executes the bounded joke operation.

04 / User response

The client presents the tool result for the user to accept, ignore, or continue from.

Capabilities

What the project demonstrates.

  • Implements a small public MCP server and callable tool.
  • Documents deployment and connection steps for the lab.
  • Exposes four bounded tools backed by two public joke APIs.
  • Includes Azure Container Apps deployment infrastructure and Copilot Studio setup guidance.
Human control and guardrails
  • The sample tool is deliberately non-consequential and does not perform business writes.
  • The user chooses whether to invoke the tool and how to use its response.
  • The deployment guide warns that the lab creates a public MCP endpoint and recommends removing it after use.
  • Real tools require authentication, authorization, input validation, logging, and least-privilege design beyond the sample.
Limitations
  • The lab demonstrates a narrow sample tool rather than a production MCP operating model, and no automated tests are configured.
  • Repository license metadata is inconsistent: GitHub detects MIT while the package manifest declares ISC.
  • The support file remains an unedited template, and the example does not establish security, reliability, or support guarantees.
Public provenance

Follow the evidence.

These public sources support the entry. No private customer material or internal evidence was used.