add-excel
The add-excel Claude Code skill integrates the Excel Online (Business) connector into Power Apps, enabling read and write operations on workbook data stored in OneDrive or SharePoint. Use this skill when building Power Apps that need to access, retrieve, or update information in Excel tables through the Power Platform connector ecosystem.
git clone --depth 1 https://github.com/microsoft/power-platform-skills /tmp/add-excel && cp -r /tmp/add-excel/plugins/code-apps/skills/add-excel ~/.claude/skills/add-excelSKILL.md
**📋 Shared Instructions: [shared-instructions.md](${CLAUDE_PLUGIN_ROOT}/shared/shared-instructions.md)** - Cross-cutting concerns.
# Add Excel Online
## Workflow
1. Check Memory Bank → 2. Gather → 3. Add Connector → 4. Configure → 5. Build → 6. Update Memory Bank
---
### Step 1: Check Memory Bank
Check for `memory-bank.md` per [shared-instructions.md](${CLAUDE_PLUGIN_ROOT}/shared/shared-instructions.md).
### Step 2: Gather
Ask the user:
1. Where is the workbook? (OneDrive or SharePoint)
2. Workbook file name
3. Which table(s) in the workbook to access
### Step 3: Add Connector
**First, find the connection ID** (see [connector-reference.md](${CLAUDE_PLUGIN_ROOT}/shared/connector-reference.md)):
Run the `/list-connections` skill. Find the Excel Online (Business) connection in the output. If none exists, direct the user to create one using the environment-specific Connections URL — construct it from the active environment ID in context (from `power.config.json` or a prior step): `https://make.powerapps.com/environments/<environment-id>/connections` → **+ New connection** → search for the connector → Create.
Excel Online is a tabular datasource -- requires `-c` (connection ID), `-d` (drive), and `-t` (table name in workbook):
```bash
# OneDrive workbook
npx power-apps add-data-source -a excelonlinebusiness -c <connection-id> -d 'me' -t 'Table1'
# SharePoint workbook -- dataset is the document library path
npx power-apps add-data-source -a excelonlinebusiness -c <connection-id> -d 'sites/your-site' -t 'Table1'
```
Run for each table the user needs.
### Step 4: Configure
**AddRowIntoTable** -- adds a row to an Excel table:
```typescript
// OneDrive workbook
await ExcelOnlineBusinessService.AddRowIntoTable({
source: "me",
drive: "me",
file: "MyWorkbook.xlsx",
table: "Table1",
body: { column1: "value1", column2: "value2" } // Flat object, NO "items" wrapper
});
// SharePoint workbook
await ExcelOnlineBusinessService.AddRowIntoTable({
source: "sites/your-site",
drive: "drive-id",
file: "SharedWorkbook.xlsx",
table: "Table1",
body: { column1: "value1", column2: "value2" }
});
```
**Key points:**
- `source: "me"` and `drive: "me"` for OneDrive personal files
- For SharePoint, use the site path and drive ID
- The `body` is a flat key-value object matching column headers -- do NOT wrap in `{ items: ... }`
Use `Grep` to find specific methods in `src/generated/services/ExcelOnlineBusinessService.ts` (generated files can be very large -- see [connector-reference.md](${CLAUDE_PLUGIN_ROOT}/shared/connector-reference.md#inspecting-large-generated-files)).
### Step 5: Build
```bash
npm run build
```
Fix TypeScript errors before proceeding. Do NOT deploy yet.
### Step 6: Update Memory Bank
Update `memory-bank.md` with: connector added, workbook/table configured, build status.Guide the user to add a data source, connection, or API connector to a Canvas App via Power Apps Studio, then verify and continue. USE WHEN the user asks to add a data source, add a connection, add an API, add a connector, connect to SharePoint / Dataverse / SQL / Excel / OneDrive / Teams / Office 365, or any similar request to make new data available to the app. DO NOT USE WHEN the user is asking to list or describe existing data sources — call list_data_sources or list_apis directly instead.
Creates or edits a Power Apps Canvas App through the Canvas Authoring MCP coauthoring session. Handles new app generation from requirements, simple inline edits, and complex multi-screen changes with parallel screen builders. Triggers on requests to create, build, generate, modify, update, change, or edit a Canvas App or .pa.yaml files.
Configure the Canvas Authoring MCP server for the current coauthoring session. USE WHEN "configure MCP", "set up MCP server", "MCP not working", "connect Canvas Apps MCP", "canvas-authoring not available", "MCP not configured", "set up canvas apps". DO NOT USE WHEN prerequisites are missing — direct the user to install .NET 10 SDK first.
[DEPRECATED — use canvas-app instead] Generate a complete Power Apps canvas app.
>
Adds Azure DevOps connector to a Power Apps code app. Use when querying work items, creating bugs, managing pipelines, or making ADO API calls.
Adds any Power Platform connector to a Power Apps code app. Generic fallback for connectors not covered by a specific skill.
Adds a data source or connector to a Power Apps code app. Asks what the user wants to accomplish and routes to the appropriate specialized skill.