# Connect Xero to Copilot in SharePoint with Plugins and MCP

> Use a plugin and MCP to bring Xero data into Copilot in SharePoint, build a Microsoft List and HTML dashboard from it, and save the process as a site skill.

- URL: https://www.danielanderson.io/articles/copilot-sharepoint-plugins-mcp-xero/
- Author: Daniel Anderson, Microsoft MVP (https://www.danielanderson.io/)
- Published: 2026-09-23
- Updated: 2026-10-17
- Video: https://www.youtube.com/watch?v=o3pFuVDufII

## Key takeaways

- Copilot in SharePoint can use plugins from your organisation's store, and a plugin can bundle MCP servers that give Copilot tools in an external system.
- In my demo, the Xero plugin offered 20 read-only tools. Copilot used one to pull aged receivables, created a Microsoft List with suggested column types and filled it after I confirmed.
- The plugin supplies access to the external system. A site skill holds the instructions for what to retrieve, where it goes and what to build from it.
- After clearing the list and deleting the dashboard, one run of the saved skill retrieved the records again and rebuilt both.
- The dashboard is a self-contained HTML snapshot. Keeping a populated list in step with Xero is a separate design job I haven't tested.

Copilot in SharePoint can now use plugins, and a plugin backed by an MCP server lets Copilot call tools in another business system like Xero. Connect the plugin, ask Copilot to pull the records into a Microsoft List and build a report from them, then save those steps as a site skill so anyone on the site can run the process again with one prompt.

Plugins come from your organisation's enterprise store, installed tenant-wide by an admin or added by a user, and the same plugin works across Microsoft's agentic experiences, including Copilot Cowork and Copilot in SharePoint. The Microsoft 365 roadmap lists the SharePoint support in preview from August 2026, with general availability planned for December 2026. Xero is one of the partner plugins in the Cowork catalogue, alongside services like Apify.

## What does a plugin add to Copilot in SharePoint?

On its own, a skill in Copilot in SharePoint can't connect to external systems. It works with what Copilot can already reach in SharePoint. A plugin changes that by bringing connectors with it. MCP, the Model Context Protocol, is the standard many of those connectors use to expose tools Copilot can call: list invoices, get a contact, read a report.

So the first thing to check on any plugin is what its tools let Copilot retrieve or do, within what your own sign-in allows. In Copilot in SharePoint you'll find the plugins under the **...** menu, in **Manage plugins**. My Xero connection was already set up before I recorded: I'd added and authenticated it through Cowork's customise settings, and it then showed up in Copilot in SharePoint too. My demo uses Xero sample data.

## How I built an aged receivables list and dashboard from Xero

Asked what the Xero MCP server provides, Copilot listed 20 tools, all read-only. I had it describe what the aged receivables tool returns before designing anything, then used those fields and Copilot's suggested column types for a Microsoft List called Aged Receivables. When it pulled the outstanding invoices from Xero, it showed me what it was about to create and didn't add anything until I confirmed.

My dashboard prompt was deliberately vague: a fully self-contained HTML dashboard over the list. The first version landed in my OneDrive. The second, asked for in the site's default document library with more charts, had charts, KPIs and a customer search. You'd normally be far more specific about the cards and measures you want.

## Saving the whole process as a site skill

Next I asked Copilot to create a skill that calls the Xero plugin, gets the aged receivables, adds them to the Aged Receivables list, then builds the same dashboard and saves it in the site's default library. Copilot's built-in skill for creating skills did the writing, and I saved it as a site skill. [Skills in Copilot in SharePoint and OneDrive](https://www.danielanderson.io/articles/copilot-personal-skills-sharepoint-onedrive/) covers how site and personal skills differ.

Before testing it I deleted the dashboard and every item in the list. I hadn't run the skill before recording, so this was its first run. It called the plugin, asked for confirmation before creating the list items, filled the list and rebuilt the dashboard in the site library, with the OneDrive correction now part of the instructions.

## Four decisions to make before you save a skill like this

1. **What comes from the source, and what your team adds.** Xero holds the accounting record. Following up an overdue invoice involves an owner, a next action, notes and a customer conversation. Those columns belong in the SharePoint list, and Xero should stay the owner of the amounts and dates.
2. **Where the output lives.** Name the list, the library and the file in the skill. My first dashboard went to OneDrive because I hadn't said otherwise.
3. **What happens on the next run.** My test rebuilt from an empty list. Once people start adding owners and notes, a rerun has to recognise existing records, update what changed in Xero and leave your team's work alone. That needs its own design and testing, and I haven't tested it here. The skill also only runs when someone invokes it. There's no scheduled sync.
4. **Who can run it, and with what access.** The plugin acts with each user's own sign-in, and the Xero tools I used were read-only. Site skills follow the site's permissions, so anyone with View access can run one. For finance data I'd keep the site tight and keep the confirmation step before anything gets written.

If you're starting from scratch, pick one task where you currently gather information from another system and write down what you need from the source, what your team adds and what the finished result should look like. Check that brief against the plugin's tools before you build the list.

## What else can a plugin bring into SharePoint?

Xero is one example. In a follow-up video I recorded a different pattern using the Apify plugin, which scrapes websites, based on a business development problem from my AI Concierge work: keeping track of which companies are listed as attendees for a conference.

Video: Copilot in SharePoint Finally Talks to the Outside World https://www.youtube.com/watch?v=go53YdaQKig

One prompt told Copilot to use Apify on the conference page, extract only the company names under the 2026 attendees heading and stop before the next section. It wrote the results to Markdown files in a business intelligence folder: a current attendees file recording when each company was first seen, last seen and last checked, plus a run history file for every pass. The same prompt handles both the first baseline and later checks, so the second run logged that nothing had changed.

On top of that folder sits a simple Copilot agent grounded only in those files, so people can ask about the companies without opening Markdown. A site skill, created from a skill file I'd written outside SharePoint, runs the Apify refresh first and finishes with a self-contained HTML report. Running it now takes one prompt: refresh current attendees.

If you want the list and dashboard side in more depth, [building a live dashboard on a Microsoft List with Copilot](https://www.danielanderson.io/articles/copilot-sharepoint-live-dashboard-microsoft-list/) goes further, and [document generation with a site skill](https://www.danielanderson.io/articles/copilot-sharepoint-document-generation/) shows another skill that asks for the details it needs.

## Frequently asked questions

**Who can install plugins for Copilot in SharePoint?**
Plugins come from your organisation's enterprise store and are governed by your Microsoft 365 admin. Admins can install them tenant-wide, and users can add plugins available to them. Admins can also block plugins.

**Do I have to set up the plugin in Copilot Cowork first?**
In my setup, I authenticated Xero through Cowork's customise settings and it then appeared under Manage plugins in Copilot in SharePoint. Each person still completes their own one-time sign-in to the connector, and an admin can't sign in on their behalf.

**Does the HTML dashboard update when Xero changes?**
No. It's a self-contained snapshot built from the list at the time the skill runs. Run the skill again to rebuild it, or design a list-based report if you want something that reflects list changes as they happen.

**Why use a Microsoft List instead of going straight from Xero to a report?**
The list gives your team somewhere to add the context Xero doesn't hold, like an owner, notes and a next action. Copilot can also answer questions and build further reports from the list without calling Xero every time.
