Skip to content

Add Order Management with Enhanced Task Completion sample#1

Merged
adilei merged 20 commits into
reorg/v1from
sample/chainlit-copilot-studio
Apr 21, 2026
Merged

Add Order Management with Enhanced Task Completion sample#1
adilei merged 20 commits into
reorg/v1from
sample/chainlit-copilot-studio

Conversation

@adilei
Copy link
Copy Markdown
Owner

@adilei adilei commented Apr 21, 2026

Summary

  • End-to-end sample demonstrating Copilot Studio agents with Enhanced Task Completion calling MCP servers
  • Two Node.js MCP servers (order management + warehouse) with 9 interdependent tools and mock e-commerce data
  • Two Copilot Studio agents (Orders Agent with ETC + Warehouse connected agent) as importable Power Platform solution
  • Gradio chat UI that renders reasoning, tool calls, intermediate messages, and file upload/download inline
  • Cross-platform setup/start scripts, custom connector definitions, and step-by-step documentation

Test plan

  • End-to-end deployment tested on clean environment (solution import, connector setup, agent publish, Gradio UI query)
  • README instructions verified step-by-step using Playwright
  • IMPORT.md connection creation instructions fixed based on clean-environment test
  • Jekyll site renders correctly (Mermaid diagrams, JTD callouts, child pages)
  • Verify on another machine with fresh node scripts/setup.mjs

🤖 Generated with Claude Code

adilei and others added 20 commits April 21, 2026 22:50
Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…oft#476)

SharePoint: Replace deprecated SharePointSSOComponent with modern
SharePointSSOAppCustomizer at root level (was nested as subfolder).

Contact center: Move Salesforce and skill-handoff samples out of
servicenow/ into their own top-level folders. Flatten double-nested
ServiceNow/ServiceNow/ structure.

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…apter. (microsoft#475)

* Upgrade .Net target and Remove Obsolete BotFramework Adapter.

* update newtonsoft version

* add missing tenant property in appsettings.json

* upgrade the program file with top level statements.

* update README.md for .net 10

* Update deprecated notice: clarify archived Bot Framework SDK, fix Copilot Studio naming

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Demonstrates a Power Platform connector that routes MCP Streamable HTTP
traffic to one of several MCP server instances selected via dropdown.

Includes:
- Multi-instance MCP server with path-based routing
- Catalog REST server for instance discovery
- Connector with x-ms-agentic-protocol and script.csx URL rewriter
- One-step deploy scripts for bash and PowerShell

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…paths (microsoft#482)

- Numbered steps with colored status indicators
- Server logs redirected to /tmp/ for clean output
- Auto-retry with random suffix on connector name conflict
- Fix paths for sample directory structure (connector/ not mcp-connector/)
- Use built JS instead of ts-node
- Require environment ID as argument (no hardcoded default)

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Just the Docs theme supports Mermaid natively via config.
This enables ```mermaid code blocks to render as diagrams.

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The @microsoft/ess-contributors team can now review and approve
PRs that only touch EmployeeSelfServiceAgent/ without requiring
repo maintainer review.

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copilot Studio Evaluation API as a CI/CD quality gate in Azure DevOps.
Pipeline automatically runs evals on PR push, blocks merge if pass rate
is below a configurable threshold, and publishes results to the ADO
Tests tab.

- eval-gate.mjs: standalone Node.js script (MSAL auth + PPAPI client)
- eval-gate.yml: ADO pipeline (self-hosted + hosted agent options)
- eval-config.json: environment config with pass threshold
- Screenshots: passing gate, failing gate, pipeline logs, tests tab

Co-authored-by: adilei <adileibowiz@microsoft.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
End-to-end sample demonstrating Copilot Studio agents with Enhanced Task
Completion calling MCP servers for e-commerce order management and warehouse
fulfillment, with a Gradio chat UI that renders tool calls and reasoning inline.

Includes:
- Two Node.js MCP servers (order-management: 5 tools, warehouse: 4 tools)
- Power Platform connector definitions for both MCP servers
- Exported solution with both agents (Orders Agent + Warehouse Agent)
- Unpacked solution source for git-friendly review
- Gradio chat frontend with inline tool rendering, file upload/download
- Cross-platform scripts for setup, deployment, and connector management
- Demo CSV for file upload scenario

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The microsoft-agents-copilotstudio-client package requires aiohttp
but doesn't declare it as a dependency.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- start.mjs now accepts --env flag to auto-deploy connectors after tunnels
  are ready (tries update first, falls back to create)
- Updated README quick start to reflect single-command workflow
- Added Gradio UI demo screenshot to assets

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Removed paconn dependency and auto-deploy logic from start.mjs
- Updated README step 4: users edit connector Host field in Power Apps UI
- Simplified start.mjs to just start servers + tunnels
- Tested end-to-end: solution import → connector update → Gradio UI → tool calls succeed

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Fix LocalTokenCache to use MSAL's serialize()/deserialize() API
  instead of directly accessing _cache dict (prevents token corruption)
- Remove leftover debug request/response interception from warehouse server
- Add .gitignore files for chat-ui (secrets, venv) and MCP servers (node_modules, dist)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Step-by-step guide for creating the Entra ID app registration
needed by the Gradio chat UI's MSAL authentication.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Links to official Microsoft docs, explains what ETC is and how it differs
from standard generative orchestration, adds JTD warning callout.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add Jekyll front matter so IMPORT.md renders as HTML (not raw markdown)
- Update import steps to match actual workflow (single solution zip)
- Fix README link to use stripped .md extension per Jekyll convention
- Add screenshot reference to README

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Redesign chat UI: dark header with teal ETC badge, Plus Jakarta Sans
  font, green-bordered tool accordions, refined message bubbles and
  markdown rendering
- Restructure README: rewrite What's Included as logical components
  (agents, MCP servers, chat UI, connectors), move architecture diagram
  to bottom, inline sample queries after Quick Start step 5
- Split IMPORT.md: move .env config and app registration to new
  SETUP.md, keep IMPORT.md focused on solution import + connections
- Fix IMPORT.md step numbering and add note about clean environment
  connection creation
- Update README step 2 to clarify connections must be created separately
- Update screenshot showing tool calls and reasoning in action

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@adilei adilei force-pushed the sample/chainlit-copilot-studio branch from fe866e4 to 11402cb Compare April 21, 2026 19:50
@adilei adilei merged commit fe735a3 into reorg/v1 Apr 21, 2026
@adilei adilei deleted the sample/chainlit-copilot-studio branch April 21, 2026 19:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants