add-data-source
Guide the user to add a data source, connection, or API connector to a Canvas App via Power Apps Studio, then verify and…
Adds SharePoint Online connector to a Power Apps code app. Use when reading lists, managing documents, or integrating with SharePoint sites. Can also create new SharePoint lists.
Claude Code
$ npx -y skills add microsoft/power-platform-skills --skill add-sharepoint --agent claude-code
Codex
$ npx skills add microsoft/power-platform-skills --skill add-sharepoint -a codex -y
Cursor
$ npx skills add microsoft/power-platform-skills --skill add-sharepoint -a cursor -y
Gemini CLI
$ npx skills add microsoft/power-platform-skills --skill add-sharepoint -a gemini-cli -y
GitHub Copilot
$ npx skills add microsoft/power-platform-skills --skill add-sharepoint -a github-copilot -y
OpenCode
$ npx skills add microsoft/power-platform-skills --skill add-sharepoint -a opencode -y
Windsurf
$ npx skills add microsoft/power-platform-skills --skill add-sharepoint -a windsurf -y
name: add-sharepoint description: Adds SharePoint Online connector to a Power Apps code app. Use when reading lists, managing documents, or integrating with SharePoint sites. Can also create new SharePoint lists. user-invocable: true allowed-tools: Read, Edit, Write, Grep, Glob, Bash, LSP, TaskCreate, TaskUpdate, TaskList, TaskGet, AskUserQuestion, Skill, EnterPlanMode, ExitPlanMode model: opus
**📋 Shared Instructions: [shared-instructions.md](../../shared/shared-instructions.md)** - Cross-cutting concerns.
**References:**
Two paths: **existing lists** (skip to Step 6) or **new lists** (full workflow).
1. Check Memory Bank → 2. Plan → 3. Setup Graph API Auth → 4. Review Existing Lists → 5. Create Lists → 6. Get Connection ID → 7. Discover Sites → 8. Discover Tables → 9. Add Connector (tables and/or actions) → 10. Configure → 11. Build → 12. Update Memory Bank
---
Check for `memory-bank.md` per [shared-instructions.md](../../shared/shared-instructions.md).
Ask the user:
1. Which SharePoint list(s) do they need? 2. Do the lists **already exist** on their site, or do they need to **create new** ones?
**If lists already exist:** Skip to Step 6.
**If creating new lists:**
See [api-authentication-reference.md](./references/api-authentication-reference.md) for full details.
az account show # Verify Azure CLI logged in $api = Initialize-SharePointGraphApi -SiteUrl "https://<tenant>.sharepoint.com/sites/<site-name>" $headers = $api.Headers $siteId = $api.SiteId
Requires **Sites.Manage.All** permission.
**Always query existing lists first before creating:**
$existingLists = Invoke-RestMethod -Uri "https://graph.microsoft.com/v1.0/sites/$siteId/lists?`$select=id,displayName,description,list&`$filter=list/hidden eq false" -Headers $headers
See [list-management-reference.md](./references/list-management-reference.md) for `Find-SimilarLists`, `Compare-ListSchemas`, and `Get-ListSchema` functions.
Present findings to user with `AskUserQuestion`:
Get explicit confirmation before creating. Use safe functions from [list-management-reference.md](./references/list-management-reference.md):
Discovering sites and lists (Steps 7–8) needs a SharePoint connection ID on every CLI version: `pa connection list-datasets` and `list-tables` don't find or create connections the way `pa app add data-source` does on CLI 1.3.0+ (see [connector-reference.md](../../shared/connector-reference.md#connections)).
1. Run the `/list-connections` skill, filtered with `--search sharepointonline`. 2. Exactly one SharePoint connection: use its connection ID. Several: ask the user which one to use. 3. None: create one after asking the user.
pa connection create --connector shared_sharepointonline --use-sso
It creates the connection silently with the user's account and prints `Connection ID: <id>`.
List available SharePoint sites the user has access to:
pa connection list-datasets --connector sharepointonline -c <connection-id>
Present the sites to the user and ask which one(s) they want to connect to. If the user already specified a site URL, confirm it appears in the list.
**If `pa connection list-datasets` fails or returns no results:**
For each selected site, list the available lists and document libraries:
pa connection list-tables --connector sharepointonline -c <connection-id> -d '<site-url>'
**If `pa connection list-tables` fails or returns no results:**
Present the tables to the user and ask which ones they want to add. Suggest tables that look relevant to their use case (based on memory bank context or the user's stated requirements). If lists were created in Step 5, they should appear here.
SharePoint supports both tables and actions, so say which one you're adding. Pass the connec
Plugins from Microsoft that teach AI assistants, such as GitHub Copilot and Claude Code, to build on Power Platform.
Guide the user to add a data source, connection, or API connector to a Canvas App via Power Apps Studio, then verify and…
Creates or edits a Power Apps Canvas App through the Canvas Authoring MCP coauthoring session. Handles staged experience design,…
Configure the Canvas Authoring MCP server for the current coauthoring session. Use before starting to edit a canvas app with the…
Use this skill when the user wants to "report a bug", "file an issue", "report an issue", "submit a bug report", or report any…
Adds Azure DevOps connector to a Power Apps code app. Use when querying work items, creating bugs, managing pipelines, or making…
Adds any Power Platform connector to a Power Apps code app. Generic fallback for connectors not covered by a specific skill.
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.